func_code_string: #include <bits/stdc++.h>   using namespace std;   long long n, m;   long long ar[1000001], dp[1001][1001];   long long calc(long long idx, long long rem) {     if (rem == 0 && idx != 0) return 1;     if (idx >= n) return 0;     long long &b = dp[idx][rem];     if (b != -1)       return b;     else       b = 0;     b |= calc(idx + 1, (rem + ar[idx]) % m);     b |= calc(idx + 1, rem);     return b;   }   void solve() {     cin >> n >> m;     for (long long i = 0; i < (n); ++i) {       cin >> ar[i];       ar[i] %= m;       if (ar[i] == 0) {         cout <<  YES n ;         return;       }     }     if (n >= m) {       cout <<  YES n ;       return;     } else {       for (long long i = 0; i < (1001); ++i)         for (long long j = 0; j < (1001); ++j) dp[i][j] = -1;       if (calc(0, m)) {         cout <<  YES n ;       } else         cout <<  NO n ;     }   }   int32_t main() {     ios::sync_with_stdio(0), cin.tie(NULL), cout.tie(NULL);     long long t = 1;     while (t--) {       solve();     }     return 0;   }   