题解 | 对称平方数1

#include <iostream>
#include<math.h>
using namespace std;
bool pingf(int n) {

    if (n < 10)return true;
    //;
    int x = n, y = 0;
    while (x != 0) { //先识别几位,取最高位
        x = x / 10;
        y++;
    }
    if (y % 2 != 0) { //y为奇数
        while (y != 1) {
            int a = n % 10;
            int b = n / pow(10, y - 1);
            n = n - b * pow(10, y - 1);
            n /= 10;
            y -= 2;
            if (a != b)return false;
            //  if(a!=b);
        }
    }
    if (y % 2 == 0) { //y为偶数
        while (y != 0) {
            int a = n % 10;
            int b = n / pow(10, y - 1);
            n = n - b * pow(10, y - 1);
            n /= 10;
            y -= 2;
            if (a != b)return false;
            //if(a!=b);
        }
    }
    return true;
}
int main() {
    for(int i=0;i<=256;i++)
	{
		if(pingf(i*i)){
			cout<<i<<endl;
		}
	}
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

这是什么操作什么意思,这公司我服了...
斯派克spark:意思是有比你更便宜的牛马了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务