顯示具有 2010/3月 標籤的文章。 顯示所有文章
顯示具有 2010/3月 標籤的文章。 顯示所有文章

2010年3月23日 星期二

竊車問題 (Lostcar)

一位警察發現了一些可疑的機車,為了查明這些可疑的機車是否為失竊機車,他需將這些機車的車號與警政署的失竊機車檔案比對。請寫一程式來幫助這位警察找出哪些是失竊的機車。

條件限制
警察發現的可疑機車不超過20輛。
警政署的失竊機車檔案中最多為100輛機車資料。

輸入檔格式 (c:\lostcar\input.txt)
第一行有兩個整數n和m,中間以一個空白分開。n為發現的可疑機車數目,m為失竊機車檔案中機車的數目。接下來的n行,每行有一可疑機車的車號,車號以六個字元表示。再接下來的m行,則為失竊機車資料,每行有三項資料,各項資料間以一個空白隔開;第一項資料(欄位1~6)為機車車號,第二項(欄位8~13)為該車外觀顏色,第三項(欄位15~20)為該車車主姓名。

輸出檔格式 (c:\lostcar\output.txt)
請依車主姓名的順序(英文字母由A~Z)依序印出找到的失竊機車資料。若無法找到任何失竊機車請印出 “Cannot find!”。

輸入範例
4 6
PIG222
WIN555
SAD321
JOY866
DOG999 RED CHANG
JOY355 BLUE LEE
SAD321 YELLOW WANG
FOX555 WHITE WU
WIN555 BROWN HO
PIG222 BLACK LIN

輸出範例
WIN555 BROWN HO
PIG222 BLACK LIN
SAD321 YELLOW WANG

2010年3月15日 星期一

2010/3/15包含四點的最小圓

題目:求包含四點的最小圓。
1.由in.txt 文字檔中讀入四點坐標。
2.將四點坐標畫在表單中。
3.求包含這四點的最小圓,將它畫出來。
4.將求得的圓心及半徑,輸出到out.txt中。

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 }

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

2010/03/04 路徑問題 (path)

問 題敘述
在一個古老的舊城市裡,所有的道路皆是單行道。但 因其道路缺乏規劃,故某些單行道所連接之路口可能完全相同且方向一樣。甚至於有單行道其起始路口與終點路口是同一個路口。為了發展該城市之觀光事業,該市 交通局決定重新規劃所有道路。但首要任務則必須先了解各路口之間可以通行之路徑數。請寫一個程式計算任意兩個路口之間有多少種不同的路徑。一個路徑是由一 個(含)以上不重複之單行道所組成(單行道、起始路 口、終點路口皆不可重複,但其餘路口可以重複)。
條件限制
  1. 路口數
  2. n最少為1最多為50,且路口編號由1至n。
  3. 單行道數量
  4. m最少為1最多為2500。
輸入檔格式 (c:\path\input.txt)
第一行有兩個整數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."

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