Problem Description
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。
请写一个程序判断读入的字符串是否是“回文”。
Input
输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。
Output
如果一个字符串是回文串,则输出"yes",否则输出"no".
Sample Input
4 level
abcde
noon
haha
Sample Output
yes
no
yes
no
1 #include<iostream>
2 using namespace std;
3
4 long long gcd(long long a, long long b) {
5 int c = a%b;
6 if (!c)
7 return b;
8 a = b, b = c;
9 gcd(a, b);
10 }
11 int main() {
12 int n;
13 while ((cin>>n)&&n)
14 {
15 long long num[1000];
16 for (int i = 0;i < n;i++)
17 cin >> num[i];
18 for (int i = 0;i < n - 1;i++)
19 num[i + 1] = num[i]*num[i+1]/gcd(num[i], num[i + 1]);
20 cout << num[n - 1] << endl;
21 }23 return 0;
24 }