题目

思路
没什么好说的,大整数的运算。背好相关代码吧。(以下内容整理自《算法笔记》)

AC代码
#include <bits/stdc++.h>
using namespace std;
struct bign{
int a[1001];
int len=0;
bign(){
a[1001]={0};
len=0;
}
};
bign change(char s[]){
bign c;
int l=strlen(s);
c.len=l;
for(int i=0;i<l;i++){
c.a[l-1-i]=s[i]-'0';
}
return c;
}
int r=0;
bign devide(bign a,int b,int & r){
bign c;
c.len=a.len;
for(int i=a.len-1;i>=0;i--){
r=r*10+a.a[i];
if(r<b) c.a[i]=0;
else {
c.a[i]=r/b;
r=r%b;
}
}
while(c.len>1&&c.a[c.len-1]==0) c.len--;
return c;
}
int main(){
bign a,q;
int b;
char s[1001];
cin>>s>>b;
a=change(s);
q=devide(a,b,r);
for(int i=q.len-1;i>=0;i--) cout<<q.a[i];
cout<<' '<<r;
}
本文详细介绍了如何处理大整数除法运算,通过结构化的数据类型和算法实现,解决了传统整数类型无法处理超长数字的问题。文章提供了完整的AC代码示例,包括大整数转换和除法运算的具体实现。
543

被折叠的 条评论
为什么被折叠?



