社区讨论

84求调

P1480A/B Problem(高精度除法Ⅰ)参与者 1已保存回复 0

讨论操作

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

当前回复
0 条
当前快照
1 份
快照标识符
@mil5eugi
此快照首次捕获于
2025/11/30 11:16
3 个月前
此快照最后确认于
2025/11/30 11:19
3 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
typedef long long ll;
const int N=1e8+10;
vector<ll>stov(string a){
	vector<ll>res;//转换为int类型 
	for(int i=a.size()-1;i>=0;i--){//逆序存储 
		res.push_back(a[i]-'0');
	}
	return res;
}
ll r=0;
vector<ll> div(vector<ll>a,ll b){//vector用来存储高精度,int存储低精度 
	vector<ll>res;
	r=0;
	for(int i=a.size();i>=0;i--){
		int t=r*10+a[i];
		res.push_back(t/b);
		r=t%b;
	}
	reverse(res.begin(),res.end());
	while(res.size()>1&&res.back()==0){
		res.pop_back();
	}
	return res;
} 
int main(){
	ios::sync_with_stdio(false);
	cin.tie(0);cout.tie(0);
   	string a;
   	ll b;
    cin>>a>>b;
    vector<ll>res=div(stov(a),b);
	for(int i=res.size()-1;i>=0;i--){
	    	cout<<res[i];
	}
	return 0;
}

回复

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

正在加载回复...