#7WA 大佬们救救孩子吧
查看原帖
#7WA 大佬们救救孩子吧
876599
wqk2018509673楼主2023/6/9 15:57
#include <iostream>
#include <string>
using namespace std;
string a, b;
char maxn[200000];
char minn[200000];
int lenmx, lenmn;

int main() {
	cin >> a >> b;
	int zf = 1;
	if (a.length() > b.length()) {
		int temp = a.length() - 1;
		for (int i = 0; i < a.length(); i++) {
			maxn[i] = a[temp--];
		}
		temp = b.length() - 1;
		for (int i = 0; i < b.length(); i++) {
			minn[i] = b[temp--];
		}
		lenmx = a.length();
		lenmn = b.length();

	} else if (a.length() == b.length()) {
		if (a == b) {
			printf("0");
			return 0;
		} else if (a > b) {
			int temp = a.length() - 1;
			for (int i = 0; i < a.length(); i++) {
				maxn[i] = a[temp--];
			}
			temp = b.length() - 1;
			for (int i = 0; i < b.length(); i++) {
				minn[i] = b[temp--];
				lenmx = a.length();
				lenmn = b.length();
			}
		} else {
			int temp = b.length() - 1;
			for (int i = 0; i < b.length(); i++) {
				maxn[i] = b[temp--];
			}
			temp = a.length() - 1;
			for (int i = 0; i < a.length(); i++) {
				minn[i] = a[temp--];
			}
			zf = -1;
			lenmx = b.length();
			lenmn = a.length();
		}
	} else {
		int temp = b.length() - 1;
		for (int i = 0; i < b.length(); i++) {
			maxn[i] = b[temp--];
		}
		temp = a.length() - 1;
		for (int i = 0; i < a.length(); i++) {
			minn[i] = a[temp--];
		}
		zf = -1;
		lenmx = b.length();
		lenmn = a.length();
	}
//	printf("%s\n%s\n", maxn, minn);
	int bor = 0;
	for (int i = 0; i < lenmn; i++) {
		maxn[i] = maxn[i] - minn[i] + 48;
		if (maxn[i] < '0') {
			maxn[i + 1]--;
			maxn[i] += 10;
		}
	}
	int h = lenmx - 1;
//	printf("%s\n", maxn);
	while (maxn[h] == '0')
		h--;
	if (zf == -1)
		printf("-");
	for (int i = h; i >= 0; i--) {
		if (maxn[i] >= '0' && maxn[i] <= '9')
			printf("%d", maxn[i] - '0');
	}
}
2023/6/9 15:57
加载中...