D最后一组数据是啥,该代码本地测试错误为什么能过

#include <bits/stdc++.h>

const int N = 2e3 + 10;
long long a[N],dp[N];

int main()
{
    long long n,m;
    std::cin >> n >> m;

    memset(dp,0x3f,sizeof dp);
    
    for(int i = 1; i <= n; i++)    
    {
        std::cin >> a[i],dp[a[i]%m] = 1;
    }
    
    for(int i = 1; i <= n; i++)
    {
        for(int mod = m - 1; mod >= 0; mod--)
        {
            dp[mod] = std::min(dp[mod],dp[(mod - (a[i]%m) + m)%m] + 1);
        }
        
    }

    std::cout << dp[0] << std::endl;
    return 0;
}
4 2000
1 3 5 2

全部评论

相关推荐

不愿透露姓名的神秘牛友
12-16 15:57
小鹏汽车 java后端 22*15(固定13,2个月年终) 硕士211
点赞 评论 收藏
分享
11-11 16:40
已编辑
门头沟学院 人工智能
不知道怎么取名字_:这个有点不合理了,相当于已经毕业了,但还是没转正,这不就是白嫖
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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