2013年北京师范大学新生程序设计竞赛网络赛--D. Number theory

D. Number theory

Time Limit: 1000ms
Case Time Limit: 1000ms
Memory Limit: 65536KB
64-bit integer IO format:  %lld      Java class name:  Main
Submit  Status  PID: 34055
Font Size:  +   -

数学不仅是简单而且是美的。数学很有趣,但是数学中也有很多难题,比如哥德巴赫猜想、各种欧拉定理、拉格朗日中值定理、费马定理等。今天小若遇到了一道题目:给一个9进制数,求出这个数模8的余数。小若苦思冥想很久也没有想出结果,聪明的你快来帮助小若若吧!

Input

输入每行有一串数字(保证数字长度不超过107),有多组测试数据。以0结束输入。

Output

对应于每组输入,首先输出数据编号(如样例所示),输出答案即可。

Sample Input

188
3687
0

Sample Output

Case 1: 1
Case 2: 0
因为数字长度不超过10^7  所以说最大会有10^7 位  应该用static定义,模拟除法  最后得出结果 
#include<stdio.h>
#include<string.h>
int main()
{
    static char str[10000010] ;
    long long int a , i , count = 0 ;
    while(scanf("%s", str)!=EOF)
    {
        count++;
        if(str[0]=='0') break;
        a = (str[0]-'0') % 8 ;
        for(i = 1 ; str[i] != '\0' ; i++)
        {
            a  =( a + (str[i]-'0') ) % 8 ;
        }
        printf("Case %lld: %lld\n", count, a);
    }
    return 0;
}

你可能感兴趣的:(2013年北京师范大学新生程序设计竞赛网络赛--D. Number theory)