func_code_string: #include <bits/stdc++.h>   using namespace std;   long long n, m, a[1000500];   map<pair<int, long long>, bool> dp;   bool found = false;   void solve(int idx, long long sum, bool take) {     if (found) return;     if (take && sum % m == 0) {       found = true;       return;     }     if (idx >= n) return;     bool &ret = dp[{idx, sum}];     if (ret) return;     ret = true;     solve(idx + 1, sum + a[idx], take + 1);     if (found) return;     solve(idx + 1, sum, take);     if (found) return;   }   int main() {     scanf( %lld%lld , &n, &m);     bool z = false;     for (int i = 0; i < n; ++i) scanf( %lld , &a[i]), z |= (a[i] == 0);     solve(0, 0, 0);     if (z || found) return puts( YES );     puts( NO );     return 0;   }   