nyoj105 九的余数
九的余数
时间限制:3000 ms | 内存限制:65535 KB
难度:3
- 描述
-
现在给你一个自然数n,它的位数小于等于一百万,现在你要做的就是求出这个数整除九之后的余数。
- 输入
- 第一行有一个整数m(1<=m<=8),表示有m组测试数据;
随后m行每行有一个自然数n。 - 输出
- 输出n整除九之后的余数,每次输出占一行。
- 样例输入
-
3 4 5 465456541
- 样例输出
-
4 5 4
算法分析:这个题目有个规律,(a*10^b)%9==(a%9)*(10^b%9)%9==(a%9)*1%9==a%9 -
View Code
1 #include<iostream>
2 #include<cstring>
3 #define N 1000010
4
5 using namespace std;
6
7 char a[N];
8
9 int main()
10 {
11 int test,i,sum,len;
12 cin>>test;
13 while(test--)
14 {
15 sum=0;
16 cin>>a;
17 len=strlen(a);
18 for(i=0;i<len;i++)
19 sum+=(a[i]-'0');
20 cout<<sum%9<<endl;
21 }
22 return 0;
23 }