27:除以13
27:除以13
- 总时间限制:
- 1000ms
- 内存限制:
- 65536kB
- 描述
-
输入一个大于0的大整数N,长度不超过100位,要求输出其除以13得到的商和余数。
- 输入
- 一个大于0的大整数,长度不超过100位。
- 输出
- 两行,分别为整数除法得到的商和余数。
- 样例输入
-
2132104848488485
- 样例输出
-
164008065268345 0
- 提示
- 模拟除法运算,商的长度应该比输入大整数的长度少1或2。
- 来源
- 习题(12-11)
-
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 using namespace std; 5 char a1[10001]; 6 int a[10001]; 7 int c[10001]; 8 int main() 9 { 10 gets(a1); 11 int la=strlen(a1); 12 for(int i=0;i<la;i++) 13 { 14 a[i+1]=a1[i]-48; 15 } 16 int x=0;//商 17 for(int i=1;i<=la;i++) 18 { 19 c[i]=(x*10+a[i])/13; 20 x=(x*10+a[i])%13; 21 } 22 int lc=1; 23 for(int i=1;i<=la;i++) 24 { 25 if(c[i]==0&&lc<la) 26 lc++; 27 else break; 28 } 29 for(int i=lc;i<=la;i++) 30 cout<<c[i]; 31 cout<<endl; 32 cout<<x; 33 return 0; 34 }
作者:自为风月马前卒
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。