平方十位数

由0~9这10个数字不重复、不遗漏,可以组成很多10位数字。
这其中也有很多恰好是平方数(是某个数的平方)。

比如:1026753849,就是其中最小的一个平方数。

请你找出其中最大的一个平方数是多少?

注意:你需要提交的是一个10位数字,不要填写任何多余内容。

答案:

代码:

#include <iostream>
#include <cstdio>
using namespace std;
bool check(long long k) {
    bool vis[10] = {false};
    while(k) {
        if(vis[k % 10]) return false;
        vis[k % 10] = true;
        k /= 10;
    }
    return true;
}
int main() {
    for(long long i = 99999;;i --) {
        if(check(i * i)) {
            printf("%lld",i * i);
            break;
        }
    }
}
原文地址:https://www.cnblogs.com/8023spz/p/10648597.html