标签:简单模拟
1.题目描述:点击打开链接
2.解题思路:本题是一道简单的模拟题,要求将小于100的每个数的英文单词输出,提前打表即可。注意0,11~19要特殊处理。
3.代码:
#define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<algorithm> #include<string> #include<sstream> #include<set> #include<vector> #include<stack> #include<map> #include<queue> #include<deque> #include<cstdlib> #include<cstdio> #include<cstring> #include<cmath> #include<ctime> #include<functional> using namespace std; #define INF 100000000 #define For(i,n) for(int i=0;i<(n);i++) typedef long long ll; char*s[] = { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"}; char*t[] = {0, "ten", "twenty", "thirty","forty", "fifty", "sixty", "seventy", "eighty", "ninety" }; char*sp[] = { 0,"eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" }; int main() { //freopen("t.txt", "r", stdin); int n; while (~scanf("%d", &n)) { int d = 0; int x = n; while (x > 0){ d++; x /= 10; } if (n < 10) { cout << s[n] << endl; } else if (n>10&&n < 20){ cout << sp[n - 10] << endl; } else if (d == 2 && n % 10 == 0){ cout << t[n / 10] << endl; } else if (n>=20&&d == 2 && (n % 10 != 0)) { int x1 = n / 10, x2 = n % 10; cout << t[x1]<< '-' << s[x2] << endl; } } return 0; }
#299 (div.2) A. Tavas and Nafas
标签:简单模拟
原文地址:http://blog.csdn.net/u014800748/article/details/45057727