2011年6月24日 星期五

任意進位轉任意進位

輸入說明:

輸入可能有無限多行
輸入 a,b,c 。a為原進位,b為目標進位,c為原數 (1 ≦ a ≦ 36)&(1 ≦ b ≦ 36)

輸入範例:
10 2 81
8 3 52
9 5 97
2 6 100
6 8 64
8 9 85
9 15 69
9 16 168
8 32 648
2 36 1000
16 10 4EB

輸出範例:
1010001
1120
323
4
50
76
43
8F
D8
8
1259

任意數進位

輸入說明:

輸入可能有無限多行
輸入 a,b 兩數, 請輸出 b的a進位。 (1 ≦ a ≦ 36)

輸入範例:
2 81
3 52
5 97
6 100
8 64
9 85
15 69
16 168
32 648
36 1000

輸出範例:
1010001
1221
342
244
100
104
49
A8
K8
RS

2011年6月20日 星期一

題4 剩下的最大數

有一個N位數的正整數A,請問刪除其中K個連續或不連續的位數(K
輸入說明:
奇樹列有兩個以空白格開的正整數N以及K( 1<=K<N<=1000000 )。偶數列會有一個長度為N的正整數A

輸出說明:
請輸出B的最大可能值

輸入範例:
6 4
268574
5 2
41235

輸出範例:
87
435

題5 自動賣票機找零問題

某城市的捷運車票共有20、25、30、35、40、45六種,而可投入的錢幣共有1、5、10、50、100元五種。
請計算可能的投幣方式與需找回的零錢金額。
(當所投入的金額超過票價後,多投的錢幣會直接吐還給使用者,所以,多投的部分不用計算。例如,票價20元,當依序投入7個1元、3個5元後,再來投入任何錢幣都會直接先吐還使用者。直接先吐還的這部分,不用寫入程式。)
輸入:in.txt
20
輸出:out.txt
投入20個1元,找回0元。
投入15個1元 1個5元,找回0元。
投入10個1元 2個5元,找回0元。
投入5個1元 3個5元,找回0元。

投入1個50元,找回30元。
投入1個100元,找回80元。

題3 數列的公差或等比

在數列中有等差數列以及等比數列,已知道數列的前四項,請判斷出此數列是等差或者等比數列,並求出公差或等比。

輸入說明:
第一行是數列的數目t(0<= t <=10) 。以下每行均包含四個以空白格開的整數,表示數列的前四項。數列的前四項均為不大於10000的自然數,等比數列的比值也是自然樹。

輸出說明:
對數列的每個數列,輸出兩個欄位,欄位與欄位之間以一個空白隔開,若是等差數列則第一欄輸出A,若為等比數列則第一欄輸出G;第二欄則根據數列的判斷結果,輸出其公差或是等比。

輸入範例:
2
2 4 6 8
2 4 8 16
輸出範例:
A 2
G 2

題2 數字金額轉換國字

請將數字金額輸換成國字,金額從0到100000000的整數(壹億)。
輸入:in.txt
12340
1001
輸出:out.txt
新台幣壹萬貳仟參佰肆拾元整
新台幣壹仟零壹元整

題1 大樂透中的數學1-完全包牌法

大樂透是從1到49號中,選出6個號碼為一組牌。例如,你可以選擇1,3,5,7,9,11。
從檔案中讀出玩家喜歡的號碼有10個,請輸出這10個號碼組合出所有可能的牌。
在輸出的檔案最後,輸出共有幾組牌。
輸入:in.txt
10,22,31,5,6,11,13,42,1,9

輸出:out.txt
10,22,31,5,6,11
10,22,31,5,6,13
10,22,31,5,6,42
10,22,31,5,6,1
10,22,31,5,6,9
...
共有x組牌

(題外話,完全包牌法是不可行的,下次再來試試所謂的包中3的聰明包牌法,另外還有什麼天才包牌法)

2011年6月9日 星期四

文字抄寫

內容 : 
從機器中,不斷地出現4個英文字母的單字,現在要你抄寫下來,
倘若這個單字已經出現過,則會使用編號上的號碼直接書寫
倘若這個單字沒有出現過,則會賦予單字一個新的號碼


每組新的測資,代表不同事件,請勿將其納入新的號碼
輸入說明 :
每組輸入的第一行 , 有一個數字 N (1≦N≦105),接下來會有瘋狂科學家講出的N行單字,每行由小寫字母a到z所構成的4字單字.

輸出說明 :
若這個字串之前已經出現過,則輸出號碼,若沒有則輸出它將被編寫的號碼.
範例輸入 :
eine 
isis 
zwei 
drei 
zwei
範例輸出 :
New! 1 
New! 2 
New! 3 
New! 4 
Old! 3

http://chscvb.blogspot.com/2010/09/blog-post_11.html

解碼器

內容 :


  在密碼學裡面有一種很簡單的加密方式,就是把明碼的每個字元加上某一個整數K而得到密碼的字元(明碼及密碼字元一定都在ASCII碼中可列印的範圍內)。例如若K=2,那麼apple經過加密後就變成crrng了。解密則是反過來做。這個問題是給你一個密碼字串,請你依照上述的解密方式輸出明碼。


至於在本任務中K到底是多少,請自行參照Sample Input及Sample Output推出來吧!相當簡單的。


輸入說明 :
每筆測試資料一列。每列有1個字串,就是需要解密的明碼。
輸出說明 :
對每一測試資料,請輸出解密後的密碼。
範例輸入 :


1JKJ'pz'{ol'{yhklthyr'vm'{ol'Jvu{yvs'Kh{h'Jvywvyh{pvu5
1PIT'pz'h'{yhklthyr'vm'{ol'Pu{lyuh{pvuhs'I|zpulzz'Thjopul'Jvywvyh{pvu5


範例輸出 :


*CDC is the trademark of the Control Data Corporation.
*IBM is a trademark of the International Business Machine Corporation.

竊車問題 (Lostcar)



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


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


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


輸出檔格式 
請依車牌的順序(英文字母由A~Z)依序印出找到的失竊機車資料。


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


輸出範例


PIG222 BLACK LIN 
SAD321 YELLOW WANG
WIN555 BROWN HO 

最長共同子序列



給2 個字串,請你輸出他們的最長共同子序列(longest common subsequence)的長度。
也就是說,在這兩個字串各自所有的子序列之中,內容相同而且長度最長的那個子序列。舉
例來說有兩個字串abcdgh 和aedfhr,它們的最長共同子序列為adh,長度為3。
輸入說明:
輸入檔含有多筆測試資料,每筆測試資料為二行字串,每行最多有 1000 個字元。
輸出說明:
對輸入的每筆測試資料,輸出它們最長共同子序列的長度。
輸入範例:
a1b2c3d4e
zz1yy2xx3ww4vv
abcdgh
aedfhr
輸出範例:
4
3

字串處理

給一個字串,請寫一個程式,計算此字串中,英文字元有幾個?
輸入說明:
輸入檔第一行表示有幾組測試資料,第二行開始的每一行即為一筆測試資料,每行最多
有1000 個字元。
輸出說明:
對每一筆測試資料,輸出字串英文字元的個數。
輸入範例:
2
abc123def456
133adfag3428a2fwqgq2
輸出範例:
6
11

2011年6月1日 星期三

自動販賣機

自動販賣機的物品價格為10-25元,銅板種類1,5,10,50四種,讀取"in.txt"物品價格,計算可能的投幣方式與需找回的零錢。
輸入範例:

11
輸出範例: 

1*11=11 找0元
1*6+5*1=11 找0元
1*1+5*2=11 找0元
5*3=15 找4元
1*1+10*1=11 找0元
5*1+10*1=15 找4元
10*2=20 找9元
50*1=50 找39元
出自 程式設計隊訓練教材