public static void Judge(string code, int user_id, string problem_title, string lang) { OutputProblemInfo info = ProblemServices.GetProblemInfoInner(problem_title); var uuid = Guid.NewGuid().ToString("N"); var l = GetLanguage(lang); Submission submission = new Submission { Code = code, ProblemId = info.SimpleInfo.ProblemId, Uuid = uuid, UserId = user_id, Lang = l.ToString() }; SubmissionDao.AddSubmission(submission); Task task = new Task(() => { submission.Status = JudgeCore.JudgeStatus.Running.ToString(); SubmissionDao.ChangeSubmissionStatus(submission); var simple_info = info.SimpleInfo; JudgeCore.ProblemInfo judge_info = new JudgeCore.ProblemInfo() { code = submission.Code, max_mem = simple_info.MaxMemory, max_time = simple_info.MaxTime, uuid = uuid, right_result = info.RightResult, test_case = info.TestCase, language = l }; var result = JudgeCore.Judger.judge(judge_info); submission.Status = result.status.ToString(); submission.Time = result.time; submission.Memory = result.memory; SubmissionDao.SetResult(submission); }); task.Start(); }
public static List <Submission> GetSubmissions(string nickname, int start_from, int len) { return(SubmissionDao.GetSubmissionsByOne(nickname, start_from, len)); }
public static List <Submission> GetSubmissions(int start_from, int len) { return(SubmissionDao.GetSubmissions(start_from, len)); }