1. 程式人生 > >ACM練習訓練——零起點學演算法76——絕對公正的裁判

ACM練習訓練——零起點學演算法76——絕對公正的裁判

Description
大家知道我們學校的OnlineJudge嗎?,你知道他會告訴你什麼呢?
Compiling : 您提交的程式碼正在被編譯。Running : 您的程式正在OJ上執行。Judging : OJ正在檢查您程式的輸出是否正確。Accepted (AC) : 您的程式是正確的,恭喜!Presentation Error (PE) : 雖然您的程式貌似輸出了正確的結果,但是這個結果的格式有點問題。請檢查程式的輸出是否多了或者少了空格(’ ‘)、製表符(’\t’)或者換行符(’\n’)。Wrong Answer (WA) : 輸出結果錯,這個一般認為是演算法有問題。Runtime Error (RE) : 執行時錯誤,這個一般是程式在執行期間執行了非法的操作造成的。以下列出常見的錯誤型別:
1、您的程式想從一些非法的地址空間讀取或向其中寫入內容。一般例如指標、陣列下標越界都會造成這個錯誤的。
2、您的程式試圖訪問一個超出硬體支援範圍的陣列單元。
3、進行了一個非正常的浮點操作。一般是由於一個非正常的浮點數參與了浮點操作所引起的,比如這個數的浮點格式不正確。
4、浮點數除法出現除數為零的異常。
5、在進行整數除法的時候出現了除數為零的異常。
6、棧溢位。一般是由於無限遞迴或者在函式裡使用了太大的陣列變數的原因。
…… 其他錯誤,包括C++標準庫/STL執行時庫錯誤等,這裡不再舉例。
Time Limit Exceeded (TLE) : 您的程式執行的時間已經超出了這個題目的時間限制。Memory Limit Exceeded (MLE) : 您的程式執行的記憶體已經超出了這個題目的記憶體限制。Output Limit Exceeded (OLE) : 您的程式輸出內容太多,超過了這個題目的輸出限制。Compilation Error (CE) : 您的程式語法有問題,編譯器無法編譯。具體的出錯資訊可以點選連結察看。
Out Of Contest Time : 超出比賽時間,這個資訊只有在比賽的時候才會出現。
現在,要求如果輸入一個縮寫短語,要求輸出原型,具體看樣例。
Input
The first line is integer T(T <= 20), the number of test cash case
第一行為一個數T(T<=20),為測試資料的數目
接下來,有T行分別輸入一個縮寫(縮寫只包括AC,PE,WA,RE,TLE,MLE,OLE,CE)
Output
對於每組測試資料輸出一行為著這縮寫的原型
Sample Input
8
AC
PE
WA
RE
TLE
MLE
OLE
CE
Sample Output
Accepted
Presentation Error
Wrong Answer
Runtime Error
Time Limit Exceeded
Memory Limit Exceeded
Output Limit Exceeded
Compilation Error
思路:根據題意 判斷輸入字元的開頭就可達到分辨的目的,故可憑此簡化一下程式碼
測試程式碼一:

#include<stdio.h>
#include<string.h>
#define AC printf("Accepted")
#define PE printf("Presentation Error")
#define WA printf("Wrong Answer")
#define RE printf("Runtime Error")
#define TLE printf("Time Limit Exceeded")
#define MLE printf("Memory Limit Exceeded")
#define OLE printf("Output Limit Exceeded")
#define CE printf("Compilation Error") int main() { int n; char str[3]; scanf("%d", &n); getchar(); //過濾掉換行符 while (n--) { gets(str); if (*str == 'A') AC; if (*str == 'P') PE; if (*str == 'W') WA; if (*str == 'R') RE; if (*str
== 'T') TLE; if (*str == 'M') MLE; if (*str == 'O') OLE; if (*str == 'C') CE; printf("\n"); } return 0; }

執行結果:
這裡寫圖片描述

執行結果: Accepted