Codebar 程式酒吧

一座輕鬆學習程式的酒吧

0%

題目連結

https://zerojudge.tw/ShowProblem?problemid=a059

解題思路

題目希望我們求出在a、b之間的所有完全平方數總和,理論上要用for迴圈跑從a到b之間的所有數字,檢查他們是否為完全平方數,若是則將他們相加,最後再輸出其總和,但這麼做的話需要在for迴圈裡加上條件判斷。因此我們也可以換種方式思考,若 a ≤ x2 ≤ b ,可知 √a ≤ x ≤ √b ,故只要找出在√a及√b之間的正整數,將他們的平方相加,即為在a、b之間所有完全平方數的和。

閱讀全文 »

題目連結

https://zerojudge.tw/ShowProblem?problemid=a054

建議類題

a020. 身分證檢驗

解題思路

本題的題意相當複雜,簡單來說就是要我們透過檢查碼反推可能的英文字母。
而檢查碼的算法如下:

  1. 將身分證字號中代表出生縣市的英文代號依照附圖的方式轉換成數字。
  2. 將1.的數字的個位數字乘以9倍並加上十位數字。
  3. 將身分證字號的數字部分,由左到右分別乘上8、7、6、5、4、3、2、1、1。
  4. 令s為2.加上3.的和,m為s的個位數,檢查碼c即為10-m。

因此,我們可以將身份證號碼的後9碼用字元陣列儲存,經由運算得到各位相對數字乘積的總和s後,推得檢查碼c,進而依據c值輸出對應的出生縣市。

閱讀全文 »