对称平方数

7

小陈也只是想要一个实习罢了

#include

using namespace std;

int main(){

int a[50],a_count=0;

int b[10];

for(int n=1;n<256;n++){

for(int i=0;i<10;i++)

b[i]=0;

int temp=n*n,count=0;

while(temp>0){

b[count++]=temp%10;

temp/=10;

}

bool judge=1;

for(int i=0;i

if(b[i]!=b[count-1-i]){

judge=0;

break;

}

}

if(judge==1)

a[a_count++]=n;

}

for(int i=0;i

cout<

}

发表于 2019-02-23 22:29:48

回复(0)

7

Python

123123123112

for n in range(1,256): if str(n**2) ==str(n**2)[::-1]: print(n)

发表于 2019-03-16 18:12:50

回复(3)

2

Java

LHC0512

Java解法 public class Main {

public static void main(String[] args) {

//注意i=1起始,个人觉得i=0也符合

for (int i = 1; i < 256; i++) {

String s = String.valueOf(i * i);

int j=0;

int k=s.length()-1;

while (j<=k){

if (s.charAt(j)==s.charAt(k)){

j++;k--;

}else break;

}

if (j>k) System.out.println(i);

}

}

}

发表于 2020-03-17 15:47:28

回复(0)

2

你快乐吗

#include

#include

int main()

{

int m,n,i,j,k;

int a[5];

int flag=0;

for(i=1;i<=256;i++)

{

n=i*i;

for(j=0;;)

{

while(n/10!=0)

{

a[j]=n%10;

n=n/10;

j++; } if(n/10==0) { a[j]=n; break; } } for(k=0;k<=j/2;k++) { if(a[k]!=a[j-k]) { flag=1; break; } } if(flag==0) printf("%d\n",i); flag=0; } return 0;

}

发表于 2019-03-14 10:17:33

回复(0)

1

C/C++

YhX.

#include

int main()

{

int i,j,sum;

for(i=1;i<256;i++)

{

j=i*i;sum=0;

while(j)

{

sum=sum*10+j%10;

j/=10;

}

if(sum==i*i)

printf("%d\n",i);

}

}

发表于 2020-05-10 22:33:00

回复(0)

1

C/C++

肚儿和尚

#include

#include

using namespace std;

bool fun(int k)

{

vector v; //存储逆序数据

int m=k;

int ans =0;

while(m)

{

v.push_back(m%10);

m=m/10;

}

for(vector::iterator it=v.begin();it!=v.end();it++)

{

ans=ans*10+(*it);

}

if(ans==k) return true;

else return false;

}

int main()

{

for(int i=1;i<=256;i++)

{

int k=i*i;

bool flag=fun(k);

if(flag) cout<

}

return 0;

}

这题不让输入数据,直接计算1-256的数据就行,这题目真坑人,说也说不清楚。

发表于 2020-02-15 11:41:16

回复(0)

1

呃嗯

#include

using namespace std;

int main(){

for(int i=1;i<256;++i){

string temp=to_string(i*i);

string temp1=temp;

reverse(temp.begin(),temp.end());

if(temp1==temp)

cout<

}

return 0;

}

发表于 2019-07-08 23:23:07

回复(0)

1

Python

不爱麻烦的胡先生

这样应该算是比较简单的实现方法 def is_palindrome(num): temp = num total = 0 while temp > 0 : total = total * 10 + temp % 10 temp //= 10 return total == num for i in range(1,256): if is_palindrome(pow(1,2)): print(i)

发表于 2019-06-13 09:34:50

回复(1)

1

C/C++

热爱前端

#include

using namespace std;

int main()

{

int i=1,num=0,temp=0,m=0;

for(i;i<256;i++)

{

num=i*i;

m=0;

while(num>0)

{

temp=num%10;

m=temp+m*10;

num/=10;

}

if(m==i*i)

cout<

}

return 0;

}

这个题目在二级C编程中有类似的题,这里只是变换了题目。

发表于 2019-05-21 18:39:03

回复(0)

1

咖啡糖66

//用stringstream就很快 #include #include using namespace std; int main() { for(int ii=1;ii<256;ii++){ int product = ii*ii; stringstream ss; string s; ss<>s; bool flag = true; for(int i=0,j=s.size()-1; i

发表于 2019-05-12 01:52:39

回复(0)

1

Java

生活喜提我狗命~

public static void main(String[] args) { int n=256; for(int i=0;i

发表于 2019-04-21 15:27:59

回复(1)

1

从现在开始做人吧

这题真的狗

发表于 2019-04-05 19:12:34

回复(0)

1

C.J.

for (int i =1; i<256; i++){ int result = i*i; char result_s[10]; sprintf(result_s, "%d", result); char result_r[strlen(result_s)+1]; int y = strlen(result_s)-1; for(int z = 0; z

编辑于 2019-03-28 00:22:54

回复(0)

1

C/C++

十一月御风

#include #include bool map(size_t &square) { std::string str{ std::to_string(square * square) }; std::string reverse; for (auto i = str.rbegin(); i != str.rend(); ++i) reverse.push_back(*i); return str == reverse ? true : false; } int main() { for (size_t i = 1; i != 256; ++i) { if (map(i)) std::cout << i << std::endl; } return 0; }

发表于 2019-03-10 23:05:02

回复(0)

1

hitcs

import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in=new Scanner(System.in); while(in.hasNext()) { int j=in.nextInt(); int n,m; for(int i=1;i<256;i++) { n=i*i; m=0; while(n!=0) { m=m*10+n%10; n/=10; } if(m==i*i) { System.out.println(i); } } } } }

发表于 2019-03-05 10:56:44

回复(0)

1

tukifish

#include using namespace std; int main(){ for(int i=1;i<256;i++){ int temp=i*i; int a[5]; //n的平方不超过5位数 int k=0; int len=0; //计算位数 bool flag=true; //是否为对称数 while(temp!=0){ a[k++]=temp%10; temp/=10; len++; } for(k=0;k

发表于 2019-03-01 23:03:03

回复(0)

1

C/C++

bppyam

//16:29开始 #include using namespace std; int main() { int a[10],s,j,k,i; for(i=1;i<256;i++) { s=i*i; j=0; do { a[j++]=s%10; s=s/10; }while(s!=0); k=0; do { s=s*10+a[k++]; }while(k

发表于 2019-02-21 17:01:24

回复(0)

36

兜兜风

#include

int rev(int n){//反转整数

int new_n=0;

while(n){

new_n = new_n*10+n%10;

n/=10;

}

return new_n;

}

int main(){

int i;

for(i=1;i<256;i++)

if(i*i==rev(i*i))

printf("%d\n",i);

return 0;

}

发表于 2019-02-26 17:02:00

回复(15)

7

Java

中南的小菜鸡

//if的判断不能反 public class Main { public static void main(String[] args) { for (int i = 1; i < 256; i++) { StringBuilder sb = new StringBuilder(String.valueOf(i*i)); if(sb.toString().equals(sb.reverse().toString())){ System.out.println(i); } } } }

发表于 2019-03-23 23:57:07

回复(0)

3

Python

华科平凡

for i in range(1, 256):

if str(i**2)==str(i**2)[::-1]:

print(i) 没有说n的范围,n是否可以为0?

发表于 2019-03-30 08:28:18

回复(1)