A water problem
Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 342 Accepted Submission(s):
187
Problem Description
Two planets named Haha and Xixi in the universe and
they were created with the universe beginning.
they were created with the universe beginning.
There is 73
days in Xixi a year and 137
days in Haha a year.
Now you know the days N
after Big Bang, you need to answer whether it is the first day in a year about
the two planets.
Input
There are several test cases(about 5
huge test cases).
For each test, we have a line with an only integer
N(0≤N)
, the length of N
is up to 10000000
.
Output
For the i-th test case, output Case #i: , then output
"YES" or "NO" for the answer.
"YES" or "NO" for the answer.
Sample Input
10001
0
333
0
333
Sample Output
Case #1: YES
Case #2: YES
Case #3: NO
Case #2: YES
Case #3: NO
Author
UESTC
Source
Recommend
解题思路:判断输入的数能否被10001整除,因为10001是73和137的最小公倍数。
只要模拟除法,看最后的余数就可以。
因为判断位数太多,所以也不能用java大数做,不然会内存超限。
感觉之前做题给做傻了,一见到大数就想用java,一看别人说的题意就理解了,但自己看就是看不懂题意。
代码:
#include <iostream>
#include <cstdio>
#include <cstring> using namespace std; char s[]; int main()
{
int z=;
int ans=;
int d=;
int len;
while(scanf("%s",s)!=EOF){
ans=;
len=strlen(s);
for(int i=;i<len;i++){
ans=((ans*+(s[i]-''))%d)%d;
}
if(ans==){
printf("Case #%d: YES\n",z++);
}else{
printf("Case #%d: NO\n",z++);
}
}
return ;
}