AT3935题解
回文数判断前面几位大佬已经讲的很清楚了,我讲一种新的 STL 做法。
这里介绍两个函数,reverse()和to_string()。
to_string()函数
to_string()是在 C++11 中新加入的函数,定义于<string>头文件中。用法为to_string(val),其中val可以是int,long,long long,unsigned int,unsigned long long,fload,double,long double类型。其作用是将数字转换成字符串。
reverse()函数
reverse()函数是一个可以翻转数组,string,vector等数据结构的函数,定义于<algorithm>头文件中。用法为reverse(p1,p2),p1为前指针,p2为后指针。
reverse(array,array+a_length) //数组
reverse(str.begin(),str.end()) //string
reverse(v.begin(),v.end()) //vector
明白之后代码就简单多了。
Code:
#include<bits/stdc++.h>
using namespace std;
int cnt=0;
int main(){
int l,r;
cin>>l>>r;
for(int i=l;i<=r;i++){
string s=to_string(i);
string ts=s;
reverse(s.begin(),s.end());
if(ts==s){
cnt++;
}
}
cout<<cnt<<endl;
return 0;
}