poj入門水題整理6

2021-07-24 05:05:25 字數 2467 閱讀 2421

1. 2209 the king

描述:有個聰明的國王,他有個缺點,就是數不到3。現在敵軍壓境,他想要把自己的兒子派出去。他知道他的有些兒子像他一樣聰明,有些卻愚昧無知。而且他清楚的知道,他兒子們的腦力潛能,從-3到3之間的乙個值(因為他只能數到3),他也知道他們取勝的機會和兒子們腦力潛能的冪之和和成比例。現在想要知道最後的戰力之和。

輸入:第一行是有幾個兒子,第二行,冪指數的值,第三行,每個兒子的腦力潛能

輸出:打敗敵軍的最大的可能性,就是冪之和最大值

解法:由於有了冪指數的存在,當為偶數時,負數能變成正數。當為奇數時,負數就不要加上去。

2.2365 rope

描述:在乙個平面上釘釘子,然後用繩子繞起來,繞起來的形狀是個凸邊形,現在想要計算繩子的長度。

輸入:n釘子的個數,r釘子的半徑,接下來的n行是釘子所在的xy座標,釘子的位置按順時針方向給出,釘子頭沒有重合。

輸出:2位小數,表示的是繩子的長度

解法:由於是個凸邊形,且又是順時針給出的座標,所以可以兩兩計算點與點的距離。然後加上釘子的周長就是繩子的長度。

3.1298 the hardest problem ever(中文題見poj3749)

描述:為了保障羅馬帝國檔案的利益,每個字母都通過右移5位得到加密後的字母。

輸入:輸入均為大寫字母,每個輸入為:

以start為第一行

加密後的檔案

以end為最後一行

最後以endofinput結束輸入

輸出:加密前的檔案

解法:字母題最大的技巧就是輸入字母-'a',能得到該字母對於a的乙個位移。加密後的陣列為,a[26]=[v ,w ,x ,y...s, t ,u ],那麼'a'-a'=0,a[0]='v',得到加密後的字母,遇到空格就直接吐出去。

4.3749 破譯密碼同上

3800和3983都是有bug的題。。。

5.3438 look and say

描述:122344111 可以描述為1個1,,2個2,1個3,2個4,3個1,這串數字連起來就是1122132431,1111111111就是10個1,也就是101

輸入:n代表有幾個case,接下來n行就是數字

輸出:按照上述規則得到的數字

解法:讀入輸入,如果這個數字和前乙個相同,cnt+=1,如果不一樣,那麼就輸出cnt和前乙個數字,cnt=1,最後不要忘記輸出最後的數字

6.3589 number-guessing game

描述:就是大家以前玩過的猜數遊戲,如果正確的數字是5204,而猜的數字是4902,那麼0的位置和數字都對,那麼就是有1個對了,1a,2和4都是正確的數字,但是在錯誤的位置上,所以是2b,整個結果就是1a2b

輸入:t代表test case的個數,接下來t行就是正確的數字和猜測的數字

輸出:正確的和錯誤的結果之前的差別,用*a*b這樣的格式表示

解法:直接對比得出結果即可

7.1552 doubles

描述:給出2~15個數字,得到這組數字之後,找出有多少組數字有2倍關係,比如1 4 3 2 9 7 18 22,1和2,2和4.9和18都有2倍關係,所以是3

輸入:每行有一組數字,個數在2~15個,最大值不超過99,0代表每行結束,-1代表輸入結束

輸出:有幾組2倍關係的數字

解法:1)直接暴力,這是一種方法。

2)技巧:由於數字很小,最大為99,可以申請個大小為100的陣列,先全部置為0,讀入輸入,然後將該數字對應的陣列位置置為1,比如1 4 3 2 9 7 18 22,那麼a[1]=1,a[4]=1,a[3]=1...a[22]=1.

然後掃一遍陣列a[1]=1,那麼看看a[2]是否為1 ,為1 的話加1,時間複雜度就由o(n*n)變為o(n)

8.3751 時間日期格式轉換

解法:按格式讀入年月日時分,0點單獨處理,按格式輸出即可

描述:jinjin是個中學生,除了每天的課業外,還需要應付媽媽給她的課外作業。如果她每天學習超過8個小時,那麼她就不開心,如果不開心的話,那她繼續學習就會越來越不開心。你現在需要判斷她是否不開心以及哪天最不開心。

輸入:n,1<=n<=7,你需要分析的天數。接下來的n行有2個數字,分別代表學校的作業和課外的作業。0代表輸入結束

輸出:0代表jinjin沒有不開心,如果有不開心的話,輸出最不開心的那一天

解法:下面有**,自己看

10.3518 prime gap

描述:兩個質數之間的數字就是prime gap,給出乙個數字k,希望在prime gap包含數字k,然後給出這個gap的長度。

輸入:數字n,在1~1299709之間

輸出:gap的長度

解法:直接暴力,前乙個質數也可以試試申請個1300000大小的陣列(不知道記憶體會不會爆),然後像第7題那樣做

poj入門水題整理7

1.3507 judging olympia 解法 就是求平均數 2.3325 icpc score totalizer software 解法 就是去掉乙個最高分去掉乙個最低分求平均值 3.2013 symmetric order 描述 原先的系統是將一串人名以長度公升序輸出,現在老闆希望能夠以對...

poj入門水題8

1.2141 message decowding 解釋 又是字母翻譯題,輸入的第一行是小寫字母代表的是a z分別代表的是什麼字母,第二行是要翻譯的話,輸出翻譯的話的長度和第二行一樣。解法 前面有寫過,用陣列儲存對應字母,然後輸出。tricks 注意大寫字母的處理,我處理的方式是 找出大小寫之間的關係...

POJ 水題若干

poj 3176 cow bowling 這道題可以算是dp入門吧。可以用乙個二維陣列從下向上來搜尋從而得到最大值。優化之後可以直接用一維陣列來存。ps 用一維的時候要好好想想具體應該怎麼存,還是有技巧的 include include include includeusing namespace ...