本文主要是介绍基础算法:大数除以除以13,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
基础算法:大数除以一个数
信息学奥赛:1175:除以13
时间限制: 1000 ms 内存限制: 65536 KB
【题目描述】
输入一个大于0的大整数N,长度不超过100位,要求输出其除以13得到的商和余数。
【输入】
一个大于0的大整数,长度不超过100位。
【输出】
两行,分别为整数除法得到的商和余数。
【输入样例】
2132104848488485
【输出样例】
164008065268345
0
#include<bits/stdc++.h>
using namespace std;
//第一数组-全局定义默认都为0
int a[300],k1=0,k2=0,len1,len2,len,n,c[300];
//定义的变量指针,可以存储数据
void read(int *m,int &l){string s; //字符串定义 cin>>s;l = s.size();int k = 0; for( int i=0;i<l;i++){m[k] = s[i] - 48;k++; }
}
int main(){//获取数据,转化为int类,反转 read(a,len1); int r;
// scanf("%d",&n);n=13;r=0;for(int i = 0; i<len1; i++){c[i]=(a[i]+r*10)/n;r=(a[i]+r*10-n*c[i]);}//处理先导0问题 int mark = 0;for(int i=0;i<len1;i++){if(c[i]==0&mark ==0) continue;else mark=1;cout<<c[i]; }cout<<endl;cout<<r%10;return 0;
}
这篇关于基础算法:大数除以除以13的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!