0
1
mirror of https://git.sb/baoshuo/OI-codes.git synced 2024-11-27 21:36:36 +00:00

P2108 学英语

R52635743
This commit is contained in:
Baoshuo Ren 2021-07-08 17:49:28 +08:00 committed by Baoshuo Ren
parent 25ce10f451
commit caf0293b04
Signed by: baoshuo
GPG Key ID: 70F90A673FB1AB68

View File

@ -3,64 +3,52 @@
using namespace std;
int main() {
string s;
map<string, int> m;
string s;
long long ans = 0, now = 0;
m["one"] = 1;
m["two"] = 2;
m["three"] = 3;
m["four"] = 4;
m["five"] = 5;
m["six"] = 6;
m["seven"] = 7;
m["eight"] = 8;
m["nine"] = 9;
m["ten"] = 10;
m["eleven"] = 11;
m["twelve"] = 12;
m["thirteen"] = 13;
m["fourteen"] = 14;
m["fifteen"] = 15;
m["sixteen"] = 16;
int ans = 0, tmp = 0, w = 1;
m["one"] = 1;
m["two"] = 2;
m["three"] = 3;
m["four"] = 4;
m["five"] = 5;
m["six"] = 6;
m["seven"] = 7;
m["eight"] = 8;
m["nine"] = 9;
m["ten"] = 10;
m["eleven"] = 11;
m["twelve"] = 12;
m["thirteen"] = 13;
m["fourteen"] = 14;
m["fifteen"] = 15;
m["sixteen"] = 16;
m["seventeen"] = 17;
m["eighteen"] = 18;
m["nineteen"] = 19;
m["twenty"] = 20;
m["thirty"] = 30;
m["forty"] = 40;
m["fifty"] = 50;
m["sixty"] = 60;
m["seventy"] = 70;
m["eighty"] = 80;
m["ninety"] = 90;
m["eighteen"] = 18;
m["nineteen"] = 19;
m["twenty"] = 20;
m["thirty"] = 30;
m["forty"] = 40;
m["fifty"] = 50;
m["sixty"] = 60;
m["seventy"] = 70;
m["eighty"] = 80;
m["ninety"] = 90;
while (cin >> s) {
if (s == "negative") {
cout << "-";
}
else if (s == "hundred") {
ans += now;
ans *= 100;
now = 0;
}
else if (s == "thousand") {
ans += now;
ans *= 1000;
now = 0;
}
else if (s == "million") {
ans += now;
ans *= 1000000;
now = 0;
}
else {
now += m[s];
w = -1;
} else if (s == "hundred") {
tmp *= 100;
} else if (s == "thousand") {
ans += tmp * 1000;
tmp = 0;
} else if (s == "million") {
ans += tmp * 1000000;
tmp = 0;
} else {
tmp += m[s];
}
}
if (now) {
ans += now;
}
cout << ans << endl;
ans += tmp;
cout << w * ans << endl;
return 0;
}