• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            郁悶的有道難題


            一開始太激動了。。。還以為是Div2 的250呢。直接暴力就交了。。。
            想想不對。。用1e17測了下,果然超時。。太腦殘了今天。。

            最后重提交了。。。cha對一個,cha錯一個,得了個140+,排350多名。。淚奔啊。。
            歸根結底還是自己水平不行,繼續努力吧。

            貼一下最終的代碼,還好過了system test,還有一點點安慰。。。

            ???class?UnrepeatingNumbers
            ??????????????{
            ??????????????
            public:
            ??????????????
            long?long?getNext(long?long?A)
            ??????????????????{
            ????????????????????
            return?_get(A+1);
            ??????????????????}


            ??????????????????
            /*_get()函數用于獲得>=A的第一個非重復數
            ????????????????? 如果A是一個非重復數,直接返回。否則A必然為?xxaaXXXX形式。
            ????????????????????其中XXXX為非重復的。也就是說我們找第一個重復數字。那
            ???????????????????? 么下一個非重復數,必然大于(xxaa+1)0000。
            ??????????????????? 這樣就跟暴力比就大大減小了計算次數。。
            ????????????????? */
                      
            ??????????????????
            long?long?_get(long?long?A){

            ????????????????????
            long?long?t?=?1;
            ????????????????????
            long?long?res?=?A;
            ????????????????????
            int?last?=?A%10;
            ????????????????????A
            /=10;
            ????????????????????
            while(?A){
            ???????????????????????????
            if(?A%10==last){
            ?????????????????????????????
            return?_get((A*10+last+1)*t);
            ???????????????????????????}
            else{
            ?????????????????????????????????last?
            =?A%10;
            ?????????????????????????????????A
            /=10;
            ?????????????????????????????????t
            *=10;
            ???????????????????????????}
            ????????????????????}

            ????????????????????
            return?res;

            ??????????????????}

            }

            附題:
            如果一個數字十進制表達時,不存在連續兩位相同,則稱之為“不重復數”。例如,105、1234和12121都是“不重復數”,而11、100和
            1225不是。

            給定一個long類型數字A,返回大于A的最小“不重復數”。

            DEFINITION
            Class:UnrepeatingNumbers
            Method:getNext
            Parameters:long
            Returns:long
            Method signature:long getNext(long A)


            CONSTRAINTS
            -A 取值范圍是[0, 1017],注意是閉區間。


            EXAMPLES

            0)
            54

            Returns: 56

            大于54的最小數字是55,但55不是“不重復數”。下一個數字是56,它滿足條件。

            1)
            10

            Returns: 12

            2)
            9

            Returns: 10

            3)
            98

            Returns: 101

            99和100都不是“不重復數”,但101是。

            4)
            21099


            Returns: 21201



            雖然沒什么名次,但還是應該吸取一些教訓吧。
            這次的問題主要在于:
            1.水平問題 對題目限制條件不敏感,暴力不能解決問題,至少不能解決絕大部分問題。平時做題,對1000分的題基本上不看,對難題沒信心
            2.心態問題 作為一個混跡TopCoder這么長時間的還是一個綠色的資深loser來說,在一堆紅黃藍面前,開始就沒打算能進top 200。不夠足夠認真,謹慎,開始就沒有太強的比賽意識

            教訓有:
            平時做題要和平時比賽一樣,要緊張高效,不能慢慢吞吞的,加強Div2前兩題的正確性和編碼速度。嘗試學習理解牛人代碼,嘗試解1000分題.寫代碼要爭取一次編譯通過,少在細節問題上犯錯誤。
            比賽要全力以赴,至于結果如何并不全由自己能把握,不留遺憾,發揮出自己水平就可以了。

            今年大的比賽可能都已經結束了,縱觀騰訊tic,百度之星,有道難題,都只過了初賽。這一方面,說明我的算法水平縱向地比,比以前有了很大提高,但是橫向比較的話,還是處在一個比較低的水平。畢業以后可能提高算法水平的機會不太多了,爭取在畢業前多做一些題,多學一些。此外,不能只顧著做題的量,不能閉門造車,要多學習牛人的代碼開闊思路。


            posted on 2009-06-21 22:30 YZY 閱讀(450) 評論(9)  編輯 收藏 引用 所屬分類: AlgorithmMiscellaneous

            評論

            # re: 郁悶的有道難題 2009-06-22 18:14 春天

            你好!認識下,我最近差不多做了你說的這些事。我的結果很慘淡,水平不夠,繼續努力。  回復  更多評論   

            # re: 郁悶的有道難題[未登錄] 2009-06-22 18:20 YZY

            @春天
            呵呵,我水平也很差,相互學習吧  回復  更多評論   

            # re: 郁悶的有道難題 2009-06-22 18:48 春天

            通過你的日志了解到你現在在讀大學,對吧?我有時遇到困難,就容易停止不前了,我們相互勉勵,相互競爭,爭取早日進入下一階(topcoder),如何?
            我的ID zhuimengboy65 做了一次rating。  回復  更多評論   

            # re: 郁悶的有道難題[未登錄] 2009-06-22 18:59 YZY

            @春天
            呵呵,我碩士快畢業了。  回復  更多評論   

            # re: 郁悶的有道難題 2009-06-22 22:04 goodidea

            你寫的代碼是少點,但是運行起來效率還是不是很高,我初賽出了點問題沒進,我寫了用構造法直接給了結果
            http://gc063tzf.blog.163.com
            可以交流一下,我大三,學機械的,不過對編程還有點興趣  回復  更多評論   

            # re: 郁悶的有道難題[未登錄] 2009-06-22 22:12 YZY

            @goodidea
            這個算法的復雜度我自己也沒辦法分析。不過比回溯法生成應該也不會慢。
            我看了你的算法,比我快的地方在于后面直接生成010101這樣的.這樣編碼麻煩且容易出錯是.我算法log(n)步就可以從1e17到101010101010這樣啊  回復  更多評論   

            # re: 郁悶的有道難題 2009-06-22 22:38 goodidea

            不過你的遞歸算法還是用的比較好的,學習啦。
            對了你的第二個題怎么考慮了?也歡迎給我留言  回復  更多評論   

            # re: 郁悶的有道難題[未登錄] 2009-06-23 09:01 YZY

            @goodidea
            我的算法應該是logn*logn的復雜度  回復  更多評論   

            # re: 郁悶的有道難題 2009-06-24 00:15 goodidea

            @YZY
            呵呵,你分析的在理,最初我也想用遞歸的,但是對這個題還是沒想好遞歸的出口,以及準確性,所以就按自己想法寫了一片代碼。。。。  回復  更多評論   

            導航

            <2009年6月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            統計

            常用鏈接

            留言簿(2)

            隨筆分類

            隨筆檔案

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            中文成人无码精品久久久不卡| 亚洲国产成人久久综合碰碰动漫3d| 99久久无码一区人妻| 99久久婷婷国产一区二区| 亚洲国产精品狼友中文久久久| 亚洲人AV永久一区二区三区久久| 狠狠色丁香久久婷婷综合| 91精品国产乱码久久久久久| 国产精品久久久久久久久久免费| 天天影视色香欲综合久久| 久久精品中文字幕无码绿巨人| 93精91精品国产综合久久香蕉| 区亚洲欧美一级久久精品亚洲精品成人网久久久久 | 亚洲婷婷国产精品电影人久久| 伊人久久精品无码av一区| 久久免费线看线看| 97精品国产97久久久久久免费 | 亚洲国产精品一区二区三区久久| 2021国产精品午夜久久| 99久久www免费人成精品 | 国产综合精品久久亚洲| 久久久久久久97| 久久精品国产亚洲精品| 精品久久777| 久久久久亚洲精品天堂| 亚洲精品国产自在久久| a级毛片无码兔费真人久久| 久久99精品久久久久久hb无码| 久久综合鬼色88久久精品综合自在自线噜噜| 久久久久久国产精品无码超碰| 久久亚洲AV无码精品色午夜 | 国产999精品久久久久久| 久久人人爽人人爽人人AV东京热 | 精品永久久福利一区二区| 久久精品综合网| 亚洲欧洲中文日韩久久AV乱码| 久久精品国产亚洲AV不卡| 久久久久亚洲AV无码专区网站| 一级做a爱片久久毛片| 色综合久久久久网| 色偷偷888欧美精品久久久|