求助dalao P1303 代码哪一块出问题了?
  • 板块灌水区
  • 楼主X_tiger
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/8/28 16:31
  • 上次更新2024/8/28 19:05:07
查看原帖
求助dalao P1303 代码哪一块出问题了?
1052491
X_tiger楼主2024/8/28 16:31

题目

代码:

#include<bits/stdc++.h>
using namespace std;
char a[100111],b[1000111];
int x[100001],y[1000111];
int ans[1000001];
int main(){
	cin >> a >> b;
	int la = strlen(a);
	int lb = strlen(b);
	
	for ( int i = 0; i < la; i ++ )	x[i] = a[i] - '0';
	for ( int i = 0; i < lb; i ++ )	y[i] = b[i] - '0';
	
	for ( int i = la - 1; i >= 0; i -- ){
		for ( int j = lb - 1; j >= 0; j -- ){
			ans[i + j] += x[i] * y[j];
		}
	}
	int q = 0;
	int f = 0;
	for ( int i = la - 1 + lb - 1; i >= 0; i -- ){
		if ( i != 0 ){
			if ( ans[i] > 9 ){
				ans[i - 1] += ans[i] % 10;
				ans[i] /= 10;
			}
		}
		else{
			if ( ans[i] > 9 ){
				q = ans[i] / 10;
				f = 1;
			}
		}
	}
	int s = la + lb - 1;
	for ( int i = 0; i < la + lb - 1; i ++ ){
		if ( i == la + lb - 2 )break;
		if( ans[i] == 0 ){
			s --;
		}
		else{
			break;
		}
	}
	for ( int i = 0; i < s; i ++ ){
		cout << ans[i];
	}
	if ( f != 0 ){
		cout << q;
	}
	return 0;
}
2024/8/28 16:31
加载中...