加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

HDOJ 5832 A water problem(高精度 大数取模)

发布时间:2021-01-25 19:54:32 所属栏目:大数据 来源:网络整理
导读: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 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 created with the universe beginning.

There is 73

HDOJ 5832 A water problem(高精度 大数取模)

days in Xixi a year and 137

HDOJ 5832 A water problem(高精度 大数取模)

days in Haha a year.

Now you know the days N

HDOJ 5832 A water problem(高精度 大数取模)

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

HDOJ 5832 A water problem(高精度 大数取模)

huge test cases).

For each test,we have a line with an only integer N(0≤N)

HDOJ 5832 A water problem(高精度 大数取模)

,the length of N

HDOJ 5832 A water problem(高精度 大数取模)

is up to 10000000

HDOJ 5832 A water problem(高精度 大数取模)

. ?
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");  
    }  
}  

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读