求此代码优化方法(TLE了QAQ)
#include<bits/stdc++.h>
using namespace std;
long long n;
int wqpfs(long long n) {
long long m=sqrt(n);
if(m*m==n) {
return 1;
} else {
return 0;
}
}
int main() {
cin>>n;
for(int i=1; i<=n; i++) {
if(!wqpfs(i)) {
continue;
}
int l=0,ans=0,he=0,m,x=i;
int a[100]= {0};
while(x) {
a[l]=x%8;
l++;
x=x/8;
}
for(int j=0; j<l; j++) {
ans+=a[j]*pow(10,j);
}
m=ans;
while(ans!=0) {
he=he*10+ans%10;
ans=ans/10;
}
if(he!=m) {
continue;
}
cout<<i<<" ";
}
return 0;
}