# 競技程式
###### tags: `講義`
僑光科技大學 資訊科技系
授課老師:[高吉隆](http://rs2.ocu.edu.tw/~kevin/)
電子信箱:[kevinkao888@gmail.com](mailto://kevinkao888@gmail.com)
上課日期:108/02/20 ~ 108/06/19
上課時間:星期三 15:10 ~ 17:00
---
## 課程大綱
* C++語法複習
* CPE 練習 Part1(迴圈)
* CPE 練習 Part2(陣列)
* CPE 練習 Part3(函數)
* CPE 練習 Part2(結構)
* 程式能力檢測為教學目標
* 參加CPE考試可以答對題目,並且提升程式能力
----
| 週| 上課日期 | 前 9 週上課目標 | 備註
|:-:|:---------:|------------|:--:
| 1 | 108/02/20 |課程說明|
| 2 | 108/02/27 |C++語法複習|
| 3 | 108/03/06 |CPE Part1(迴圈)1|
| 4 | 108/03/13 |CPE Part1(迴圈)2|
| 5 | 108/03/20 |CPE Part1(迴圈)3|
| 6 | 108/03/27 |CPE Part2(陣列)1|小考10%
| 7 | 108/04/03 |CPE Part2(陣列)2|
| 8 | 108/04/10 |CPE Part2(陣列)3|小考10%
| 9 | 108/04/17 |期中測驗|15%
----
| 週 | 上課日期 | 後 9 週上課目標 | 備註
|:--:|:----------:| --------------- |:--:
| 10 | 108/04/24 | CPE Part3(函數)1 |
| 11 | 108/05/01 | CPE Part3(函數)2 |
| 12 | 108/05/08 | CPE Part4(結構)1 |
| 13 | 108/05/15 | CPE Part4(結構)2 |
| 14 | 108/05/22 | CPE Part4(結構)3 |考試10%
| 15 | 108/05/29 | CPE Part5(指標)1 |
| 16 | 108/06/05 | CPE Part5(指標)2 |
| 17 | 108/06/12 | CPE考試複習 |平時10%
| 18 | 108/06/19 | 準備CPE考試 |30%
----
### 課程評分方式
* 平時成績:30% (上課互動+二次小考)
* 上課互動:10% (10次點名)
* 第一次小考:10% (108/03/27)
* 第二次小考:10% (108/04/10)
* 期中成績:15% (108/04/15)
* 考試範圍:C#程式基礎 物件導向
* 期末成績:40% (期末報告)
* 第三次小考:10% (108/05/22) 函數、結構、指標
* 期末考:30% (108/06/17) CPT考試
----
#### 第一次作業
* 依回答題數1-26題平均配分至60-100分
* 未回答任何1題者為50分,平均70分
![](https://i.imgur.com/rJUVKFF.png)
----
#### 第一次小考
* 依回答題數2-10題平均配分至30-100分
* 未回答任何1題者為20分,平均70分
![](https://i.imgur.com/wjMEMr2.png)
----
#### 期中考
* 依回答題數1-7題平均配分至55-90分
* 平均77分
![](https://i.imgur.com/YsCq5kp.png)
----
#### 第二次小考
* 滿分100分,每錯1題扣4分
* 平均70分,最高分100分,最低分40分
![](https://i.imgur.com/8dFmHZy.png)
----
#### 第三次小考
* 滿分100分,每錯1題扣4分(後來改為3分)
* 平均77分(不含缺考),最高分100分,最低分52分
![](https://i.imgur.com/p3XXh5V.png)
----
### CPE 大學程式能力檢定考
* CPE網址:[https://cpe.cse.nsysu.edu.tw/](https://cpe.cse.nsysu.edu.tw/)
* CPE大學程式能力檢定應考策略:[連結](https://docs.google.com/presentation/d/1zglun7KO-0hyeB0BqV_nX5rcfOt8ZsOHDMhQHNQyxyw/embed?start=false&loop=false&delayms=3000&slide=id.g33e499e9c_095)
* 瘋狂程設:[http://coding-frenzy.arping.me/](http://coding-frenzy.arping.me/)
* 程式下載:[瘋狂程設](http://coding-frenzy.arping.me/sites/coding-frenzy.arping.me/CodingFrenzy@coding-frenzy.arping.me.zip)、[MinGW](https://osdn.net/frs/redir.php?m=nchc&f=mingw%2F68260%2Fmingw-get-setup.exe)
* 解壓縮至根目錄:C:\或D:\
* 執行主程式:CodingFrenzy.exe
* 同意以下各授權規定
* 訪客直接登入:預設為程式練習廣場
* 選擇第01關:變數與計算
* 選擇題號:A001 HelloWorld
* 選擇練習:進入回答視窗
----
### 編譯器使用MinGW
* 官方網址:[http://www.mingw.org/](http://www.mingw.org/)
* 下載網址:[連結](https://osdn.net/frs/redir.php?m=nchc&f=mingw%2F68260%2Fmingw-get-setup.exe)
* 執行:mingw-get-setup.exe
|![](https://i.imgur.com/8qE0o0o.png)|![](https://i.imgur.com/3Xalrwv.png)|
|:-:|:-:|
|Step1: 請按Install|Step2: 請按Continue|
----
|![](https://i.imgur.com/16GGDxM.png)|![](https://i.imgur.com/6MJWxaM.png)|
|:-:|:-:|
|Step3: 請按Continue|Step4: 請選擇C++|
----
|![](https://i.imgur.com/hcbWZ5i.png)|![](https://i.imgur.com/kwbosxg.png)|
|:-:|:-:|
|Step5: 請按Apply Changes|Step6: 請選擇Apply|
----
### 瘋狂程設題目:A001 HelloWorld(C)
* 題目資料:請在命令視窗中印出 "Hello World!"。
* 選擇編譯器:MinGW
* 撰寫main函數:
```cpp
#include<stdio.h>
int main() {
printf("Hello World!");
return 0;
}
```
----
### 瘋狂程設題目:A001 HelloWorld(C++)
* 題目資料:請在命令視窗中印出 "Hello World!"。
* 選擇編譯器:MinGW
* 撰寫main函數:
```cpp
#include<iostream>
using namespace std;
int main() {
cout << "Hello World!";
return 0;
}
```
----
### 瘋狂程設題目:A001 HelloWorld(C#)
* 題目資料:請在命令視窗中印出 "Hello World!"。
* 選擇編譯器:MSCS
* 撰寫main函數:
```csharp=
using System;
namespace HelloWorld {
class Hello {
static void Main() {
Console.Write("Hello World!");
}
}
}
```
----
### 瘋狂程設題目:A001 HelloWorld(VB)
* 題目資料:請在命令視窗中印出 "Hello World!"。
* 選擇編譯器:MSVB 2.0.50727
* 撰寫main函數:
```csharp=
Module Program
Sub Main()
Console.Write("Hello World!")
End Sub
End Module
```
---
### 瘋狂程設 - 註冊帳號
* 輸入電子信箱:按取得帳號金鑰
* 收信:開通帳號
![](https://i.imgur.com/LoERSCR.png)
----
### 瘋狂程設 - 登入帳號
![](https://i.imgur.com/HJhjRDm.png)
----
### 瘋狂程設 - 使用方式
* 選擇程式練習廣場
* 選擇關卡:第01關變數與計算
* 選擇題目:練習(已有紀錄)或挑戰(標記金牌)
* 練習:部分有解題說明、可以上網查資料
* 挑戰:完全自行完成程式,不可以上網
* 選擇編譯器:MinGW
* 編譯測試:使用自訂測試資料
* 批改交卷:通過或不通過
* 更新畫面:按F5
----
![](https://i.imgur.com/8UpBsKG.png)
----
![](https://i.imgur.com/iGcmrIn.png)
----
* 第01關變數與計算
* (A003) 攝氏轉華氏 : 輸入攝氏溫度,輸出華氏溫度。(華式F)=(攝氏C)*9/5+32,小數部分請無條件捨去。
```cpp=
#include<stdio.h>
int main() {
int c, f;
scanf("%d", &c);
f = (int) c * 9 / 5 + 32;
printf("C=\nF=%d", f);
return 0;
}
```
---
## 資訊週程式競賽練習
* 競賽日期:05/14(二)09:00 ~ 13:00
* 兩人為1組報名,回答5題程式題目
* 加分方式:只要答對1題,程式競技學期總分加2分,最多加10分
* 加分會按比例加至期末、平時成績、學期調分
* Dev-C++:[下載](https://sourceforge.net/projects/orwelldevcpp/)
* 題目:[連結](https://www.ocu.tw/pdf/question.pdf)
----
## 資訊週程式競賽規則:
* 每組使用兩台電腦,組員間可以低聲討論,並以不妨礙他人為原則。
* 競賽過程中網路一律斷線,且禁止使用手機、隨身碟。
* 每題均以「通過」及「不通過」作業評審方式。檢驗是否通過係以數筆測試資料進行測試,必須每組測試資料執行結果都正確才算通過。
* 競賽各組成績以答對題數為主,題數相同者以答題花費總時間較少者為優勝。
* 每題作答完成可舉手請求確認及檢測,但檢測如答案錯誤,則需另行增加20分鐘計算在總花費時間中。
----
## CPE 大學程式能力檢定
* 報名日期:05/14(二)14:25~05/24(五)18:00
* 考試日期:05/28(二)17:30~21:40
* 考試地點:逢甲大學資訊電機館
* 本次考試至少有一題選自[一顆星選集](https://cpe.cse.nsysu.edu.tw/environment.php#starList)
* 加分方式:只要答對1題,程式競技學期總分加5分,最多加10分
* 加分會按比例加至期末、平時成績、學期調分
* UVA考題(100~1999):[UVA Online Judge1](https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=1&limit=50&limitstart=0)
* UVA考題(10000~):[UVA Online Judge2](https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=2)
* 中文題目、依條件快速搜尋:[LuckyCat](http://luckycat.kshs.kh.edu.tw/)
* 參考解答:[KnightZone](https://knightzone.studio/%E8%A7%A3%E9%A1%8C%E7%A8%8B%E5%BC%8F%E7%A2%BC/)
----
||題目|英文|||
|:-:|:-:|:-:|:-:|:-:|
|1|Vito's family|[10041](https://uva.onlinejudge.org/external/100/p10041.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10041.htm)|[連結](https://knightzone.studio/2012/03/18/1510/uva%EF%BC%9A10041%EF%BC%8Dvitos-family/)
|2|Hashmat the<br>brave warrior|[10055](https://uva.onlinejudge.org/external/100/p10055.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10055.htm)|[連結](https://knightzone.studio/2011/11/29/1233/uva%EF%BC%9A10055%EF%BC%8Dhashmat-the-brave-warrior/)
|3|Primary Arithmetic|[10035](https://uva.onlinejudge.org/external/100/p10035.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10035.htm)|[連結](https://knightzone.studio/2011/11/29/1227/uva%EF%BC%9A10035%EF%BC%8Dprimary-arithmetic/)
|4|The 3n + 1 problem|[100](https://uva.onlinejudge.org/external/1/p100.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q100.htm)|[連結](https://knightzone.studio/2011/11/24/1182/uva%EF%BC%9A100%EF%BC%8Dthe-3n-1-problem/)
|5|You can say 11|[10929](https://uva.onlinejudge.org/external/109/p10929.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10929.htm)|[連結](https://knightzone.studio/2012/03/31/1594/uva%EF%BC%9A10929%EF%BC%8Dyou-can-say-11/)
|6|Bangla Numbers|[10101](https://uva.onlinejudge.org/external/101/p10101.pdf)||[連結](https://knightzone.studio/2012/08/01/1789/uva%EF%BC%9A10101%EF%BC%8Dbangla-numbers/)
|7|List of Conquests|[10420](https://uva.onlinejudge.org/external/104/p10420.pdf)||[連結](https://knightzone.studio/2015/01/02/2570/uva%EF%BC%9A10420%EF%BC%8Dlist-of-conquests/)
----
||題目|英文|||
|:-:|:-:|:-:|:-:|:-:|
|8|What's Cryptanalysis?|[10008](https://uva.onlinejudge.org/external/100/p10008.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10008.htm)|[連結](https://knightzone.studio/2012/03/16/1489/uva%EF%BC%9A10008%EF%BC%8Dwhats-cryptanalysis/)
|9|Decode the Mad man|[10222](https://uva.onlinejudge.org/external/102/p10222.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10222.htm)|[連結](https://knightzone.studio/2011/12/01/1256/uva%EF%BC%9A10222%EF%BC%8Ddecode-the-mad-man/)
|10|Summing Digits|[11332](https://uva.onlinejudge.org/external/113/p11332.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q11332.htm)|[連結](https://knightzone.studio/2012/09/17/1900/uva%EF%BC%9A11332%EF%BC%8Dsumming-digits/)
|11|Common Permutation|[10252](https://uva.onlinejudge.org/external/102/p10252.pdf)||[連結](https://knightzone.studio/2015/01/15/2679/uva%EF%BC%9A10252%EF%BC%8Dcommon-permutation/)
|12|Rotating Sentences|[490](https://uva.onlinejudge.org/external/4/p490.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q490.htm)|[連結](https://knightzone.studio/2014/12/29/2468/uva%EF%BC%9A490%EF%BC%8Drotating-sentences/)
|13|TeX Quotes|[272](https://uva.onlinejudge.org/external/2/p272.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q272.htm)|[連結](https://knightzone.studio/2011/11/25/1187/uva%EF%BC%9A272%EF%BC%8Dtex-quotes/)
----
||題目|英文|中文|解答|
|:-:|:-:|:-:|:-:|:-:|
|14|Doom's Day Algo.|[12019](https://uva.onlinejudge.org/external/120/p12019.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q12019.htm)|[連結](https://knightzone.studio/2012/07/15/1756/uva%EF%BC%9A12019%EF%BC%8Ddooms-day-algorithm/)
|15|Jolly Jumpers|[10038](https://uva.onlinejudge.org/external/100/p10038.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10038.htm)|[連結](https://knightzone.studio/2011/11/29/1230/uva%EF%BC%9A10038%EF%BC%8Djolly-jumpers/)
|16|What is the Prob.|[10056](https://uva.onlinejudge.org/external/100/p10056.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10056.htm)|
|17|Hotel Infinite Rooms|[10170](https://uva.onlinejudge.org/external/101/p10170.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10170.htm)|[連結](https://knightzone.studio/2018/09/26/3621/uva%EF%BC%9A10170%EF%BC%8Dthe-hotel-with-infinite-rooms/)
|18|498’|[10268](https://uva.onlinejudge.org/external/102/p10268.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10268.htm)|
|19|Odd Sum|[10783](https://uva.onlinejudge.org/external/107/p10783.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10783.htm)|[連結](https://knightzone.studio/2012/01/17/1317/uva%EF%BC%9A10783%EF%BC%8Dodd-sum/)
|20|Beat the Spread!|[10812](https://uva.onlinejudge.org/external/108/p10812.pdf)|[中文](http://luckycat.kshs.kh.edu.tw/homework/q10812.htm)|[連結](https://knightzone.studio/2012/05/09/1739/uva%EF%BC%9A10812%EF%BC%8Dbeat-the-spread/)
{"metaMigratedAt":"2023-06-14T20:16:08.207Z","metaMigratedFrom":"Content","title":"競技程式","breaks":"true","contributors":"[{\"id\":\"9eed60a5-6546-4dfd-8445-07f81bcfde52\",\"add\":14287,\"del\":4241}]"}