Important: The following is subject to change. Please visit this page frequently to get the most up-to-date information.

2450MMW-2450, City University of Hong Kong 2462MMW-2462, City University of Hong Kong
2462MMW-2478, City University of Hong Kong

Pre-registration required to attend the training sessions. Walk-in is not allowed.

Week
Date
AM Session
10:00 – 13:00
PM Session
14:00 – 17:00
Advanced Intermediate For all trainees
Week 5
2023-02-04
2450

Introduction to HKOI

orientation, competitive programming and Big-O

Yuen Lok Kan Ethen

2450Solutions to HKOI 2022/23
Final Event
Week 6
2023-02-11
2450

Data Structures (II)

binary heap, binary search tree, hash table, disjoint-set union-find

Chan King Kai

2462

Optimization and Common Tricks

prefix sum, delta array, sliding windows(two pointers), precomputation, discretization, etc.

Cheng Tsz Ying

2450

Introduction to Linux

shell command and usage, file management, program development

Chan King Kai

Week 7
2023-02-18
2450

Dynamic Programming (I)

discussion of classical DP problems: knapsack, matrix multiplication, etc.

Chow King Wang

2462

Mathematics in OI (I)

Number Theory: modular arithmetic, greatest common divisor, Extended Euclidean algorithm, prime numbers, fast exponential

Cheung Cheuk Nam

2450

Advanced C++ STL

useful C++ features, STL functions/containers: bitset, policy-based tree, map, set, etc.

Wai Ka Hei

Week 8
2023-02-25
no training
Week 9
2023-03-04
2450

Graph (II)

shortest path algorithms for weighted graphs, minimum spanning tree

Cheung Cheuk Nam

2462

Greedy Algorithms

basic concept, explanation to several problems using greedy algorithms

Wai Ka Hei

2450Mini Competition (I)
Week 10
2023-03-11
2450

Dynamic Programming (II)

DP on trees/directed acyclic graphs, bitwise DP, DP dimension reduction techniques

Ng Yau Fu

2462

Recursion, Divide and Conquer

basic concept, exhaustion, branch and bound, Master Theorem

Chau Lai Yin

2450

Constructive Algos, Special Tasks (I)

constructive algorithms, introduction to interactive tasks

Ip Tsz Oi

Week 11
2023-03-18
2450

Data Structures (III)

sparse table, segment tree, lazy propagation, binary indexed tree

Liu Man Kai

see Note 1 2450Mini Competition (Teams)
Week 12
2023-03-25
2450

Graph (III)

algorithms on tree: application on pre-order/post-order, lowest common ancestor, tree diameter

Chow King Wang

2462

Graph (I)

basic concepts, graph representation, grid graph, depth first search, flood fill, breadth first search

Cheng Tsz Ying

2450

Mathematics in OI (II)

combinatorics and probability: nCr, nPr, sequences, inclusion/exclusion, expected value, counting

Yeung Man Tsung

Week 13
2023-04-01
2450

Dynamic Programming (III)

DP optimization tricks: monotone queue, convex hull trick, divide and conquer

Ng Yau Fu

2462

Dynamic Programming (I)

discussion of classical DP problems: knapsack, matrix multiplication, etc.

Chow King Wang

2450Mini Competition (II)
Week 14
2023-04-08
no training
Week 15
2023-04-15
2450

Graph (IV)

Graph Connectivity: cut edge, articulation point, bridge-connected component, strongly/weakly connected component, graph shrinking trick

Liu Man Kai

2462

Data Structures (II)

binary heap, binary search tree, hash table, disjoint-set union-find

Chan King Kai

2450

Computational Geometry

concept and implementation on basic computational geometry: point, line, segment, polygon, convex hull, etc.

Yuen Lok Kan Ethen

Week 16
2023-04-22
2450

Misc Problem Discussion

ad-hoc, and using various skills to tackle interesting problems

Yuen Lok Kan Ethen

2450Mini Competition (III)
Week 17
2023-04-29
2450

Data Structures (IV)

2-d binary indexed tree, cdq d&c, persistent data structures

Lee Cheuk Kit

2462

Graph (II)

shortest path algorithms for weighted graphs, minimum spanning tree

Cheung Cheuk Nam

2450

Constructive Algos, Special Tasks (II)

introduction to communication tasks / output-only tasks

Yuen Lok Kan Ethen

Week 18
2023-05-06
no training
Week 19
2022-05-13
2450Team Formation Test
14:00 – 19:00
Week 20
2023-05-20
2450Asia Pacific Informatics Olympiad
14:00 – 19:00
Week 21
2023-05-27
2450Concurrent & Parallel Programming
Li Cheuk Kit
2450

Graph (V)

centroid Decomposition, heavy-light decomposition

Chau Lai Yin