40求助,#2,#4,#5WA
查看原帖
40求助,#2,#4,#5WA
762086
Francium_楼主2023/8/14 12:14

rt,求调 为什么#2输出为10964而不为1964??

#include <bits/stdc++.h>
using namespace std;

struct aaa {
	string num;
} a[20];

int poww[30] = {0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 00, 21, 44, 69, 96, 25, 56, 89, 24, 61, 0, 1, 4, 1, 1, 4, 9};

string A[30] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen", "twenty", "a", "both", "another", "first", "second", "third"};
int b[20];
map<string, int>mp;

int main() {
	int x = 1, tmp;
	string s;
	for (int i = 0; i < 6; i++) {
		cin >> s;
		if (s[s.size() - 1] == '.')
			s = s.substr(0, s.size() - 1);
		a[i + 1].num = s;
	}
	tmp = 1;
	for (int i = 0; i <= 20; i++)
		mp[A[i]] = i ;
	for (int i = 21; i < 30; i++) {
		mp[A[i]] = sqrt(poww[i]);
	}
	for (int i = 1; i <= 6; i++) {
		if (mp[a[i].num]) {
			b[tmp] = poww[mp[a[i].num]];
			tmp++;
		}
	}
	if (tmp == 1) {
		cout << 0;
		return 0;
	}
	sort(b + 1, b + tmp);
	for (int i = 1; i < tmp; i++)
		cout << b[i] % 100;
	return 0;
}
2023/8/14 12:14
加载中...