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

B7520YEUNG-B7520, City University of Hong Kong B7510YEUNG-B7510, City University of Hong Kong
B7510YEUNG-B7510, 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
Level A Level B For all trainees
Week 6
2025-02-08
B7520

Introduction to HKOI

orientation, competitive programming and Big-O

Yuen Lok Kan Ethen

B7520Solutions to HKOI and
HKGOI 2024/25 Final Event
Week 7
2025-02-15
B7520

Dynamic Programming (II)

topological Sort, DP on trees/directed acyclic graphs, bitwise DP, rolling array

Yuen Lok Kan Ethen

B7510

Programming in C++

useful C++ features & STL data structures, advanced C++ usage

Wai Ka Hei

B7520

Introduction to Linux

shell command and usage, file management, program development

Chan King Kai

Week 8
2025-02-22
B7520

Graph (III)

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

Chow King Wang

B7510

Optimization and Common Tricks

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

Wong Cheuk Kiu

B7520

Constructive Algos, Special Tasks (I)

constructive algorithms, machine building tasks, introduction to interactive tasks

Hsieh Chong Ho

Week 9
2025-03-01
B7520

Data Structures (IV)

revision on range query structures, lazy propagation, tries, persistent data structures, miscellanous tricks

Wong Chun

B7510

Graph (I)

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

Wong Cheuk Kiu

B7520Mini Competition (I)
Week 10
2025-03-08
B7520

Graph (IV)

graph connectivity: dfs trees, cut edge, articulation point, bridge-connected component, strongly/weakly connected component, graph shrinking trick

Wong Chun

B7510

Mathematics in OI (I)

computation and counting: greatest common divisor, modular arithmetic, fast exponential, prime numbers, combinations and permutations, inclusion/exclusion

Hsieh Chong Ho

B7520

Constructive Algos, Special Tasks (II)

introduction to communication tasks / output-only tasks

Yuen Lok Kan Ethen

Week 11
2025-03-15
B7520

Dynamic Programming (III)

DP optimization tricks: partial sum / heap speed up, monotone queue, convex hull using geometric approach, divide and conquer DP

Wong Chun

B7510

Data Structures (II)

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

Yuen Lok Kan Ethen

B7520Mini Competition (Teams)
Week 12
2025-03-22
B7520

Graph (V)

euler path, euler cycle, centroid decomposition, heavy-light decomposition

Yuen Lok Kan Ethen

B7510

Dynamic Programming (I)

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

Chow King Wang

B7520

MIPS and Computer Architecture

CPU, memory, instruction set architecture, MIPS programming, optimization

Hsieh Chong Ho

Week 13
2025-03-29
B7520

Flow and Graph Matching (I)

maximum flow, minimum cut, set partition model, graph modeling techniques

Yuen Lok Kan Ethen

B7510

Graph (II)

shortest path algorithms for weighted graphs, minimum spanning tree

Chow King Wang

B7520Mini Competition (II)
Week 14
2025-04-05
B7520

Flow and Graph Matching (II)

bipartite matching, hall’s marriage theorem, flows with demands, related problems

Chan Pak Hei

B7510

Data Structures (III)

segment tree, binary indexed tree, sparse table

Wong Cheuk Kiu

B7520

Mathematics in OI (II)

combinatorics: combinatorial thinking, sequences, bijection, sums and expected value

Wong Chun

Week 15
2025-04-12
B7520Mini Competition (III)
Week 16
2025-04-19
TBDBBQ
Week 17
2025-04-26
B7520

Misc Problem Discussion

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

Hsieh Chong Ho

Week 18
2025-05-03
B7520EGOI Team Formation Test
14:00 – 18:00
Week 19
2025-05-10
B7520Team Formation Test
14:00 – 19:00
Week 20
2025-05-17
B7520Asia Pacific Informatics Olympiad
14:00 – 19:00