# 第 0 章 - 從零開始的競程生活
[彙總文](/@Cheng0928/CPtutorial)
[TOC]
## 學習心態
歡迎你來到競程的世界,
首先,我必須告訴你「競程」是個內容十分廣的領域,
需要花費十分多的心力與時間在練習與學習上才會有較好的成效!
<font color="#f00">**希望你能喜歡此教材,但我不能保證此教材全部的內容都是正確的**</font>
如果對此教材的一些內容抱有疑問,可以私訊我的 DC (cheng0928),
或是上網利用關鍵字查詢其他教材,
<font color="#f00">**但也要自行判斷教材的內容正確與否**</font>
## C++?幹嘛不用 Python 或其他程式語言打競程?
有人可能會講說:「Python 明明就比較簡單!而且比較好學,我拿 Python 打天下就好啦!」
對於目標只是 APCS 的人這也許是可以的,但對於目標是資訊競賽的學生就不是這樣,
隨便拿台灣知名的兩個資訊競賽來舉例,資訊奧林匹亞初選 (簡稱為 TOI 初選)、台大舉辦的 NPSC
這兩個比賽都只能使用 C/C++ 這兩種語言參賽,這就是學習 C++ 來打競程最好的理由了!
~~畢竟沒有人想要用 C 打天下麻~~
## 競程介紹
競程,就是程式競賽的簡稱(沒記錯的話是從中國那邊傳過來的用語?
競程又被稱作演算法競賽,
像上一個小章節所說的,台灣較知名的競賽 ex: TOI 初選、NPSC、YTP
但到現在你還是不知道競程主要是在幹嘛吧!
簡單來說就是<font color="#f00">**利用程式解決問題**</font>,
有點像是用程式解決一些像是數學上的問題,
例如:
給你 $a$ 和 $b$,叫你算出 $a$ x $b$ 的結果
你可能會想,這不是很簡單嘛?我手算就可以解決了,沒事寫個程式幹嘛?
但如果今天 $a = 99979646, b = 131321548$,電腦一下就能算出來,你會想花時間用手算嗎?
## OJ 的使用
OJ,Online Judge 的簡稱,
OJ 上有十分多的題目,你可以在上面選擇一個題目,
按照題目需求,編寫出一份程式碼上傳,OJ 會即時地給你回覆,
告訴你,你的程式在執行後是否通過了這道題目
在本教材中,會使用以下平台的題目當作例題與練習題
1. Codeforces: https://codeforces.com/
2. Atcoder: https://atcoder.jp/
3. Zerojudge: https://zerojudge.tw/
可以趁現在趕快註冊!附上幾部註冊教學影片
[Codeforces 註冊教學](https://youtu.be/lxw5JMGEiZg)
[Atcoder 註冊教學](https://youtu.be/u86bh0BKXhQ)
很多 OJ 上的題目都是英文的,希望能具備一些基本英文能力再來學,
不然用 Google 翻譯也是可以,只是有時候翻譯過後的意思跟題目原意會有些差距
## 結語!
看完本章節後,希望大家能夠對競程這個領域有進一步的了解!
本章內容不多,
之後所有文章如果我有想更新的資訊或是覺得一些知識應該要在本章提到我也會更新上來
希望大家能學習順利!
## 更新紀錄
2023/8/22 初版編寫完成
---
<p style="text-align:center">本章節結束囉,如果喜歡的幫我點一顆愛心好嗎 OwO</p>
{"title":"第 0 章 - 從零開始的競程生活","description":"彙總文","contributors":"[{\"id\":\"bf35a5b2-27fc-4d14-bb9a-9b95ff08effa\",\"add\":1496,\"del\":5}]"}