【HDU 5832】A water problem(大数取模)

1千万长度的数对73和137取模。(两个数有点像,不要写错了)

效率要高的话,每15位取一次模,因为取模后可能有3位,因此用ll就最多15位取一次。

一位一位取模也可以,但是比较慢,取模运算是个耗时的运算。

#include <cstdio>
#define ll long long
ll n,m;
int p,cas;
char s[10000005];
int main() {
    while(gets(s)){
        n=m=p=0;
        while(s[p]){
            for(int i=0;i<15&&s[p];i++,p++){
                n=n*10+s[p]-'0';
                m=m*10+s[p]-'0';
            }
            n%=73;
            m%=137;
        }
        printf("Case #%d: ",++cas);
        if(n||m)puts("NO");
        else puts("YES");
    }
}
原文地址:https://www.cnblogs.com/flipped/p/5773603.html