HDOJ 5832 A water problem(高精度 大数取模)
发布时间:2021-01-27 04:29:45 所属栏目:大数据 来源:网络整理
导读:A water problem Time Limit: 5000/2500 MS (Java/Others)????Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 826????Accepted Submission(s): 428 Problem Description Two planets named Haha and Xixi in the universe and they were c
A water problemTime Limit: 5000/2500 MS (Java/Others)????Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 826????Accepted Submission(s): 428 Problem Description Two planets named Haha and Xixi in the universe and they were created with the universe beginning. There is Now you know the days Input There are several test cases(about For each test,we have a line with an only integer Output For the i-th test case,output Case #i:,then output "YES" or "NO" for the answer. ? Sample Input 10001 0 333? Sample Output Case #1: YES Case #2: YES Case #3: NO? Author UESTC ? Source 2016中国大学生程序设计竞赛 - 网络选拔赛? 思路: 这道题的题意很清楚,就是让你求73和137的的公倍数。因为73和137的最小公倍数是10001,所以其实也就是求这个数能不能模10001余0。但是由于输入的数是10000000位的数,用long long来装是肯定不行的,所以考虑用高精度。套用一个大数取余的模板 就可以。这里选择手动大数取模。 代码: #include<iostream> #include<string> #include<cstdio> int const maxn=10000000+5; char str[maxn]; using namespace std; int main(){ //freopen("in.txt","r",stdin); int t=0; while(scanf("%s",str)!=EOF) { t++; int i; int rem=0; for(i=0;str[i];i++){ rem=rem*10+str[i]-'0'; rem=rem%10001; } printf("Case #%d: ",t); if(rem==0) printf("YESn"); else printf("NOn"); } } (编辑:威海站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |