8/29練習

a054: 身分證首碼計算機

題目:輸入身分證後九碼,輸出第一碼的所有可能性。
思路:先建立可能性的dictionary,再來計算後九碼的檢查值,最後用10減去(該值餘10)再從字典輸出答案。

a058: 整數分堆

題目:輸入n代表有幾筆資料,再來給予n個整數,將整數以餘3分堆,輸出分堆結果3k//3k+1//3k+2分別有幾個。
思路:直接分堆輸出。
        

a059: 完全平方和

題目:先輸入n表示共n筆資料,每筆資料包含a,b代表範圍,輸出每筆範圍中完全平方數的和。
          例如3~25應輸出4+9+16+25=54 
思路:先用第一個迴圈處理n筆資料,再來尋找範圍之中的完全平方數若+1+1開根號驗證肯定太慢。
          故上下界分別開根號,例如4~25>>2~5,再從2的平方加到5的平方就是答案。而下界需先-1開根號再+1,上界只需開根號。
          (for裡面的上界也+1是因為range只會跑到該值-1,故要加回來),最後依格式輸出答案。

arrow_circle_left home arrow_circle_right