成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

970-強(qiáng)整數(shù)

Rindia / 657人閱讀

摘要:前言的強(qiáng)整數(shù)給定兩個非負(fù)整數(shù)和,如果某一整數(shù)等于,其中整數(shù)且,那么我們認(rèn)為該整數(shù)是一個強(qiáng)整數(shù)。返回值小于或等于的所有強(qiáng)整數(shù)組成的列表。

前言

Weekly Contest 118的 強(qiáng)整數(shù):

給定兩個非負(fù)整數(shù) xy,如果某一整數(shù)等于 x^i + y^j,其中整數(shù) i >= 0j >= 0,那么我們認(rèn)為該整數(shù)是一個強(qiáng)整數(shù)。

返回值小于或等于 bound 的所有強(qiáng)整數(shù)組成的列表。

你可以按任何順序返回答案。在你的回答中,每個值最多出現(xiàn)一次。

示例1:

輸入:x = 2, y = 3, bound = 10
輸出:[2,3,4,5,7,9,10]
解釋: 
2 = 2^0 + 3^0
3 = 2^1 + 3^0
4 = 2^0 + 3^1
5 = 2^1 + 3^1
7 = 2^2 + 3^1
9 = 2^3 + 3^0
10 = 2^0 + 3^2

示例2:

輸入:x = 3, y = 5, bound = 15
輸出:[2,4,6,8,10,14]

提示:

1 <= x <= 100

1 <= y <= 100

0 <= bound <= 10^6

解題思路

本題只需要找出正整數(shù)中滿足x^i + y^j<=bound的數(shù)即可,所以只需要用兩重for循環(huán)找出滿足條件的數(shù)字即可。

注意事項:

循環(huán)中會出現(xiàn)重復(fù)的值,例如

輸入:x = 2, y = 3, bound = 10
輸出:[2,3,4,5,7,9,10]
解釋: 
2 = 2^0 + 3^0
3 = 2^1 + 3^0
4 = 2^0 + 3^1
5 = 2^1 + 3^1
5 = 2^2 + 3^0
7 = 2^2 + 3^1
9 = 2^3 + 3^0
10 = 2^0 + 3^2

其中重復(fù)的情況為

5 = 2^1 + 3^1
5 = 2^2 + 3^0

可以選擇先使用Set進(jìn)行結(jié)果去重

執(zhí)行超時的情況,例如輸入:x = 1, y = 3, bound = 100。所以可以選擇循環(huán)次數(shù)為bound(x^bound>bound恒成立),而不是Integer.MAX_VALUE。

實(shí)現(xiàn)代碼
    /**
     * 970. 強(qiáng)整數(shù)
     * @param x
     * @param y
     * @param bound
     * @return
     */
    public List powerfulIntegers(int x, int y, int bound) {
        //選擇使用Set是因為結(jié)果中會出現(xiàn)重復(fù)值
        Set set = new HashSet<>();
        //循環(huán)次數(shù)為bound,而不是Integer.MAX_VALUE,防止執(zhí)行超時
        for (int i = 0; i < bound; i++) {
            int tmp1 = (int) Math.pow(x, i);
            //如果第一個數(shù)就大于bound,直接中斷循環(huán),防止執(zhí)行超時
            if (tmp1 > bound) {
                break;
            }
            //循環(huán)次數(shù)為bound,而不是Integer.MAX_VALUE,防止執(zhí)行超時
            for (int j = 0; j < bound; j++) {
                int tmp2 = (int) (Math.pow(y, j));
                int tmp = tmp1 + tmp2;
                //判斷是否超出bound
                if (tmp <= bound) {
                    set.add(tmp);
                } else {//超出bound直接中斷循環(huán),因為后續(xù)的數(shù)字都會超出bound
                    break;
                }
            }
        }

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/72831.html

相關(guān)文章

  • 一些前端算法詳解 --- (不定時更新)

    摘要:也稱縮小增量排序,是直接插入排序算法的一種更高效的改進(jìn)版本。希爾排序是非穩(wěn)定排序算法。該方法因於年提出而得名。 前言 因為比較隨心所欲,所以我不按難度分享算法,所以你們會看到有時候順序有變化,因為我發(fā)表的時候會按照難度修改下位置,盡量讓你們看的時候能從簡單開始,以后每次更新都加個更新時間好了,讓你們知道我進(jìn)度.新增計時函數(shù)直觀對比效率并且因為資料比較雜,很多都是我個人理解說法,如果有發(fā)...

    Baaaan 評論0 收藏0
  • 你對Number一無所知

    摘要:表示正數(shù),表示負(fù)數(shù)。是一個無符號整數(shù),因為長度是位,取值范圍是。浮點(diǎn)數(shù)具體數(shù)值的實(shí)際表示。例如對于單精度浮點(diǎn)數(shù),指數(shù)部分實(shí)際最小值是,對應(yīng)的尾數(shù)部分從一直到,相鄰兩小浮點(diǎn)數(shù)之間的距離都是而與最近的浮點(diǎn)數(shù)即最小的非規(guī)約數(shù)也是。 二進(jìn)制表示小數(shù) 例如用二進(jìn)制表示 0.8125 0.8125 0.8125*2 = 1.625 取整為 1 0.625*2=1.25 取整為 1 0.25*2=0...

    Hanks10100 評論0 收藏0
  • JavaScript值介紹

    摘要:的數(shù)字類型是基于標(biāo)準(zhǔn)實(shí)現(xiàn)的,該標(biāo)準(zhǔn)也被稱為浮點(diǎn)數(shù)使用的是雙精度即位進(jìn)制由于數(shù)字值可以使用對象進(jìn)行封裝,因此數(shù)字值可以調(diào)用中的方法。 數(shù)組 和其他語言不同,在JavaScript中,數(shù)組可以擁有不同值類型,可以使字符串,數(shù)字,對象,還可以是數(shù)組(多維數(shù)組就是這樣形成的). 聲明數(shù)組后,可以直接通過索引的方式進(jìn)行賦值: var arr = []; arr.length; //0 ...

    hsluoyz 評論0 收藏0
  • 通俗的方式理解動態(tài)類型,靜態(tài)類型;強(qiáng)類型,弱類型

    摘要:不允許隱式轉(zhuǎn)換的是強(qiáng)類型,允許隱式轉(zhuǎn)換的是弱類型。拿一段代碼舉例在使用調(diào)用函數(shù)的時候會先生成一個類模板運(yùn)行時生成,執(zhí)行的時候會生成類模板,執(zhí)行的時候會生成類模板。 0 x 01 引言 今天和一個朋友討論 C++ 是強(qiáng)類型還是弱類型的時候,他告訴我 C++ 是強(qiáng)類型的,他和我說因為 C++ 在寫的時候需要 int,float 等等關(guān)鍵字去定義變量,因此 C++ 是強(qiáng)類型的,我告訴他 C+...

    周國輝 評論0 收藏0
  • java學(xué)習(xí)筆記 - 基本數(shù)據(jù)類型、直接量和變量

    摘要:數(shù)據(jù)類型結(jié)構(gòu)圖基本數(shù)據(jù)類型布爾值數(shù)值類型定點(diǎn)類型字符字節(jié)短整數(shù)整數(shù)長整數(shù)浮點(diǎn)類型單精度浮點(diǎn)數(shù)雙精度浮點(diǎn)數(shù)引用數(shù)據(jù)類型類或枚舉或接口數(shù)組基本數(shù)據(jù)類型由上圖可知,基本數(shù)據(jù)類型只有種。變量的變量一般有四個基本屬性變量名數(shù)據(jù)類型儲存單元變量值。 數(shù)據(jù)類型結(jié)構(gòu)圖 基本數(shù)據(jù)類型 布爾值 (true / false) 數(shù)值類型 定點(diǎn)類型 字符 char 字節(jié) byte 短整數(shù) shor...

    jlanglang 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<