为什么我D题只通过了90.91%,求解

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

int main()

{

ll n, p;

cin >> n >> p;

vector<ll> a(n + 1);

vector<ll> dp(p, 1e18);

for (ll i = 1; i <= n; i++)

{

cin >> a[i];

a[i] %= p;

dp[a[i]] = 1;

for (ll j = 0; j < p; j++)

{

ll la = (j - a[i] + p) % p;

dp[j] = min(dp[j], dp[la] + 1);

}

}

cout << dp[0] << endl;

return 0;

}

全部评论

相关推荐

强大的马里奥:不太可能,我校计算机硕士就业率99%
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务