SHELTER ZONE | Coder 語言認證
Difficulty: 簡單
https://github.com/SHELTER-ZONE/Coder_Cert
Question
不久之前,邪惡的綠茶大魔王將城堡裡一間刻有藍黃蛇形紋的殿堂鎖起來了。 而殿堂的門上有10道鎖,貝利的好朋友——善良小兔和小貓發現這些鎖是有一定規律的。 端詳之際,貝利看見門下有10組若隱若現的數字,他們覺得這些數字是解開鎖的線索,便轉身向守衛求助。 年老的烏龜守衛印證了貝利的猜想,它幫助貝利推算出了鎖的邏輯,並將它們寫在一張紙上。它告訴貝利,在這10個鎖中,只有前5個鎖會在給錯密鑰時發出紅色的光芒,而後5個則不會有任何動靜。 拿著老守衛給他的紙,貝利鑽研了幾天後仍束手無策,你能幫助他進入大殿嗎?
Description
老守衛給出的代碼中寫入了所有鎖的資料與內部方法,而你只需要幫助貝利找出每個鎖的解鎖密鑰就好。 LockSolver這個類別當中存有開鎖的內部邏輯,你必須將LockSolver實例化之後才能使用。 你需要寫出一個solve函數,用於計算鎖的解鎖密鑰。run方法與solve函數的關係就好比鎖頭與鑰匙,把solve函數傳入run方法之後,run方法將會使用solve函數來計算出每個鎖的密鑰,前5組鎖會有錯誤提示。 當你確認十組密鑰都沒錯的時候,將伺服器的創立日期20180627(請使用字串型態)傳入getPassword方法並呼叫,它將會回傳一組最終密鑰,得到該密鑰後去【已刪除頻道】驗證你的答案。
為了能找出每個鎖的解鎖密鑰,你必須依照下面的邏輯撰寫solve函數:
將token的每個數字相加後,記錄結果。
將token的第一個數字與倒數第二個數字相加後,記錄結果。
呼叫encrypt方法,傳入整數形態的原始token後,記錄得到的結果。
將以上(1,2,3)步驟得到的結果全部相加之後,這將會是你的答案。
如果第4步驟得出的答案超過674361,你必須將它減上78763。
以字串型態回傳運算出的結果。
執行LockSolver的run方法,傳入你完成的solve函數,沒有出現錯誤提示之後再使用getPassword方法就能得到最終密鑰了。(記得先將LockSolver實例化)
Input Format
The first line is a string of digit, where the minimum length is 2.
Constraints
Output Format
Output an encrypted string which will be tested on Coder Verification Zone.
Sample Inputs:
Last updated