藍橋杯15年真題奇妙的數字暴力集合去重

Motongxue發表於2020-10-14

大家覺得寫還可以,可以點贊、收藏、關注一下吧!
也可以到我的個人部落格參觀一下,估計近幾年都會一直更新!和我做個朋友吧!https://motongxue.cn


文章目錄

奇妙的數字?

小明發現了一個奇妙的數字。它的平方和立方正好把0~9的10個數字每個用且只用了一次。
你能猜出這個數字是多少嗎?
請填寫該數字,不要填寫任何多餘的內容。

分析

一個數字的平方和立方加起來剛好把0~9的數字用了一遍,意思是剛好用完

  1. 這題想要快速的做出就需要一定的基礎了,這題涉及了一個Set集合
  2. 這個集合有一個特點就是隻能儲存不同的資料,首先我們定義兩個變數來儲存一個數的平方和立方分別取出每位數字新增到同一Set集合中
  3. 然後判斷Set的長度是否為10,這裡就巧妙利用了Set屬性值不能重複的特點,保證Set中如果存在10個值的話必然是0~9。
/*
 * @Author: motongxue
 * @Date: 2020-10-14 20:18:01
 * @LastEditors: motongxue
 * @LastEditTime: 2020-10-14 20:21:37
 * @Blog: https://motongxue.cn
 * @Description: file content
 */
import java.util.HashSet;
import java.util.Set;

public class Main {
    public static void main(String[] args) {
        for (int i = 1; i < 10000; i++) {
            if (check("" + i * i + i * i * i)) {
                System.out.println(i);
                break;
            }
        }
    }

    private static boolean check(String s) {
        Set<Character> set = new HashSet<>();
        for (char x : s.toCharArray()) {
            set.add(x);
        }
        return s.length() == 10 && set.size() == 10;
    }

}


2020年10月14日更

大家覺得寫還可以,可以點贊、收藏、關注一下吧!
也可以到我的個人部落格參觀一下,估計近幾年都會一直更新!和我做個朋友吧!https://motongxue.cn


相關文章