pku 2159 解題報告

2022-04-08 16:54:33 字數 662 閱讀 8233

很難看懂的題,單純地以它的sample去寫就是完全看錯題目了

查詢了網上的解題報告,發現跟密碼學有關,acm需要的知識果然是百科的

關鍵在於用這種加密方法加密後,密文和原文長度相同,字母出現的種類數量相同,每種字母出現的概率(次數)相同。

code

#include 

<

iostream

>

#include 

<

string

>

using

namespace

std;

intpe[

30],ps[

30],pp[

150];

intmain()

for(i =0

;i <

26;i++)

for(i =0

;i <=

len 

&&pp[i] ==0

;i++

);if

(i >

len)

cout 

<<

"yes

"<<

endl;

else

cout 

<

"<<

endl;

}return0;

}

POJ 2159 解題報告

這道題中original中不同的字母會首先對映到別的字母,然後任意排列。所以只需要有沒有這樣的對映存在就好,不必把排列也確定下來。做法是統計每個字母出現的次數,然後將按照從小到大排序,一一對比原排列和加密後的,看是否有不同。如果沒有,說明存在這樣的對映 對比本身就是一種對映 thestoryofsn...

PKU 1065,1548,3636解題報告

這幾題的思想和方法都是一樣的,破一題可破三題,首先1065,題意說有很多stick,每個stick都有長度l和重量w,一台機器需要處理這些stick,首先第一條被處理的機器就需要一次setup time,接下來下根木棍的長度l和w都大於等於前面的木棍的話,那麼就不需要增加setup time,否者需...

PKU 1086解題報告

這道提很多人說是最短路徑問題,可是我認為,用最短路的演算法不穩定,及時間複雜度不缺定。題意是關於換錢的問題,多種貨幣,換來換去,最後還是那種錢,但是錢卻多了。換錢法則是 自己的錢 減去 稅費後的錢乘以匯率。我用的是搜尋方法。中慢慢解釋。1 23 include 45 include 67 inclu...