題目連結
題意:
測資每次輸入一個數字,將數字加上其反轉的值後,觀察結果是不是palindrome(從左而右或右到左是否相同,亦即原數是否等於其反轉的數),若否,重複前面動作直到求出palindrome,最後印出進行次數(相加)與最終結果
解法:
先寫出反轉的方法,遞迴進行,每次判斷反轉前後是否相等,若否則相加繼續判斷,題目有先決條件:
1.必定有解
2.遞迴次數小於1000(其實我一開始擔心TLE,因為反轉的寫法可能不精簡,但卻發生另一件事..)
3. 結果不超過4,294,967,295(超過int的上限,本來出現WA還想不出理由,最後改成long解決)
程式(Java):
題意:
測資每次輸入一個數字,將數字加上其反轉的值後,觀察結果是不是palindrome(從左而右或右到左是否相同,亦即原數是否等於其反轉的數),若否,重複前面動作直到求出palindrome,最後印出進行次數(相加)與最終結果
解法:
先寫出反轉的方法,遞迴進行,每次判斷反轉前後是否相等,若否則相加繼續判斷,題目有先決條件:
1.必定有解
2.遞迴次數小於1000(其實我一開始擔心TLE,因為反轉的寫法可能不精簡,但卻發生另一件事..)
3. 結果不超過4,294,967,295(超過int的上限,本來出現WA還想不出理由,最後改成long解決)
程式(Java):
留言
張貼留言