PTA刷題日誌 2020 1 27

2021-10-02 09:39:33 字數 551 閱讀 5276

第一題:1096 consecutive factors (20分)

類似於數學問題,求最大長度子列乘積,所有子列必須滿足都小於等於sqrt(n),因為sqrt(n)*sqrt(n)=n,所以只需要從2遍歷到sqrt(n)然後逐項相乘,如果成績不能被n整除就放棄迴圈,重新開始。

第二題:1059 prime factors (25分)

類似於上提解法,坑點是特判n=1.

第三題:1039 course list for student (25分)

這個題就相當於乙個排序不難,關鍵是最後乙個測試點會超時,cin對string讀入還是費事,需要取消同步就可以解決的,記得取消同步以後不可以同時使用cin與scanf,以及cout和printf就可以了。

取消同步:std::ios::sync_with_stdio(false);

演算法筆記在這個地方使用的是字串harsh,也是一種解決方法。

第四題:1047 student list for course (25分)

上個可以用的取消同步這裡就不可以了,果然還是需要學習一下字串harsh,技多不壓身。

PTA刷題技巧

作用 刷題的時有時輸入的資料量太大,格式太繁瑣,每次除錯都得自己輸入資料,除錯的20 以上的時間都放在輸入資料上面了,考試黑框框不能複製。include include include include include include include include includeusing name...

刷題 PTA 完全數

pta 7 45 找完數 雲上明月 的程式 1 include2 int isperfect int num 34 intmain 19 20 21 22if exist printf none 23return0 24 2526 int isperfect int num 33 34if fact...

cf刷題日誌

e1.send boxes to alice easy version e2.send boxes to alice hard version easy和hard都沒想出來怎麼貪心。首先對於k 1k 1k1 且k1 k2k 1 k 2 k1 k2 可以顯然得到結論1 把所有數組合為k 1k 1 k1...