社区讨论

我的高精除法有什么问题吗?

灌水区参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@lwxidlao
此快照首次捕获于
2024/06/02 20:18
2 年前
此快照最后确认于
2024/06/02 21:58
2 年前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int a[500005],b[500005],c[500005],d[500005];
long long b1;
void sc(int a[]){
	string s;
	cin>>s;
	a[0]=s.size();
	for(int i=1;i<=a[0];i++){
		a[i]=s[a[0]-i]-'0';
	}
}
void p(int a[]){
	for(int i=a[0];i>=1;i--){
		cout<<a[i];
	}
}
 /*
void cf(int a[],int b[],int c[]){
	for(int i=1;i<=b[0];i++){
		for(int j=1;j<=a[0];j++){
			c[i+j-1]+=b[i]*a[j];
		}
	}
	int x=0;
	c[0]=b[0]+a[0];
	for(int i=1;i<=c[0];i++){
		c[i]+=x;
		x=c[i]/10;
		c[i]%=10;
	}
	int lenc=c[0];
	while(c[lenc]==0&&lenc>1){
		lenc--;
	}
	c[0]=lenc;
}
  */
long long chu(int a[],long long b,int c[]){
	long long x=0;  
	for(int i=a[0];i>=1;i--){
		x=x*10+a[i];
		c[i]=x/b;
		x=x%b;
	}
	c[0]=a[0];
	int lenc=c[0];
	while(c[lenc]==0&&lenc>1){
		lenc--;
	}
	c[0]=lenc;
	return x;
} 
int main(){
	sc(a);
   cin>>b1;
	int y=chu(a,b1,d);
	p(d);
	cout<<endl<<y;
	return 0;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...