蓝桥杯官网填空题(平方十位数)

题目描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

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

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

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

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M
import java.util.*;

public class Main {
    public static void main(String[] args) {
        for(long i=100000;i>6666;i--){
            if(check(i*i)==1){
                System.out.println(i*i);
                break;
            }
        }
    }
    public static int check(long n){
        int flag=1;
        int k=0;
        int[] f=new int[10];
        while(n>0){
            k=(int)(n%10);
            f[k]++;
            n=n/10;
            if (f[k] > 1) {
                flag = 0;
                break;
            }
        }
        return flag;
    }
}

你可能感兴趣的:(蓝桥杯,算法,职场和发展)