Name同学发现了在二维数组中有一些回文数,请编程找出这些回文数,并按照输入的顺序输出。 (回文数指的是这个数正过来读和反过来读是同一个数的数,比如1、8、99、252、1221等)。
输入描述
第一行是两个整数n和m(n和m都是4~100之间的整数),代表接下来的二维数组有n行m列。
接下来n行,每行有m个整数,这些整数都是1~9999之间的整数。
输出描述
按照输入的顺序输出满足条件的回文数,每行1个。
用例输入 1
3 3 1 22 98 34 121 110 100 210 323
用例输出 1
1 22 121 323
这道题相对来说还是比较简单的,这里要用到二维数组,具体代码如下
#include <bits/stdc++.h>
using namespace std;
int main() {
int n,m,sum=0;
cin>>n>>m;
int a[n][m];
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
cin>>a[i][j];
}
}
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
// a[i][j]
int b=a[i][j];
sum=0;
while(b!=0){
sum=sum*10+b%10;
b/=10;
}
if(sum==a[i][j]){
cout<<a[i][j]<<endl;
}
}
}
return 0;
}