The International Informatics Olympiad (IOI) is a programming competition, so the questions typically involve solving a problem using a computer program. The problems can be quite diverse, but they are designed to test a student’s ability to think algorithmically and to write efficient and correct code.
Examples of typical IOI questions include:
- Implementing a specific algorithm to solve a problem, such as finding the shortest path in a graph or sorting a list of numbers.
- Optimizing a given algorithm to make it run faster or use less memory.
- Debugging a given program that contains errors and making it work correctly.
- Designing a program to solve a problem that involves input/output processing, such as reading data from a file or generating a specific output format.
- Solving problems that involve mathematical or logical reasoning.
The questions are usually algorithmic and mathematical in nature. They require the participants to have a good understanding of basic programming concepts, data structures, and algorithms. The problems are designed to be challenging but solvable within the time limit, and are generally geared towards students with a strong background in computer science and mathematics.