每次拿到周報都會稍微瞄一眼,這個主題吸引了我!
2015年12月18日 星期五
2015年12月4日 星期五
d057:11494 - Queen (36)
d057: 11494 - Queen (36)
更新時間:2016/12/22
內容:
西洋棋中有幾個子的走法滿特別的,其中一個就是皇后。她可以循垂直、水平、或對角線的方向隨她走幾格,如下圖 (黑點表示皇后可以一步走到的格子):
西洋棋大師 Kary Gasparov 提出了一新的問題:在標準的西洋棋空棋盤 (8 x 8 棋盤) 上擺一個皇后,它要走幾步才能走到某個特定的格子?Kary 已經找到了某些情況的解,但有些情況他卻解不出來。因此他請你幫他寫一個程式來解這個問題。
輸入說明:
輸入檔包含了好幾筆測試資料。每筆測試資料只有一行,其中含有整數 X1, Y1, X2 及 Y2 (1 ≤ X1, Y1, X2, Y2 ≤ 8)。皇后從座標 (X1, Y1) 的格子開始,必須在座標 (X2, Y2) 的格子結束。在棋盤中的行由左至右編號為 1 到 8,列則由上至下編號為 1 到 8。位於第 X 列第 Y 行的格子其座標為 (X, Y)。 輸入的結尾以四個由空白隔開的 0 來表示。
輸出說明:
對於每筆測試你的程式要印出一行,該行含有一個整數,表示皇后要走到新的位置至少需要幾步。
範例輸入:
4 4 6 2
3 5 3 5
5 5 4 3
0 0 0 0
範例輸出:
1
0
2
提示:
背景知識:
迴圈
想一想,再看解答~
d070:文文的求婚--續集 (0 尾版) (35)
d070: 文文的求婚--續集 (0 尾版) (35)
更新時間:2016/12/22
內容:
承 a004,珊珊終於學成歸國了,文文的考驗時刻也到了。走出了迎客大廳,珊珊問:「What type of year was I born in?」文文很有自信的回答:「閏年!」可是珊珊卻說:「No, It was a LEAP YEAR!」看來文文要娶到珊珊,還得先把英文練一練。
輸入說明:
輸入的每一行有一個正整數 y,代表珊珊生日的西元年份。輸入的最後一行有一個 0,代表輸入的結束,這個數字請勿做任何處理。
輸出說明:
對於所輸入的每個 y,要各別輸出一行。若 y 是閏年,請於該行輸出「a leap year」,否則請輸出「a normal year」。
範例輸入:
1992
1993
1900
2000
0
範例輸出:
a leap year
a normal year
a normal year
a leap year
提示:
背景知識:
迴圈
想一想,再看解答~
d126:一、牧场围栏 (34)
d126: 一、牧场围栏 (34)
更新時間:2016/12/22
內容:
Z先生是一个大牧场主,他饲养的奶牛每年都源源不断地运往世界各地,我们的故事也由此产生了……
Z先生有一个矩形牧场,它的长和宽分别用 a 和 b (单位:米)表示,现在需要再牧场四周修建围栏,请编一个程序计算牧场的周长以确定用料的多少。
輸入說明:
输入档有多组数据,每组数据占一行,分别为 a 和 b ,以一个空格隔开。a 和 b 均为不超过1000的正整数。
輸出說明:
输出牧场的周长。
範例輸入:
4 3
範例輸出:
14
繁體中文版本:
內容:
Z先生是一個大牧場主,他飼養的奶牛每年都源源不斷地運往世界各地,我們的故事也由此產生了......
Z先生有一個矩形牧場,它的長與寬分別用 a 和 b (單位:公尺)表示,現在需要再牧場四周修建圍欄,請編一個程序計算牧場的周長以確定用料的多少。
輸入說明:
輸入檔有多組數據,每組數據佔一行,分別為 a 和 b ,以一個空格格開。a 和 b 均不超過 1000 的正整數。
輸出說明:
輸出牧場的周長。
範例輸入:
4 3
範例輸出:
14
想一想,再看解答~
d053:10970 - Big Chocolate (33)
d053: 10970 - Big Chocolate (33)
更新時間:2016/12/22
內容:
Mohammad 最近去瑞士。因為他很愛他的朋友們,他決定要買巧克力請他們,但是由於這麼高級的巧克力很貴 (你也知道Mohammad 有點小氣!),他只買得起一片巧克力,很大的一片巧克力 (大到圖 1 也看不到全部) 來請他的朋友們。現在,他要給他的朋友每人一小塊,因為他相信人生而平等,他要每一小塊都一樣大。
這巧克力是由 M×N 個單位大小的正方形所構成的 M×N 矩形。你也可以假設 Mohammad 剛好有 M×N 個朋友等著吃巧克力。切割巧克力時,Mohammad 可以以垂直或水平的方向沿著小方塊間的溝槽切割。切割開來的每一塊也要分別單獨地以同樣的方式來處理,直到他有 M×N 塊單位大小的巧克力為止。不幸的是,由於他很懶,只要能完成工作,他希望切越少刀越好。
你的目標就是要告訴他要把這些巧克力方塊全切開至少需要幾刀。
輸入說明:
輸入有好幾筆測試資料。輸入的每一行有兩個整數 1≤M≤300 表示巧克力有幾列,1≤N≤300 表示巧克力有幾欄。重覆處理輸入直到檔案結束。
輸出說明:
針對每行輸入,你的程式要輸出一行,在該行中含有要把整個巧克力切成單位大小方塊所需要的最少刀數。
範例輸入:
2 2
1 1
1 5
範例輸出:
3
0
4
提示:一星秒殺題
想一想,再看解答~
2015年12月3日 星期四
a003:兩光法師占卜術 (32)
a003: 兩光法師占卜術 (32)
更新時間:2016/12/22
內容:
兩光法師時常替人占卜,由於他算得又快又便宜,因此生意源源不絕,時常大排長龍,他想算得更快一點,因此找了你這位電腦高手幫他用電腦來加快算命的速度。他的占卜規則很簡單,規則是這樣的,輸入一個日期,然後依照下面的公式:
M=月
D=日
S=(M*2+D)%3
得到 S 的值,再依照 S 的值從 0 到 2 分別給與 普通、吉、大吉 等三種不同的運勢。
輸入說明:
月份及日期。
輸出說明:
運勢。
範例輸入:
1 1
1 2
範例輸出:
普通
吉
想一想,再看解答~