📄 1486.cpp
字号:
/* This Code is Submitted by wywcgs for Problem 1486 on 2005-10-01 at 11:49:39 */
#include <stdio.h>
#include <memory.h>
int main()
{
long mod[10000];
long sum, M, N, e, max, t;
long i;
while(scanf("%ld %ld", &N, &M) == 2) {
sum = 0;
memset(mod, -1, sizeof(mod));
max = -1;
for(i = 0; i < N; i++) {
scanf("%ld", &e);
sum = (sum + e) % M;
while(1) {
if(sum >= 0) {
break;
} else {
sum += M;
}
}
if(mod[sum] == -1) {
mod[sum] = i;
}
if(sum == 0) {
t = i + 1;
} else {
t = i - mod[sum];
}
if(t > max) {
max = t;
}
}
printf("%ld\n", max);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -