• <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>
            隨筆 - 87  文章 - 279  trackbacks - 0
            <2007年2月>
            28293031123
            45678910
            11121314151617
            18192021222324
            25262728123
            45678910

            潛心看書研究!

            常用鏈接

            留言簿(19)

            隨筆分類(81)

            文章分類(89)

            相冊

            ACM OJ

            My friends

            搜索

            •  

            積分與排名

            • 積分 - 217774
            • 排名 - 117

            最新評論

            閱讀排行榜

            評論排行榜

            Problem A: Modular multiplication of polynomials
            A題是一道模擬題,主要考察選手數組的和循環控制的運用能力。
            題目要求模擬的是多項式除法,且給出了具體的運算規則,異或運算。給出f(x),g(x)兩個多項式相乘,然后除以h(x)多項式,求其余數(亦為多項式)。先用兩重循環將f(x),g(x)相乘,用一數組記錄相乘后多項式k(x)的x^i的系數,然后做多項式除法。設被除數的最高次為x^n, 除數h(x)的最高次為y^m, 直到n<m時候循環結束。

            Problem B:Checking an Alibi
            這題其實就是求每個點到1號點的最短路。 然后判斷每只牛所在地到1號點的需時是否小于等于M.
            題目沒明確說有沒有重邊,一般情況下是要考慮的。 在比賽時,我們認為數據中有長度為0的邊,與題目中1-70000不符。但ACM就是這樣,題目出問題是常有的事。在確定自己程序沒錯的前提下,選手們只能考經驗和感覺去猜。

            Problem C:The Game of Mafia
            直接搜索就行了,白天和黑夜輪著搜,注意一下只剩下他自己的時候的情況就可以了。

            Problem D:Multiplication Puzzle
            這題是經典的動態規劃。
            用a[1000]表示愿數組,d[i][j]表示讓第i個數與第j個數碰面(刪掉他們之間的元素)的最小代價。
            方程是:
             d[i][j]= max(d[i][k]+d[k][j]+a[k]*a[i]*a[j],i<k<j)
            時間復雜度是O(n^3)。

            Problem E:Zip
            這題有兩種操作A和B
            對于操作A來說只要統計一下各種字母出現的次數就可以很容易得到S'了
            而對于操作B來說統計一下序列S'的各種字母的出現次數,然后根據p就可以得到序列的第一個字母和第二個字母,然后根據根據第一個字母就可以得到最后一個字母
            比如對于樣例來說:
            xelpame   7
            a      x
            e      e
            e      l
            l      p
            m     a
            p      m
            x      e
            確實了第二個字母是x,第一個字母是e,e出現第一次的時候就可以得到最后一個字母是e,
            所以根據最后一個字母倒過來生成前面的序列,從對應e的最后一次出現,可以得到倒數第二個字母是l,然后對于l最后出現一次,可以確實l前面是p,然后一直填上去就可以得到原序列S=example

            Promble F: Wall
            F題考察的是選手基本的計算幾何知識。
            讀懂題意后就是求凸包的周長+一個圓的周長, 求凸包可以先選取最左下角的點,然后以該點為基準對所有點作極角排序,然后就是用Graham掃描法求凸包了。

            Problem G:Ouroboros Snake
            這題可以用構造算法。 題目有一個限制,2^N 個數不重不漏的出現,這就是關鍵所在。可以想到,必然有N個零連著,這就是要求數列的開始(以后不可能有N個零連著了)。然后我們每次取后面N-1位,加0看看前是否有這N位。有,那么這一位不能是0(要不就違反了不重不漏了),只能是1。否則就加0。
            但是僅僅這樣并不能得出正確的答案。 怎么辦呢?
            想到這個構造算法的結尾必然是很多個1連著(因為加0的話,這N位在前面出現過了)。理想的情況是N個1。那么象 1000,1100,1110這些前面全是1,后面全是0的數就在首尾相接(這是一個圓環)的時候出現了。
            修正辦法立刻有了,就是在一開始時把象 1000,1100,1110這些前面全是1,后面全是0的數標志為已經出現過。然后用我們之前說的那種構造法一位位的確定那一位是0還是1。
            經過檢驗,發現這樣就符合要求了。

            posted on 2007-04-29 01:18 閱讀(662) 評論(0)  編輯 收藏 引用 所屬分類: 算法&ACM
            亚洲乱亚洲乱淫久久| 久久综合给合久久国产免费| 久久99精品久久久久婷婷| 91麻豆国产精品91久久久| 亚洲精品成人网久久久久久| 亚洲Av无码国产情品久久| 久久精品国产亚洲αv忘忧草| 狠狠色狠狠色综合久久| 日韩精品久久久久久久电影蜜臀 | 亚洲第一永久AV网站久久精品男人的天堂AV| 99久久久国产精品免费无卡顿| 天天久久狠狠色综合| 久久久无码精品亚洲日韩软件| 7777精品久久久大香线蕉| 一本大道久久a久久精品综合| 久久99热这里只频精品6| 久久精品成人免费网站| 欧美精品九九99久久在观看| 亚洲精品高清一二区久久| 久久天天躁狠狠躁夜夜躁2O2O | 久久国产成人午夜AV影院| 2020久久精品亚洲热综合一本| .精品久久久麻豆国产精品| 伊人久久无码精品中文字幕| 草草久久久无码国产专区| 久久精品国产第一区二区三区| 久久婷婷色综合一区二区| AA级片免费看视频久久| 国产精品欧美久久久天天影视| 久久久久久国产精品美女 | 久久国产精品一国产精品金尊| 欧美亚洲日本久久精品| 伊人久久大香线焦综合四虎| 精品蜜臀久久久久99网站| 亚洲AV日韩AV天堂久久| 久久99热这里只有精品国产| 久久亚洲电影| 久久精品18| 久久久久免费精品国产 | 青青草国产精品久久| 久久久久久夜精品精品免费啦|