コンテストの制限時間が終了しました。
以降も提出を行うことができますが、順位集計には反映されません。
以降も提出を行うことができますが、順位集計には反映されません。
ソースコード
WITH data AS (
SELECT
*
FROM ENTRIES
JOIN SUBMISSIONS
USING (CONTEST_ID, USER_ID, ENTRY_ID)
WHERE
ENTRY_ID IS NOT NULL
AND CONTEST_ID = 2
), points AS (
SELECT
USER_ID,
SUM(POINT) POINT
FROM data
GROUP BY USER_ID
HAVING POINT > 0
), max_time AS (
SELECT
USER_ID,
MAX(SUBMITTED_AT) MAX_SUBMITTED_AT
FROM data
WHERE STATUS = "AC"
GROUP BY USER_ID
), ac AS (
SELECT
USER_ID,
MAX(strftime('%s', MAX_SUBMITTED_AT) - strftime('%s', STARTED_AT)) AS TIME
FROM data
JOIN max_time
USING (USER_ID)
WHERE STATUS = "AC"
GROUP BY USER_ID
), max_time_prob AS (
SELECT
USER_ID,
PROBLEM_ID,
MAX(SUBMITTED_AT) MAX_SUBMITTED_AT
FROM data
WHERE STATUS = "AC"
GROUP BY USER_ID, PROBLEM_ID
), wrong AS (
SELECT
USER_ID,
COUNT(CASE WHEN SUBMITTED_AT < MAX_SUBMITTED_AT THEN 1 END) AS WRONG_ANS
FROM data
JOIN max_time_prob
USING (USER_ID, PROBLEM_ID)
WHERE STATUS != "AC"
GROUP BY USER_ID
)
SELECT
RANK() OVER (ORDER BY POINT DESC, TIME + 300 * IFNULL(WRONG_ANS, 0)) RANK,
USER_ID,
POINT,
TIME + 300 * IFNULL(WRONG_ANS, 0) AS EX_TIME,
IFNULL(WRONG_ANS, 0) WRONG_ANS
FROM points
JOIN ac
USING (USER_ID)
LEFT OUTER JOIN wrong
USING (USER_ID)
ORDER BY
RANK,
WRONG_ANS,
USER_ID
提出情報
提出日時 | 2022/10/20 00:50:47 |
コンテスト | 第3回 SQLコンテスト |
問題 | 順位計算 |
受験者 | mugenen |
状態 (詳細) | WA (Wrong Answer: 誤答) |
メモリ使用量 | 102 MB |
メッセージ
テストケース(通過数/総数)
0/2
状態
メモリ使用量
データパターン1
WA
98 MB
データパターン2
WA
102 MB