diff --git a/src/utils/constants.ts b/src/utils/constants.ts index 70ca64a..e31f814 100644 --- a/src/utils/constants.ts +++ b/src/utils/constants.ts @@ -132,10 +132,10 @@ export const DIFFICULTY = { } const cSource = - '#include\r\n\r\nint main()\r\n{\r\n printf("黄岩一职");\r\n return 0;\r\n}' + '#include\r\n\r\nint main()\r\n{\r\n \r\n return 0;\r\n}' const cppSource = - '#include\r\n\r\nusing namespace std;\r\n\r\nint main()\r\n{\r\n cout<<"黄岩一职"<\r\n\r\nusing namespace std;\r\n\r\nint main()\r\n{\r\n \r\n return 0;\r\n}' +const pythonSource = "" const javaSource = 'public class Main {\r\n public static void main(String[] args) {\r\n System.out.println("黄岩一职");\r\n }\r\n}' @@ -159,61 +159,6 @@ export const LANGUAGE_ID = { Golang: 0, } -export const DEAD_RESULTS = { - C: { - encoded: - "I2luY2x1ZGU8c3RkaW8uaD4NCg0KaW50IG1haW4oKQ0Kew0KICAgIHByaW50Zigi6buE5bKp5LiA6IGMIik7DQogICAgcmV0dXJuIDA7DQp9", - result: { - status: 3, - output: "黄岩一职", - }, - }, - "C++": { - encoded: - "I2luY2x1ZGU8aW9zdHJlYW0+DQoNCnVzaW5nIG5hbWVzcGFjZSBzdGQ7DQoNCmludCBtYWluKCkNCnsNCiAgICBjb3V0PDwi6buE5bKp5LiA6IGMIjw8ZW5kbDsNCiAgICByZXR1cm4gMDsNCn0=", - result: { - status: 3, - output: "黄岩一职", - }, - }, - Java: { - encoded: - "cHVibGljIGNsYXNzIE1haW4gew0KICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsNCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCLpu4TlsqnkuIDogYwiKTsNCiAgICB9DQp9", - result: { - status: 3, - output: "黄岩一职", - }, - }, - Python3: { - encoded: "cHJpbnQoIum7hOWyqeS4gOiBjCIp", - result: { - status: 3, - output: "黄岩一职", - }, - }, - Python2: { - encoded: "", - result: { - status: 3, - output: "黄岩一职", - }, - }, - Golang: { - encoded: "", - result: { - status: 3, - output: "黄岩一职", - }, - }, - JavaScript: { - encoded: "", - result: { - status: 3, - output: "黄岩一职", - }, - }, -} - export const LANGUAGE_FORMAT_VALUE = { C: "c", "C++": "cpp", diff --git a/src/utils/judge.ts b/src/utils/judge.ts index c6f6ac1..139cb16 100644 --- a/src/utils/judge.ts +++ b/src/utils/judge.ts @@ -1,5 +1,4 @@ import axios from "axios" -import { DEAD_RESULTS } from "./constants" import { decode, encode, protocol } from "./functions" import { Code } from "./types" @@ -7,37 +6,32 @@ const http = axios.create({ baseURL: `${protocol}://judge0api.xuyue.cc` }) export async function createTestSubmission(code: Code, input: string) { const encodedCode = encode(code.value) - - if (encodedCode === DEAD_RESULTS[code.language].encoded) { - return DEAD_RESULTS[code.language].result - } else { - const id = { - C: 50, - "C++": 54, - Java: 62, - Golang: 60, - JavaScript: 63, - Python2: 70, - Python3: 71, - }[code.language] - let compilerOptions = "" - if (id === 50) compilerOptions = "-lm" // 解决 GCC 的链接问题 - const payload = { - source_code: encodedCode, - language_id: id, - stdin: encode(input), - redirect_stderr_to_stdout: true, - compiler_options: compilerOptions, - } - const response = await http.post("/submissions", payload, { - params: { base64_encoded: true, wait: true }, - }) - const data = response.data - return { - status: data.status && data.status.id, - output: [decode(data.compile_output), decode(data.stdout)] - .join("\n") - .trim(), - } + const id = { + C: 50, + "C++": 54, + Java: 62, + Golang: 60, + JavaScript: 63, + Python2: 70, + Python3: 71, + }[code.language] + let compilerOptions = "" + if (id === 50) compilerOptions = "-lm" // 解决 GCC 的链接问题 + const payload = { + source_code: encodedCode, + language_id: id, + stdin: encode(input), + redirect_stderr_to_stdout: true, + compiler_options: compilerOptions, + } + const response = await http.post("/submissions", payload, { + params: { base64_encoded: true, wait: true }, + }) + const data = response.data + return { + status: data.status && data.status.id, + output: [decode(data.compile_output), decode(data.stdout)] + .join("\n") + .trim(), } }