回分類題庫
z025: SpecialJudge
關鍵字: npsc 2017模擬試題

測資點 : 1 | Time Limit : 10000 ms | Memory Limit : 128000 KB
Accepted : 4 Times / 4 Users | Submit : 14 Times / 4 Users | Accepted rate : 100%
題目加入時間 : 2018-10-04 11:31

Content: 简体中文

你有過網際網路程式設計賽,俗稱NPSC賽嗎? 啊不對,你已經在了。 有時候NPSC會有些題的答案不只組,所以常常會需要寫個程式來幫忙判斷。 例如,讓浮點數的評分可以容許的計算誤差,不是純粹的字串對,這樣我們可以讓 0.9999999999999當作1.0。或是在有些賽中,對於些分隔字元的使採取較於不嚴格的標準,例如說題規定要字元隔開,但參賽者寫成字元隔開,那也算對。可惜NPSC採嚴格標準。為簡化題,我們定義分隔字元只有兩種,詳細字元請參考 Input的說明。 為了便我們明年有這種評分系統,現在要請你寫個。

般來說,我們會先分隔字元把所有參賽者的輸出切開,這樣會變成段。舉例來說 “a bb c”會被切成“a”, “bb”, “c”,三組字串。接著把裁判的答案也⽤⼀樣的式切 開。如此來,我們會得到兩個字串陣列,再把這兩個字串陣列⼀⼀對應的字串拿出來對即可。

接下來,我們要來實作對的式,如果發現浮點數要特別處理對。先我們先定義些名詞:
數字:字元‘0’到‘9’
數字字串:只有數字的字串,不能是空字串。 
浮點數:開頭可以帶有個正負號,再由數字字串組成。並可以帶有數點. ’數點可以位於這串數字的任何位置(包含最前或最後),並把這串數字切成兩段(第段或第段可能爲空字串)。緊接著也可以接上科學記號的部分。科學記號的部分會是由個字元‘e’或‘E’開始,接著可以接上個正負號,再接上個數字字串。
舉例來說“.2”,“1.”,“+10.e-10”都是浮點數。

• 整數:開頭可以帶有個正負號,再接上數字字串組成。

為簡化題,我們先不考慮C99/C11有定義的16進位整數跟16進位浮點數,以及INF,NaN 等特殊數值。

對兩個字串時,如果裁判的字串是浮點數但整數,且參賽者的答案是整數或浮點數時,則採浮點數判斷。在其他情況都採純粹的字串對。於實際浮點數誤差的部分,由於有太多邊界情況,且你應該會抱怨你已經寫太多程式碼了,所以我們就簡化掉吧。你的程式在解析後,需要對每對字串依序輸出你得到的是哪兩個字串,以及他們適對法(字串對或是浮點數對)。如果切出來的字串數量不相同,你則需要在輸出到該對的時候,在缺少的那邊做標。詳細的輸出請參考Output的說明。

Input:

測試資料的第⼀⾏會有兩個整數N,M,分別表參賽者的輸出有幾,以及裁判的輸出有幾 接下來N是參賽者的輸出,緊接著M是裁判的輸出

保證參賽者跟裁判的輸出分別不超過2000個字元(包含換字元)
保證所有字元只會有以下幾種:換字元‘\n’(ASCII10)、空字元‘ ’(ASCII32)、 正號‘+’(ASCII43)、負號‘-’(ASCII45)數點‘.’ (ASCII46)、數字‘0’到‘9’ 以及英⽂⼤⼩寫字
為簡化題,保證參賽者跟裁判的輸出最後個字元都會是換字元

Output:

假設參賽者的輸出切出n個字串a1,a2,...,an裁判的輸出切出m個字串b1,b2,...,bm, 則總共輸出max(n,m)i輸出aibi以及對的式,之間都⽤⼀個空隔開。如果是字串對則輸出“str”(不含引號),如果是浮點數對則輸出“float”(不含引號)。 如果aibi有缺少,則缺少的那輸出“<missing>” (不含引號)。另外,如果有任何⼀⽅缺少,則定使對法。

Sample Input:help

若題目沒有特別說明,則應該以多測資的方式讀取,若不知如何讀取請參考 a001 的範例程式。
3 15
IamStr
1 2  3  4 5 6  7 8 9  10 11
12          13        14 15
0.0
1.1
+2.2
-3.
+.4
+5.e+5
 -.6E-6
StringBegin
8
+
.
-.
+.e+12
.e-13
+14.14e14.14

Sample Output :

IamStr 0.0 str
1 1.1 float
2 +2.2 float
3 -3. float
4 +.4 float
5 +5.e+5 float
6 -.6E-6 float
7 StringBegin str
8 8 str
9 + str
10 . str
11 -. str
12 +.e+12 str
13 .e-13 str
14 +14.14e14.14 str
15 <missing> str

Hint :

Author :

npsc 2017模擬試題 (管理員:Chang)

  Solve it!   Status Forum