切換
舊版
前往
大廳
主題

ZeroJudge - e086: 電腦閱卷 2 解題心得

Not In My Back Yard | 2019-03-04 23:35:40 | 巴幣 2 | 人氣 102

題目連結:


題目大意:
第一列有兩正整數 n 、 m, 代表接下來有 n 列輸入。

這 n 列的每一列有三個字串,第一個字串代表科目的編號,第二個代表科目名稱,第三個則是此科目的標準答案。在這n列輸入結束後,會緊接著另外的 m 列輸入。

此 m 列的每一列有兩個字串,第一個字串代表學生的編號,另外的字串則代表學生的姓名。

而接下來還有 n × m 列的輸入。每列會給定三個字串,第一個字串 S 代表科目編號,第二個字串 S 代表學生編號,最後一個字串則是代表編號為 S 的學生對於編號為 S 的作答。

輸出格式為「學生編號 學生姓名 科目編號 科目名稱  科目分數」。



範例輸入:
2 3
001 eng AAAAA
002 math BBBBBBBBBB
001 Tom
002 Peter
003 David
001 001 AAA=A
001 002 AAABBBCCC=
002 001 CCAAA=A
002 002 AADBBBCCC=DDD
003 001 AAAAA
003 002 BBBBBBBBBB


範例輸出:
001,Tom,001,eng,80
001,Tom,002,math,30
002,Peter,001,eng,60
002,Peter,002,math,30
003,David,001,eng,100
003,David,002,math,100


解題思維:
答案的比較的方法跟上一題一樣(電腦閱卷 1)。但是多了需要處理逼號的問題,可以使用陣列將對應的編號(以及學生姓名和科目名稱)存起來。然後將相應的分數也存起來。

最後輸出時,就是按照編號由小到大輸出。

此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大撥冗討論。

創作回應

相關創作

更多創作