使用手冊
目錄
常見問題 FAQ
請先查看FAQ
網站操作
搜尋題目
在題目列表頁面中
你可以在右方看到搜尋篩選器 (problem search)
- 輸入文字以搜尋題目標題或代號
- 勾選全文搜尋以包含題目內文
- 篩選分類已快速找到你想要的題目,包含預設、基礎、競賽、AP325
或是使用標籤尋找分類
題目介面
左邊顯示題目的敘述
右邊欄位則顯示則有提交按鈕、提交動態、測資資訊以及作答語言
下滑可以看到評論區
可以在這裡討論題目 對評論按讚
或是提交錯誤回報Report an issue
點擊submit a solution
可以提交答案
在作答介面下方 你可以選擇作答語言
作答完畢後 點擊提交!
然後你會看到結果頁面
關於輸出 請見狀態代碼-Status Codes
管理個人頁面
到右上方進入個人資料介面
點選Edit profile
開啟深色模式
首先打勾 Enable experimental features (啟用實驗性功能)
點擊update profile
後畫面會刷新
這時你可以看到出現了site theme
的選項
- Follow system defalt - 使用windows系統設定
- Light - 亮瞎眼的白色主題
- Dark - 正常人的黑色主題
管理個人資料
使用Change your password
或Change your email
更改你帳密
右邊欄位可以加入/退出組織
更改大頭貼
- 點擊
Change your avatar
- 使用你註冊TFOJ的電子信箱登入該連結的網站
- 上傳你的圖片
- Done!
因為網站快取的緣故,你可能需要重啟網站來應用變更。
關於裁判機
評分主機資訊:
注意! 管理員保留隨時 rejudge 的權利
本系統目前所有支援的程式語言請見runtimes
預設開啟brainfuck python c c++ assembly
如需開啟其他語言 請直接留言或聯絡我們
狀態代碼(Status Codes)
這個頁面列出了 TFOJ 系統中可能遇到的所有狀態代碼及其描述。需要注意的是,一個測試案例可能會有多個狀態代碼(特別是在非 AC 判定的情況下),
此時系統會顯示優先級最高的狀態代碼。本頁的狀態代碼按照優先級由低到高的順序排列。
AC - Accepted(通過)
你的程式通過了所有測試!有時候,系統可能會提供額外的反饋訊息。
WA - Wrong Answer(答案錯誤)
你的程式雖然沒有在執行期間崩潰,但輸出結果不正確。和 AC 類似,系統可能會提供反饋訊息,指出你錯在哪裡。
IR - Invalid Return(無效返回)
你的程式 return 了非零錯誤碼(如果你不是使用 C++ 這類原生語言,那就是程式崩潰)。對於 Python 或 Java 等語言,通常會顯示拋出的 Exception,例如 NameError
或 java.lang.NullPointerException
。
RTE - Runtime Error(執行時錯誤)
你的程式在執行期間發生錯誤。這通常發生在 C 或 C++ 這類原生語言中。TFOJ 系統會將一些常見的 RTE 錯誤映射為更有用的描述,如下所示:
反饋 | 描述 |
---|---|
segmentation fault, bus error | 程式因為 SIGSEGV 或 SIGBUS 信號被終止。通常代表記憶體不足,但也可能是因為陣列越界存取。 |
floating point exception | 程式執行了錯誤的算術操作,例如除以零。 |
killed | 程式因為某種原因被終止(原因不明)。 |
{} syscall disallowed | 如果你看到此訊息,代表程式嘗試使用不允許的系統呼叫。如非必要,應不會看到此錯誤。如有疑問,請提交 issue以協助DMOJ官方排查。 |
std::bad_alloc | 無法分配足夠的記憶體。 |
failed initializing | 程式在初始化時使用了過多的全域變數。例如,在 64MB 記憶體限制下,宣告 int arr[10000][10000] 將佔用 381MB,超過了限制。 |
OLE - Output Limit Exceeded(輸出超限)
你的程式輸出了過多的資料到 stdout
,通常超過 256MB(視題目而變)。
MLE - Memory Limit Exceeded(記憶體超限)
你的程式使用了過多的記憶體。有時會以 RTE 類似的形式顯示,例如 segmentation fault 或 std::bad_alloc。
TLE - Time Limit Exceeded(時間超限)
你的程式超時。
IE - Internal Error(內部錯誤)
若出現此錯誤,表示系統評測器發生了錯誤,或題目設定有問題,請通知管理員。
解題範例
還不會
C: gcc -std=c99 (gcc 13)
C解題範例:
#include<stdio.h>
int main() {
char s[9999];
while( scanf("%s", s) != EOF ) {
printf("hello, %s\n", s);
}
return 0;
}
CPP: g++ -std=c++17 (g++17 13)
CPP解題範例:
#include <iostream>
using namespace std;
int main() {
string s;
while(cin >> s) {
cout << "hello, " << s << endl;
}
return 0;
}
JAVA: javac 1.8.0 預設未開啟 需要請留言
JAVA解題範例:
import java.util.Scanner;
public class JAVA {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
String s;
while (cin.hasNext()) {
s = cin.nextLine();
System.out.println("hello, " + s);
}
}
}
PYTHON: Python 3.12.4
PYTHON解題範例:
while True:
try:
s = input()
print('hello, ' + s)
except:
break