青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 33,  comments - 33,  trackbacks - 0

前做了一個簡單實用的本地程序評測機,用作學校某比賽的評測(該比賽不是在線比賽,而是做完后自己發代碼然后我們自己手動萍。。囧),該程序是一個本地評測系統,用戶輸入單文件代碼或可執行程序,和輸入數據和正確的輸出數據,系統根據這些數據對代碼或程序進行評測。
評測結果有:
Accept   //通過
Compile Error  //編譯錯誤
Worng Answer  //答案錯誤
Time Limit Exceeded //超時
Memory Limit Exceeded //超內存
Presentation Error //輸出格式錯誤
System Error  //系統錯誤
下面簡單聊聊實現的過程:

一、實現細節
1.1 編譯功能
類:CompilerHelper
函數:static int compile(const std::string& sSourceFile, //源文件路徑
 const std::string& sOutputFile);//執行代碼路徑
流程如下:
生成編譯器輸入參數(編譯器路徑、文件路徑、包含路徑、庫路徑)在config.txt定義
-> 重定向in和out -> 創建進程編譯->等待完畢后返回執行結果

1.2 評測功能
需要獲得 執行代碼路徑、輸入文件、期待輸出的答案文件、本次執行程序的實際輸出文件、
時間、內存、是不是SPJ

監視器線程: 監視進程的執行時間、使用內存的信息
流程:
輸入信息-> 根據輸入文件產生輸入參數->創建進程->監視器開啟->等待直到結束
->返回!=0?"System Error" : 記錄本次執行所需要的時間和內存->是否SPJ?啟動spj比較器
:啟動文件比較器

啟動文件比較器: 比較實際的和答案的差異,完全相同的AC,只存在空格的差異為PE,其他情況的WA
spj比較器: 使用自己編寫的spj程序對兩個文件評測

1.3 測試套件
實現多個測試用例(多個輸入文件和輸出文件)
可以通過配置文件進行配置
配置文件如下:
[TestSuite]
TestCaseCount=19 //用例個數
IsSpecialJudge=0 //是否SPJ
CodeFile=main.cpp //源文件,可設為NULL
SPJExe=lowSPJ.exe //SPJ路徑
ExecuteFile=NULL //如設置了就不啟用編譯功能
[TestCase_n]  //第n個用例
TimeLimit=1000  //時間限制
MemoryLimit=65535 //內存限制(KB)
StdInputFile=data1.txt //輸入文件
AnswerFile=output1.txt //答案
每個用例將new一個judgerunner實例

二、依賴庫
個人開發的mtLibrary中的Common、Thread、Process庫模塊

三、運行效果
配置文件示例
[TestSuite]
TestCaseCount=19
IsSpecialJudge=0
CodeFile=main.cpp
SPJExe=NULL
[TestCase_1]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data1.txt
AnswerFile=output1.txt
[TestCase_2]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data2.txt
AnswerFile=output2.txt
[TestCase_3]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data3.txt
AnswerFile=output3.txt
[TestCase_4]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data4.txt
AnswerFile=output4.txt
[TestCase_5]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data5.txt
AnswerFile=output5.txt
[TestCase_6]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data6.txt
AnswerFile=output6.txt
[TestCase_7]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data7.txt
AnswerFile=output7.txt
[TestCase_8]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data8.txt
AnswerFile=output8.txt
[TestCase_9]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data9.txt
AnswerFile=output9.txt
[TestCase_10]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data10.txt
AnswerFile=output10.txt
[TestCase_11]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data11.txt
AnswerFile=output11.txt
[TestCase_12]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data12.txt
AnswerFile=output12.txt
[TestCase_13]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data13.txt
AnswerFile=output13.txt
[TestCase_14]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data14.txt
AnswerFile=output14.txt
[TestCase_15]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data15.txt
AnswerFile=output15.txt
[TestCase_16]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data16.txt
AnswerFile=output16.txt
[TestCase_17]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data17.txt
AnswerFile=output17.txt
[TestCase_18]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data18.txt
AnswerFile=output18.txt
[TestCase_19]
TimeLimit=1000
MemoryLimit=65535
StdInputFile=data19.txt
AnswerFile=output19.txt

這是運行的效果,運行后結果將保存帶JudgeResult.txt中


posted on 2012-03-02 20:30 bennycen 閱讀(371) 評論(1)  編輯 收藏 引用

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品影院| 一本色道久久综合一区| 久久精品导航| 国内精品嫩模av私拍在线观看| 午夜精品久久久久| 亚洲欧美中文另类| 国产一区欧美| 蜜臀av在线播放一区二区三区| 久久九九精品| 日韩视频永久免费观看| 日韩一级精品| 国产欧美日韩视频在线观看| 久久综合中文| 欧美日韩国产在线播放| 亚洲欧美久久久| 久久精品国语| 日韩午夜在线| 午夜视频在线观看一区二区三区 | 亚洲综合视频网| 国产综合欧美在线看| 亚洲高清不卡在线| 欧美精品在线极品| 久久久999| 欧美精品v国产精品v日韩精品| 亚洲天堂第二页| 久久久亚洲欧洲日产国码αv | 精品99一区二区三区| 亚洲国产精品第一区二区| 欧美性猛交99久久久久99按摩| 久久久久久高潮国产精品视| 欧美激情精品久久久久| 欧美在线观看网站| 欧美剧在线免费观看网站| 欧美在线观看视频一区二区| 欧美成人国产一区二区| 久久久精品国产一区二区三区| 欧美肥婆bbw| 麻豆国产精品777777在线| 国产精品hd| 亚洲精品美女在线观看| 狠狠色狠色综合曰曰| 亚洲视频一区二区在线观看| 亚洲高清资源综合久久精品| 亚洲男女毛片无遮挡| 99综合在线| 玖玖玖免费嫩草在线影院一区| 午夜精品三级视频福利| 欧美日本在线观看| 欧美国产另类| 影音先锋中文字幕一区二区| 欧美一级欧美一级在线播放| 亚洲一区在线免费观看| 欧美精品 日韩| 亚洲第一页在线| 亚洲第一精品影视| 久久久999精品| 久久久91精品| 国产一区视频在线观看免费| 亚洲视频网站在线观看| a4yy欧美一区二区三区| 欧美激情精品久久久久久免费印度| 久久久精品久久久久| 国产视频自拍一区| 亚洲欧美日韩另类| 欧美专区在线播放| 国产女人18毛片水18精品| 亚洲伊人第一页| 久久精品视频播放| 红桃视频国产一区| 亚洲欧美偷拍卡通变态| 久久成人久久爱| 国内综合精品午夜久久资源| 欧美一级午夜免费电影| 久久精品九九| 亚洲电影专区| 欧美激情视频一区二区三区在线播放 | 亚洲一区二区三区精品在线| 亚洲一区二区免费看| 欧美日韩国产一级片| 一本高清dvd不卡在线观看| 亚洲一区二区在线| 国产性做久久久久久| 久久久久久**毛片大全| 亚洲缚视频在线观看| 99视频精品在线| 国产精品一区二区三区免费观看| 亚洲欧美日韩区| 欧美肥婆bbw| 在线一区二区三区做爰视频网站| 欧美色偷偷大香| 欧美一级精品大片| 亚洲第一精品影视| 午夜激情一区| 伊人色综合久久天天五月婷| 欧美www视频在线观看| 日韩一区二区免费看| 欧美专区在线观看一区| 最新国产乱人伦偷精品免费网站| 欧美全黄视频| 久久国产精品久久久久久| 亚洲精品国产精品国自产在线| 亚洲欧美日韩一区二区| 国内精品免费在线观看| 欧美区在线播放| 久久久久综合| 在线视频中文亚洲| 欧美成人激情视频| 校园春色国产精品| 亚洲欧洲午夜| 狠狠色狠狠色综合人人| 国产精品a久久久久| 开元免费观看欧美电视剧网站| 在线视频亚洲一区| 亚洲电影一级黄| 久久久91精品国产一区二区精品| 夜夜夜精品看看| 精品99视频| 国产精品视频最多的网站| 蜜桃av综合| 久久精品亚洲乱码伦伦中文 | 亚洲精品精选| 免费观看30秒视频久久| 亚洲综合导航| 一本色道久久综合亚洲91| 国内精品99| 国产伦精品一区二区三区高清版 | 欧美激情精品久久久久| 久久久久一区二区三区| 欧美一区二区国产| 亚洲一区二区3| 一级日韩一区在线观看| 亚洲国产经典视频| 欧美成人精品三级在线观看| 久久久久久久久久久成人| 亚洲一区国产视频| 国产精品99久久久久久久久| 亚洲美女一区| 亚洲美女免费精品视频在线观看| 在线观看91久久久久久| 国模大胆一区二区三区| 国产亚洲欧美一区二区| 国产亚洲一本大道中文在线| 国产美女高潮久久白浆| 国产噜噜噜噜噜久久久久久久久| 欧美午夜宅男影院| 国产精品扒开腿爽爽爽视频| 欧美三级电影一区| 国产精品乱码| 国产亚洲精品激情久久| 国内在线观看一区二区三区| 在线成人亚洲| 亚洲国产乱码最新视频| 亚洲精品美女在线| 99re66热这里只有精品4| 夜夜嗨一区二区| 亚洲免费一在线| 久久久久久久999| 日韩视频在线一区二区| 欧美激情片在线观看| 亚洲国产精品123| 蜜臀av国产精品久久久久| 国产午夜亚洲精品不卡| 欧美视频观看一区| 国产九九精品视频| 国产精品人人做人人爽| 国产视频在线观看一区二区三区| 国产日韩免费| 亚洲国产视频一区二区| 宅男精品视频| 欧美一区视频| 亚洲成在线观看| 99av国产精品欲麻豆| 亚洲欧美日韩精品一区二区| 久久久一区二区| 欧美日韩国产经典色站一区二区三区| 欧美性大战久久久久久久蜜臀| 国产精品日日摸夜夜添夜夜av| 国产亚洲欧美一级| 亚洲精品黄色| 久久激情五月丁香伊人| 欧美国产一区视频在线观看| av成人免费观看| 久久久激情视频| 欧美日韩日韩| 一区在线免费| 亚洲天堂久久| 欧美福利专区| 亚洲视频网在线直播| 久久夜色精品国产噜噜av| 国产精品户外野外| 亚洲精品乱码久久久久久日本蜜臀 | 国产亚洲综合精品| 日韩网站免费观看| 久久久www成人免费精品| 日韩视频免费| 欧美a级一区| 黄色成人在线观看| 午夜精品短视频| 妖精视频成人观看www| 美女视频网站黄色亚洲|