国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

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

Rindia / 653人閱讀

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

前言

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

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

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

你可以按任何順序返回答案。在你的回答中,每個(gè)值最多出現(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ù)字即可。

注意事項(xiàng):

循環(huán)中會(huì)出現(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í)行超時(shí)的情況,例如輸入: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是因?yàn)榻Y(jié)果中會(huì)出現(xiàn)重復(fù)值
        Set set = new HashSet<>();
        //循環(huán)次數(shù)為bound,而不是Integer.MAX_VALUE,防止執(zhí)行超時(shí)
        for (int i = 0; i < bound; i++) {
            int tmp1 = (int) Math.pow(x, i);
            //如果第一個(gè)數(shù)就大于bound,直接中斷循環(huán),防止執(zhí)行超時(shí)
            if (tmp1 > bound) {
                break;
            }
            //循環(huán)次數(shù)為bound,而不是Integer.MAX_VALUE,防止執(zhí)行超時(shí)
            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),因?yàn)楹罄m(xù)的數(shù)字都會(huì)超出bound
                    break;
                }
            }
        }

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/72831.html

相關(guān)文章

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

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

    Baaaan 評(píng)論0 收藏0
  • 你對(duì)Number一無(wú)所知

    摘要:表示正數(shù),表示負(fù)數(shù)。是一個(gè)無(wú)符號(hào)整數(shù),因?yàn)殚L(zhǎng)度是位,取值范圍是。浮點(diǎn)數(shù)具體數(shù)值的實(shí)際表示。例如對(duì)于單精度浮點(diǎn)數(shù),指數(shù)部分實(shí)際最小值是,對(duì)應(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 評(píng)論0 收藏0
  • JavaScript值介紹

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

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

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

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

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

    jlanglang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<