标签:
http://lightoj.com/volume_showproblem.php?problem=1214
这就是一道简单的大数取余。
还想还用到了同余定理:
所谓的同余,顾名思义,就是许多的数被一个数d去除,有相同的余数。d数学上的称谓为模。如a=6,b=1,d=5,则我们说a和b是模d同余的。因为他们都有相同的余数1。
////
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<algorithm> #include<stdio.h> #include<string.h> #include<stdlib.h> #include<math.h> #include<algorithm> #include<iostream> #include<vector> #include<queue> using namespace std; typedef long long LL; #define N 100000 #define ESP 1e-8 #define INF 0x3f3f3f3f #define memset(a,b) memset(a,b,sizeof(a)) int main() { int T, t=1; scanf("%d", &T); while(T --) { char s[300]; LL b; scanf("%s %lld", s, &b); if(b < 0) b = -b; printf("Case %d: ", t++); int len = strlen(s); if(len == 1 && s[0] == ‘0‘) { printf("divisible\n"); continue; } LL sum = 0; for(int i=0; i<len; i++) { if(s[i] == ‘-‘) continue; sum = sum*10 + s[i]-‘0‘; sum = sum%b; } if(sum == 0) printf("divisible\n"); else printf("not divisible\n"); } return 0; }
1214 - Large Division -- LightOj(大数取余)
标签:
原文地址:http://www.cnblogs.com/linliu/p/5550130.html