題目:求包含四點的最小圓。
1.由in.txt 文字檔中讀入四點坐標。
2.將四點坐標畫在表單中。
3.求包含這四點的最小圓,將它畫出來。
4.將求得的圓心及半徑,輸出到out.txt中。
2010年3月15日 星期一
2010年3月5日 星期五
2010/03/08 子集合
輸入一變數N,再輸入N 個數字成為一個含有N 個數的集合A,
然後輸出所有這個A 集合的子集合。
Ex: N=3, A { 1, 2, 3 }
ANS: { } <--- 空集合
{ 1 },{ 2 },{ 3 }
{ 1, 2 },{ 1, 3 },{ 2, 3 }
{ 1, 2, 3 }
然後輸出所有這個A 集合的子集合。
Ex: N=3, A { 1, 2, 3 }
ANS: { } <--- 空集合
{ 1 },{ 2 },{ 3 }
{ 1, 2 },{ 1, 3 },{ 2, 3 }
{ 1, 2, 3 }
2010/03/03 羅馬數字
設計一程式可將最長含10個字元的字串讀入, 每一個字元均代表某一數值的羅馬數表示法。將讀入之羅馬數及其相對應之阿拉伯數一起列印出來。
【壹】 羅馬數和字元之對應表如下:
M 1000
D 500
C 100
L 50
X 10
V 5
I 1
你的輸入有下列幾組:
(1) VII
(2) LXXXVII
(3) CCXIX
(4) MCCCLIV
(5) MMDCLXXIII
(6) MCDLXXVI
【壹】 羅馬數和字元之對應表如下:
M 1000
D 500
C 100
L 50
X 10
V 5
I 1
你的輸入有下列幾組:
(1) VII
(2) LXXXVII
(3) CCXIX
(4) MCCCLIV
(5) MMDCLXXIII
(6) MCDLXXVI
2010/03/04 路徑問題 (path)
問 題敘述
在一個古老的舊城市裡,所有的道路皆是單行道。但 因其道路缺乏規劃,故某些單行道所連接之路口可能完全相同且方向一樣。甚至於有單行道其起始路口與終點路口是同一個路口。為了發展該城市之觀光事業,該市 交通局決定重新規劃所有道路。但首要任務則必須先了解各路口之間可以通行之路徑數。請寫一個程式計算任意兩個路口之間有多少種不同的路徑。一個路徑是由一 個(含)以上不重複之單行道所組成(單行道、起始路 口、終點路口皆不可重複,但其餘路口可以重複)。條件限制
- 路口數 n最少為1最多為50,且路口編號由1至n。
- 單行道數量 m最少為1最多為2500。
第一行有兩個整數n 和 m,以一個空白分開。接下來的m行 各有兩個整數,分別代表各單行道之起始及終點路口。
輸出檔格式 (c:\path\output.txt)請以一個 n x n (n行 n列)的矩陣,列出 從路口i至路口j之路徑數,1<= i, j <= n。每一列i均應有n個整數,分別代表路口i至所有其它路口之路徑數。在同一列的數字請以一空白隔開。
輸入範例5 6
1 1
1 2
2 3
4 3
5 4
5 4
輸出範例
1 2 2 0 0
0 0 1 0 0
0 0 0 0 0
0 0 1 0 0
0 0 2 2 0
2010/03/05 消除字串
試寫一程式,以輸入一字串,其長度 (含空白), 最長為81個字元,然後檢驗該語言串中之母音 (A,E,I,O,U,a,e,i,o,u),並將之刪除,且該 些母音之位置由後續之字元向前位移予以佔用而不留下空白,例:輸入
"Mary^Lives^IN^300,^Born^St.,^Chungli,^Taiwan,^R.^O.^C." 其中"^" 表示空一個位置。
經刪除母音後成為 "Mry^Lvs^N^300,^Brn^St.,^Chngl,^Twn,^R.^.^C." ;然後將輸入之字串與刪除母音後之字串同時列印於報表。
測試資料:(請將下列文章存於檔案中,以讀檔案的方式來設計程式)
" He Sells Sea Shells by the Seashore."
" I don't know how to Complete the testing Program."
" The men who spead ill of others will take no
advantage of others in the last."
"Mary^Lives^IN^300,^Born^St.,^Chungli,^Taiwan,^R.^O.^C." 其中"^" 表示空一個位置。
經刪除母音後成為 "Mry^Lvs^N^300,^Brn^St.,^Chngl,^Twn,^R.^.^C." ;然後將輸入之字串與刪除母音後之字串同時列印於報表。
測試資料:(請將下列文章存於檔案中,以讀檔案的方式來設計程式)
" He Sells Sea Shells by the Seashore."
" I don't know how to Complete the testing Program."
" The men who spead ill of others will take no
advantage of others in the last."
2010/03/02 蝸牛爬竿問題(snail)
問題敘述
蝸牛沿著竹竿底部往上爬,繳幾天可以爬到竹竿頂端呢?先看看以下的範例:
一隻蝸牛從6 公尺長的竹竿底部往上爬,已知這隻蝸牛從太陽出來到太岔下山可以往上爬3 公尺,太陽下山後到隔天太陽昇起前是蝸牛的休息時間,在這段休息時間內蝸牛會下滑1 公尺。而且,蝸牛的疲勞系為10 (%),這表示從第二天開始,蝸牛每天都會少爬3 * 10 % = 0.3 公尺。請問蝸牛在第幾天以爬到竹竿頂端呢?
從下表可以看出這隻蝸牛在第三天可以爬到竹竿的頂端。天數起始高度可爬行距離累積高度下滑後高度
1 0.0 3.0 3.0 2.0
2 2.0 2.7 4.7 3.7
3 3.7 2.4 6.1
你的任務是找出蝸牛爬竿的通解,根據下列條件限制算出蝸牛在第幾天時可以順利爬到竹竿頂端或是失敗?
條件限制
1. 竹竿的高度介於6 ~ 100 公尺之間。
2. 第一天可以往上爬行的距離介於0 ~ 100 公尺之間。
3. 休息時下滑距離介於0 ~ 99 公尺之間。
4. 疲勞系數介於0 ~ 99 (%) 之間。
5. 爬行過程㆗如果下滑觸地 (高度<= 0),則判定為失數(Fail)。
輸入檔格式
輸入檔可以是一個或是多個狀況,每行代表一個狀況。每行包含四個正整數 H、U、D 和F 各以一個空白隔開;當H = 0 時代表輸入檔的結束,否則H 代表竹竿的高度,U 代表第一天蝸牛可以爬行的距離,D 代表蝸牛休息時下滑的距離,F 代表疲勞係數。
輸出檔格式
對於每一個測試狀況,輸出檔都要輸出一行判斷蝸牛成功(success)或是失敗(fail),以及這是發生在第幾天,格式如輸出範例。
輸入範例
6 3 1 10
10 2 1 50
12 6 3 10
0 0 0 0
輸出範例
success on day 3
fail on day 3
success on day 5
蝸牛沿著竹竿底部往上爬,繳幾天可以爬到竹竿頂端呢?先看看以下的範例:
一隻蝸牛從6 公尺長的竹竿底部往上爬,已知這隻蝸牛從太陽出來到太岔下山可以往上爬3 公尺,太陽下山後到隔天太陽昇起前是蝸牛的休息時間,在這段休息時間內蝸牛會下滑1 公尺。而且,蝸牛的疲勞系為10 (%),這表示從第二天開始,蝸牛每天都會少爬3 * 10 % = 0.3 公尺。請問蝸牛在第幾天以爬到竹竿頂端呢?
從下表可以看出這隻蝸牛在第三天可以爬到竹竿的頂端。天數起始高度可爬行距離累積高度下滑後高度
1 0.0 3.0 3.0 2.0
2 2.0 2.7 4.7 3.7
3 3.7 2.4 6.1
你的任務是找出蝸牛爬竿的通解,根據下列條件限制算出蝸牛在第幾天時可以順利爬到竹竿頂端或是失敗?
條件限制
1. 竹竿的高度介於6 ~ 100 公尺之間。
2. 第一天可以往上爬行的距離介於0 ~ 100 公尺之間。
3. 休息時下滑距離介於0 ~ 99 公尺之間。
4. 疲勞系數介於0 ~ 99 (%) 之間。
5. 爬行過程㆗如果下滑觸地 (高度<= 0),則判定為失數(Fail)。
輸入檔格式
輸入檔可以是一個或是多個狀況,每行代表一個狀況。每行包含四個正整數 H、U、D 和F 各以一個空白隔開;當H = 0 時代表輸入檔的結束,否則H 代表竹竿的高度,U 代表第一天蝸牛可以爬行的距離,D 代表蝸牛休息時下滑的距離,F 代表疲勞係數。
輸出檔格式
對於每一個測試狀況,輸出檔都要輸出一行判斷蝸牛成功(success)或是失敗(fail),以及這是發生在第幾天,格式如輸出範例。
輸入範例
6 3 1 10
10 2 1 50
12 6 3 10
0 0 0 0
輸出範例
success on day 3
fail on day 3
success on day 5
2010年3月1日 星期一
2010/03/01大數運算
在大多數的程式語言中,一個整數通常只有32位元,就算是使
用無號的整數,仍然最大只能表示232-1。若要表示一個大於232-1的
整數該怎麼辦呢?答案就是採用大數。本題要求寫出一個大數運算的
程式,可以對二個50位數以內的10進制非負整數作乘法或除法的運
算。除法運算時,毋須考慮除數為0的情形,並僅需算出商數。
輸入說明 :
第一行輸入一個字串,表示被乘數或被除數,其為一個50位數
以內的10進制非負整數。
第二行輸入運算符號 * 或 /,分別表示乘法或除法運算。
第三行輸入一個字串,表示乘數或除數,其為一個50位數以內
的10進制非負整數。當執行除法運算時,除數為正整數。
輸出說明 :
印出運算結果。
範例輸入 :
若題目沒有特別說明,則應該以多測資的方式讀取,若不知如何讀取請參考 a001 的範例程式。
12346587987654321
*
98765432123456789
12345678901234567890
/
1234567890
範例輸出 :
1219416097850959788293446112635269
10000000001
訂閱:
文章 (Atom)