校際選修

115-1 選課時程

進行中

  • 初選第一階段 6/15/2026
  • 初選第二階段 6/22/2026
  • 校際選修 8/24/2026
  • 初選第三階段 8/31/2026
  • 開學後加退選 9/7/2026
  • 逾期加退選 9/21/2026
選課資源

競技程式設計(一)

Competitive Programming(I)

學期
106-2
學分
3 學分
當期課號
1172
永久課號
DCP3603
開課單位
資訊工程學系
授課教師
謝旻錚
校區
光復
類別
選修
上課時間表
週五
A
18:30–19:20
競技程式設計(一)
ED117
3 節連堂
B
19:30–20:20
C
20:30–21:20

* 根據陽明交大上課時間表所列

概述

This is an introductory course in competitive programming. It will cover implementation skills on data structures and fundamental problem solving approaches such as incremental algorithms, divide and conquer, greedy algorithms, dynamic programming, state space search and etc. Some topics in data structures, graph theory and computational geometry will be taught if everything goes smoothly. This course aims to encourage students to participate programming contests, and it provides the basic training to contestants.

先修科目

Basic programming ability in C or C++ or Java or Python Knowing arithmetics, binary representation and call stack Solve qualification problem set by 23:59, Mar 1, 2018.

教學方式

Online Judge System: https://oj.nctu.me/ Course materials: https://github.com/mzshieh/cp1_2018/

評分方式

Assignments: 10% Midterm: 45% Final: 45% Both the midterm and the final will consist of 8 problems and last 5 hours.

週次計畫
週次主題
第 1 週Course Orientation and Introduction to Programming Contest Qualification Problem Set
第 2 週Input Parsing Output Formatting
第 3 週Fundamental data structures Built-in Library
第 4 週Simulation
第 5 週Incremental Algorithms
第 6 週Divide and Conquer
第 7 週Recursive Enumeration
第 8 週Sorting and Binary Search
第 9 週Midterm
第 10 週Data Structures Related to Static Trees
第 11 週Data Structures Related to Static Trees
第 12 週Dynamic Programming
第 13 週Dynamic Programming
第 14 週Greedy Algorithms
第 15 週State Space Search
第 16 週State Space Search
第 17 週Selected Topics
第 18 週Final
教科書

Competitive Programming 3, written by Steven Halim and Felix Halim, published by LuLu Enterprises, 2013. Handouts

Office Hours
地點
CS337
時間
3GH
聯絡方式
mzshieh@nctu.edu.tw