Internal Error(ジャッジが正常でない)際に、システムの出力が空になり Accepted と判定されるのが罠である
|
Open3.capture3("[ -f /data/tasks/#{task_id}/judge.cpp ] && g++ -O2 -std=c++14 /data/tasks/#{task_id}/judge.cpp -o /data/tasks/#{task_id}/judge.exe") |
|
o, e, s = Open3.capture3(cmd) |
上記の
Open3.capture3 の 3 つめの返り値に終了ステータスが入るので、それを見て分岐が可能か?
test.sh が AC 以外のステータスでも 0 を返すかの調査は必要(多分大丈夫だとは思うけど)
Internal Error(ジャッジが正常でない)際に、システムの出力が空になり Accepted と判定されるのが罠である
TOJWebapp/app/services/queue_services/runner.rb
Line 46 in e619748
TOJWebapp/app/services/queue_services/runner.rb
Line 49 in e619748
上記の
Open3.capture3の 3 つめの返り値に終了ステータスが入るので、それを見て分岐が可能か?test.sh が AC 以外のステータスでも 0 を返すかの調査は必要(多分大丈夫だとは思うけど)