本說明文件僅供參考,
比賽時以

比賽主機

上之資訊為準。

The 2022 NTU NPSC

「比賽時間內」泛指:

模擬測試,比賽活動期間內。

比賽快結束了!
Kattis文件
還沒開始。
比賽 將會開始於 -4 days 23:38:51

經過時間

5:00:00

剩餘時間

0:00:00

如何 submit

有兩種可以上傳你code的方式: 使用submit表單或是使用submit client。

Submit 表單

如果登入到Kattis後, Submit 連結可以讓你到達可以上傳 code 的表單, 這個表單可以讓你上傳多個檔案, 只要在選檔案時選擇所有你想要上傳的檔案就好。

Submit Client

使用 Submit Client 可能需要花比較多時間去設定, 不過一旦設定完成, 就會比使用網頁的 Submit 表單方便使用。

請注意 submit client 只是提供的另一個選項, 這是個簡單的小程式,會自動使用你的設定檔, 從網頁登入並且使用 submit 的頁面。 我們不能保證這個程式一定能在你的系統上運作。

執行 client 程式

最簡單的方法就是將自己寫 code 的檔名改成 problemid.副檔名,這裡副檔名要根據你使用的語言命名, (e.g., Java 用 .java、C 用 .c、C++用 .cc 或是 .cpp )。 假設你解了Hello World(problem id 為 "hello",僅比賽時間內開放)然後 你的 java 解答寫在 Hello.java 這個檔案中, 只要簡單地跑 submit.py 並使用 Hello.java 當作參數, Client 就會幫你傳送解答, 每次傳送前都會有提示訊息。

更多進階的選項

Submit client可以在同個 submission 中傳送多個檔案, 在這樣的傳送中,第一個檔案的檔名跟副檔名會用來判斷你傳送到哪一題, 同一個檔案如果被指定到多次是可以的 (我們會只傳送一份), 例如:submit.py Hello.java *.java

如果怕 Client 判斷錯誤, 你可以經由使用 command line option 來指定傳送的目標, 執行submit -h會列出所有可用的 option, 在這頁中我們有列出一些:

  • -p <problem_id> - 指定 problemid
  • -m <mainclass> - 指定 mainclass
  • -l <language> - 指定語言
  • -f - 強迫傳送 (不會有提示訊息)