求助
  • 板块灌水区
  • 楼主KCOI
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/8/7 19:40
  • 上次更新2024/8/7 20:35:57
查看原帖
求助
1418179
KCOI楼主2024/8/7 19:40

U363403高精模板110分,满分150分。

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
string s1,s2;
int a[N],b[N],c[N],f=0;
int main() {
    ios::sync_with_stdio(0);
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin>>s1>>s2;
	for(int i=0; i<s1.size(); i++) {
		if(s1[i]=='-') {
			f++;
			continue;
		}
		a[s1.size()-i]=s1[i]-'0';
	}
	for(int i=0; i<s2.size(); i++) {
		if(s2[i]=='-') {
			f++;
			continue;
		}
		b[s2.size()-i]=s2[i]-'0';
	}
	if(f%2==1) {
		cout<<"-";
	}
	int x=0;
	for(int i=1; i<=s1.size(); i++) {
		x=0;
		for(int j=1; j<=s2.size(); j++) {
			c[i+j-1]=a[i]*b[j]+x+c[i+j-1];
			x=c[i+j-1]/10;
			c[i+j-1]%=10;
		}
		c[i+s2.size()]=x;
	}
	int len=s1.size()+s2.size();
	while(c[len]==0&&len>1) {
		len--;
	}
	for(int i=len; i>0; i--) {
		cout<<c[i];
	}
	return 0;
}
2024/8/7 19:40
加载中...