We selected a few problems, which we think are good training material for programming contests. Each problem is assigned to some category and also to some level. We recommend to start with level 1 in order to make sure you know the basic tools. Then continue with level 2, 3 and finally 4. But you have guessed that, right?

Hide chapter hint.

chapitre | difficulté | problème | énoncé |
---|---|---|---|

ad hoc | ☆ | Advanced ASCII Cubes | [tju] [zju] |

ad hoc | ☆☆☆☆ | Australian Voting | [tju] |

ad hoc | ☆☆☆☆ | Babel Towers | [tju] |

ad hoc | ☆☆☆☆ | Blood Type | [tju] |

ad hoc | ☆☆☆☆ | Bullseye | [codejam] |

ad hoc | ☆ | City hall | [tju] |

ad hoc | ☆☆☆☆ | Common Item | [tju] |

ad hoc | ☆☆☆☆ | Cryptoquote | [tju] |

ad hoc | ☆☆☆☆ | DNA Sorting | [tju] |

ad hoc | ☆☆☆☆ | European railroad tracks | [tju] |

ad hoc | ☆☆☆☆ | Giant Screen | [tju] |

ad hoc | ☆☆☆☆ | Huffman Trees | [tju] [zju] |

ad hoc | ☆☆☆☆ | Interpreter | [tju] |

ad hoc | ☆☆☆☆ | Knights In The Zombie Land | [onlinejudge] |

ad hoc | ☆ | LC Display | [tju] |

ad hoc | ☆☆☆☆ | Matrix Swapping II | [tju] |

ad hoc | ☆ | Mine Sweeper | [tju] |

ad hoc | ☆☆☆ | Poker Hands | [onlinejudge] |

ad hoc | ☆☆☆☆ | The Trip | [tju] |

ad hoc | ☆☆☆☆ | Total flow | [tju] |

ad hoc | ☆☆☆☆ | X-Express | [onlinejudge] |

anagrams | ☆☆ | Anagram checker | [onlinejudge] |

anagrams | ☆☆ | Anagram Groups | [poj] [tju] |

arithmetic | ☆☆☆☆ | Factorvisors | [onlinejudge] |

backtracking | ☆☆☆☆ | Channel Allocation | [tju] |

backtracking | ☆☆☆☆ | Minimal length addition chain | [codility] |

backtracking | ☆☆ | Mirror Maze | [onlinejudge] |

backtracking | ☆☆ | Sudoku (16x16) | [tju] [spoj] |

backtracking | ☆☆ | Sudoku (9x9) | [tju] [spoj] |

backtracking | ☆☆☆☆ | The Triangle Game | [zju] |

bellman ford | ☆☆☆☆ | Haunted graveyard | [spoj] |

bellman ford | ☆☆ | Negative Cycles | [spoj] |

bellman ford | ☆☆ | Roads in Berland | [spoj] |

BFS | ☆☆ | Hike on a Graph | [spoj] |

BFS | ☆☆☆☆ | Kisu Pari Na 2 | [onlinejudge] |

BFS | ☆☆☆☆ | Knight Moves | [poj] |

BFS | ☆☆ | Ricochet Robots | [onlinejudge] |

BFS | ☆☆ | Traffic Jam | [icpcarchive] [tju] |

biconnected components | ☆☆☆☆ | Street Directions | [tju] |

biconnected components | ☆☆ | The Key Stations | [tju] |

binary search | ☆☆☆☆ | AggressiveCows | [spoj] |

binary search | ☆☆ | Egg Drop | [codejam] |

binary search | ☆☆ | Fill the cisterns | [spoj] |

binary search | ☆☆☆☆ | SpeedCameras | [codility] |

binary tree | ☆☆☆☆ | France'98 | [uni-ulm] [uni-ulm] |

binomial coefficients | ☆☆☆☆ | Hexagonal Routes | [tju] |

bipartite matching | ☆☆ | Dungeon of Death | [spoj] |

bipartite matching | ☆☆ | Muddy Fields | [spoj] |

bipartite vertex cover | ☆☆☆☆ | Playground | [tju] |

combinatoire | ☆☆☆☆ | Make it Manhattan | [tju] |

connected components | ☆☆ | The Ant | [spoj] |

convex hull | ☆☆☆☆ | Herding Frosh | [tju] |

data 1d | ☆☆ | Unique Encryption Keys | [icpcarchive] |

decoding | ☆☆☆☆ | Alien Numbers | [codejam] |

decoding | ☆☆☆☆ | All your base | [codejam] |

decoding | ☆☆☆☆ | Crazy Search | [tju] |

decoding | ☆☆☆☆ | IPNetworks | [tju] |

decoding | ☆ | Problem 3467 | [tju] |

DFS | ☆☆☆☆ | Caterpillar | [tju] |

DFS | ☆☆ | Mine | [tju] |

DFS | ☆☆☆☆ | Mine | [tju] |

DFS | ☆☆ | Playing Boogle | [onlinejudge] |

DFS | ☆☆☆☆ | Poor Wenwen | [tju] |

DFS | ☆☆☆☆ | The Die Is Cast | [tju] |

dictionary | ☆☆☆☆ | Incidental Points | [tju] |

dijkstra | ☆☆ | Almost the shortest route | [tju] |

dijkstra | ☆☆☆☆ | Dirt | [tju] |

dijkstra | ☆☆ | Dragon Maze | [codejam] |

dijkstra | ☆☆☆☆ | Hydrogenium | [codility] |

dijkstra | ☆☆☆☆ | Low Cost Air Travel | [icpcarchive] |

dijkstra | ☆☆☆☆ | The K-th City | [tju] |

dijkstra | ☆☆ | War | [tju] |

dilworth | ☆☆ | Stock Charts | [codejam] |

dilworth | ☆☆ | Taxi Cab Scheme | [icpcarchive] [poj] |

dilworth | ☆☆☆☆ | Wooden sticks | [poj] [tju] |

dinic | ☆☆ | Fast Maximum Flow | [spoj] |

dinic | ☆☆ | Maximum Flow | [spoj] |

dist grid | ☆☆ | A Famous Grid | [spoj] |

dynamic programming | ☆☆☆☆ | A Digging Problem | [codejam] |

dynamic programming | ☆☆☆☆ | Airbus vs. Boeing | [onlinejudge] |

dynamic programming | ☆☆☆☆ | Blocks | [onlinejudge] |

dynamic programming | ☆☆☆☆ | Brackets sequence | [tju] |

dynamic programming | ☆☆☆☆ | Bribe the Prisoners | [codejam] |

dynamic programming | ☆☆☆☆ | Chopstick | [onlinejudge] |

dynamic programming | ☆☆☆☆ | Cow Solitaire | [tju] |

dynamic programming | ☆☆ | Sweet and Sour Rock | [spoj] |

dynamic programming | ☆☆☆☆ | To The Max | [tju] |

eratosthene | ☆☆ | The Spiral of Primes | [icpcarchive] |

eulerian tour | ☆☆ | Free Tour | [spoj] |

eulerian tour | ☆☆ | Goldbach graphs | [spoj] |

expr eval | ☆☆☆☆ | Alien Language | [codejam] |

expr eval | ☆☆ | Boolean Expression | [tju] |

expr eval | ☆☆ | Cells | [spoj] |

expr eval | ☆☆☆☆ | Compile Error | [spoj] |

expr eval | ☆☆☆☆ | Matrix Chain Multiplication | [poj] |

expr eval | ☆☆☆☆ | Simplified Lambda-evaluations | [tju] |

expr eval | ☆☆ | Spreadsheet | [onlinejudge] [tju] |

expr eval | ☆☆☆ | Strange Expression | [tju] |

fast exponentiation | ☆☆ | Modex | [onlinejudge] |

fast exponentiation | ☆☆ | Tiling a Grid With Dominoes | [tju] [spoj] |

finite automata | ☆☆☆☆ | Language recognition | [onlinejudge] |

floyd warshall | ☆☆☆☆ | Edgetown's Traffic Jams | [onlinejudge] |

floyd warshall | ☆☆☆☆ | Stockbroker Grapevine | [tju] |

floyd warshall | ☆☆☆☆ | Word Ladders | [tju] |

gale shapley | ☆☆ | Stable Marriage Problem | [spoj] |

gauss jordan | ☆☆ | Ars Longa | [onlinejudge] [icpcarchive] |

geometry | ☆ | Center of Mass | [codejam] |

geometry | ☆☆☆☆ | Chocolate Chip Cookies | [tju] |

geometry | ☆☆☆☆ | Divide the land | [onlinejudge] |

geometry | ☆☆☆ | November Rain | [poj] [tju] |

geometry | ☆☆☆☆ | Shrinking Polygons | [icpcarchive] |

graph01 | ☆☆ | Finding Nemo | [tju] [zju] |

greatest monochromatic rectangle | ☆☆☆☆ | Largest Submatrix of All 1’s | [pku] [poj] |

greedy | ☆☆☆☆ | ABCD | [spoj] |

greedy | ☆☆☆☆ | Airport Walkways | [codejam] |

greedy | ☆ | Color A Tree | [tju] |

greedy | ☆☆☆☆ | Enter the dragon | [icpcarchive] |

greedy | ☆☆☆☆ | Feel Good | [tju] |

greedy | ☆☆☆☆ | Flags | [codility] |

greedy | ☆☆☆☆ | Homework | [tju] |

greedy | ☆☆ | Minimal Coverage | [onlinejudge] |

greedy | ☆☆ | Minimum Scalar Product | [codejam] |

greedy | ☆ | Novice41 | [spoj] |

greedy | ☆☆☆☆ | Prefix Suffix Set | [codility] |

grid | ☆☆☆☆ | Always Turn Left | [codejam] |

grid | ☆☆☆☆ | Number Steps | [tju] |

grid | ☆☆☆☆ | Spiral of Numbers | [onlinejudge] |

huffman | ☆☆ | Huffman Trees | [poj] |

huffman | ☆☆ | Variable Radix Huffman Encoding | [spoj] |

intervals cover | ☆☆ | Radar Installation | [tju] |

k-sum | ☆☆ | 4 Values whose Sum is 0 | [poj] |

knuth morris pratt | ☆☆ | A Needle in the Haystack | [spoj] |

knuth morris pratt | ☆☆ | Find the maximal product of string prefixes | [codility] |

kruskal | ☆☆ | Networking | [tju] |

kuhn munkres | ☆☆ | Selfish Cities | [spoj] |

levenshtein | ☆☆ | Advanced Edit Distance | [spoj] |

levenshtein | ☆☆ | Edit distance | [spoj] |

levenshtein | ☆☆ | The Separator in Grid | [tju] |

longest common subsequence | ☆☆ | Common Subsequence | [tju] |

longest common subsequence | ☆☆ | Longest Common Subsequence | [spoj] |

longest increasing subsequence | ☆☆ | Easy Longest Increasing Subsequence | [spoj] |

longest increasing subsequence | ☆☆☆☆ | Is Bigger Smarter? | [tju] |

longest increasing subsequence | ☆☆☆☆ | Longest Ordered Subsequence | [tju] |

longest path | ☆☆☆☆ | Ascending paths | [codility] |

longest path in a dag | ☆☆☆☆ | Edit Step Ladders | [tju] |

longest path in a dag | ☆☆☆☆ | Stacking Boxes | [onlinejudge] |

longest path in a tree | ☆☆ | Labyrinth | [spoj] [tju] |

longest path in a tree | ☆☆☆☆ | Labyrinth | [tju] |

longest path in a tree | ☆☆ | Longest path in a tree | [spoj] |

longuest common subsequence | ☆☆☆☆ | Greatest Common Increasing Subsequence | [tju] [pku] |

lowest common ancestor | ☆☆ | City Driving | [stanford] [stanford] |

manacher | ☆☆ | Casting Spells | [icpcarchive] |

manacher | ☆☆ | Longest Palindrome | [onlinejudge] |

matrix chain mult | ☆☆ | Mixtures | [spoj] |

matrix chain mult | ☆☆ | Optimal Array Multiplication Sequence | [tju] |

matrix chain mult | ☆☆ | The safe secret | [onlinejudge] |

maximum flow | ☆☆ | Crime Wave | [onlinejudge] [icpcarchive] |

maximum flow | ☆☆☆☆ | Down Went the Titanic | [onlinejudge] |

maximum interval intersection | ☆☆☆☆ | Magic Sticks Again | [tju] |

maximum matching | ☆☆☆☆ | Councilling | [onlinejudge] |

maximum matching | ☆☆☆☆ | Courses | [tju] |

median | ☆☆☆☆ | Pizza Delivery | [tju] [zju] |

min mean cycle | ☆☆ | Word Rings | [spoj] |

next permutation | ☆☆ | Anagram | [onlinejudge] |

next permutation | ☆☆ | GREAT+SWERC=PORTO | [onlinejudge] |

pattern matching | ☆☆☆☆ | Barcode of Judgment | [livearchive] |

permutation | ☆☆☆☆ | Crypto Columns | [tju] |

powerstring | ☆☆ | Period | [spoj] |

powerstring | ☆☆ | Power strings | [onlinejudge] |

predictive text | ☆☆ | T9 | [poj] |

prefix tree | ☆☆☆☆ | Phone Numbers | [poj] |

prim | ☆☆☆☆ | Freckles | [onlinejudge] |

random | ☆☆☆☆ | Aerobics | [codejam] |

range minimum query | ☆☆ | Tetris | [tju] |

reading | ☆☆ | Enormous Input Test | [spoj] |

rectangle max sum | ☆☆☆☆ | Finding Seats | [icpcarchive] |

rectangles from histogram | ☆☆ | Largest Rectangle in a Histogram | [tju] |

segment tree | ☆☆☆☆ | Ultra Quick-Sort | [tju] |

shortest path variants | ☆☆ | Almost the shortest route | [tju] |

shortest path variants | ☆☆ | Heavy Cargo | [tju] |

simulation | ☆☆☆☆ | Bot Trust | [codejam] |

sorting | ☆☆☆☆ | Common Permutation | [tju] |

sorting | ☆☆ | Disk Tree | [tju] |

sorting | ☆ | Editor Nottobad | [onlinejudge] |

sorting | ☆☆ | I am Lord Voldemort | [tju] |

sorting | ☆ | Walk | [tju] |

sorting | ☆☆☆☆ | What's Cryptanalysis? | [onlinejudge] |

stack | ☆ | Binary Trees | [tju] |

stack | ☆ | Insults | [icpcarchive] |

string | ☆☆☆☆ | Excessive Space Remover | [onlinejudge] |

string | ☆ | File Fragmentation | [onlinejudge] |

string | ☆☆☆☆ | Java vs C++ | [tju] |

strongly connected components | ☆☆ | Capital City | [spoj] |

structures | ☆☆ | A concrete ad_hoc | [spoj] |

structures | ☆☆ | Encryption | [spoj] |

structures | ☆☆ | Havannah | [codejam] |

structures | ☆☆ | Phone List | [spoj] |

subsetsum | ☆☆ | Boat Burglary | [tju] |

suffix tree | ☆☆☆☆ | Stammering Aliens | [spoj] |

sweepline | ☆☆☆☆ | Line Segments | [tju] |

sweepline | ☆☆☆☆ | Rectilinear polygon | [tju] |

sweepline | ☆☆ | Retour vers le futur | [prologin] |

sweepline | ☆☆☆☆ | The Skyline Problem | [onlinejudge] |

sweepline | ☆☆☆☆ | Weird Advertisement | [onlinejudge] |

topological order | ☆☆ | Ordering Tasks | [onlinejudge] |

topological order | ☆☆ | Project File Dependencies | [spoj] |

topological order | ☆☆ | Rare Order | [onlinejudge] |

traveling salesman | ☆☆ | Collecting Beepers | [tju] |

trie | ☆☆ | Spell checker | [onlinejudge] [icpcarchive] |

two sat | ☆☆ | Manhattan | [onlinejudge] |

two sat | ☆☆☆☆ | Seminar Room | [tju] |

two sat | ☆☆ | Soldiers on Parade | [spoj] |

union disjoint rectangles | ☆☆ | City Park | [icpcarchive] |

union find | ☆☆☆☆ | Heavy Transportation | [poj] [tju] |

union rectangles | ☆☆☆☆ | Rectangles | [tju] |