UvaOj 401 - Palindromes
2012-04-09 12:54
281 查看
刷点水题先恢复下手感....
题目
代码:
题目
代码:
#include<cstdio> #include<cstring> #define MAXM 1000 char fc[MAXM]; void init() { memset(fc, 0, sizeof(fc)); fc['A'] = 'A'; fc['E'] = '3'; fc['H'] = 'H'; fc['I'] = 'I'; fc['J'] = 'L'; fc['L'] = 'J'; fc['M'] = 'M'; fc['O'] = 'O'; fc['S'] = '2'; fc['T'] = 'T'; fc['U'] = 'U'; fc['V'] = 'V'; fc['W'] = 'W'; fc['X'] = 'X'; fc['Y'] = 'Y'; fc['Z'] = '5'; fc['1'] = '1'; fc['2'] = 'S'; fc['3'] = 'E'; fc['5'] = 'Z'; fc['8'] = '8'; } #define MAXN 22 char s[MAXN]; int n; int ispa(char s[]) { for(int i=0; i<n/2; i++) { if(s[i] != s[n-1-i]) return 0; } return 1; } int ismi(char s[]) { for(int i=0; i<n/2; i++) { if(!fc[s[n-1-i]] || s[i] != fc[s[n-1-i]]) return 0; } if(n%2) { if(!fc[s[n/2]] || s[n/2] != fc[s[n/2]]) return 0; } return 1; } int main() { init(); while(scanf("%s", s)!=EOF) { n = strlen(s); int isp = ispa(s); int ism = ismi(s); if(isp && ism) { printf("%s -- is a mirrored palindrome.\n", s); } else if(isp) { printf("%s -- is a regular palindrome.\n", s); } else if(ism) { printf("%s -- is a mirrored string.\n", s); } else { printf("%s -- is not a palindrome.\n", s); } printf("\n"); } }
相关文章推荐
- UvaOj 401 - Palindromes
- uvaoj 401 Palindromes
- uvaoj 401 Palindromes
- UVaOJ 401 Palindromes
- UVAOJ401- Palindromes
- UVaOJ 401 - Palindromes
- uvaoj-401-Palindromes
- UVaOJ 401 - Palindromes
- UVaOJ 401 - Palindromes
- 【UVaOJ】401 Palindromes
- UVa 401 Palindromes
- UVa_401 - Palindromes
- UVA 401 - Palindromes (字符串)
- uva 401 Palindromes
- uva 401 Palindromes
- UVa 401: Palindromes
- UVA 401 (暑假-字符串(1) -A - Palindromes)
- UVA401 Palindromes
- UVa-401 Palindromes
- UVA 401 Palindromes