Computing & Informatics Olympiad Guide
A Student & Parent Guide to the British Informatics Olympiad, Programming Problem-Solving, Algorithms and Effective Preparation
The British Informatics Olympiad (BIO) is the UK's national computing competition for schools and colleges. Unlike ordinary Computer Science examinations, the competition focuses heavily on programming, algorithmic thinking and solving unfamiliar computational problems against the clock.
Students do not simply need to know how to write code. They need to determine what the problem is really asking, how to represent it computationally, which algorithm could solve it, whether the solution works for every valid input and whether the program is efficient enough.
A strong preparation pathway therefore looks like: Programming Foundations → Computational Thinking → Algorithms → Data Structures → Problem Solving → Testing → Optimisation → Timed Competition Practice.
The most recently published BIO rules are for BIO 2026. The competition was open to eligible students under 19 in full-time secondary or further, but not higher, education in mainland Britain. The first round consisted of a three-hour paper with three programming problems, supplemented by written questions.
Quick Guide to Computing & Informatics Olympiads
- Main UK competition
- British Informatics Olympiad
- Common abbreviation
- BIO
- Core focus
- Programming and computational problem solving
- Typical skills
- Algorithms, logic, data structures, efficiency and debugging
- 2026 first round
- 3 hours
- 2026 questions
- 3 main problems
- First-round programming language
- Any language
- Do students need Computer Science at school?
- No
- 2026 final
- Churchill College, Cambridge
- 2026 finalists
- Best 15 first-round competitors, plus additional EGOI candidates
- International pathway
- International Olympiad in Informatics (IOI)
- International team
- Four students selected for Britain
- Other pathways
- EGOI and WEOI selection also takes place
- Best preparation
- Programming + algorithms + repeated problem solving
01What Is Informatics?
Informatics competitions focus on solving problems through
- Algorithms
- Programming
- Logic
- Mathematics
- Computational Thinking
- Efficient Problem Solving
In this context, informatics is not simply learning how computers work. Students are asked to take a problem and convert it into a computational solution.
A useful model is: Problem → Model → Algorithm → Code → Test → Optimise.
02What Is the British Informatics Olympiad?
The British Informatics Olympiad is a national programming competition for school and college students.
Founded in 1995, BIO was established to encourage students to take an active interest in computing through challenging programming problems.
Students solve problems under competition conditions using
- A Computer
- Programming
- Logical Reasoning
- Written Problem Solving
03Is BIO Just a Coding Competition?
No. Knowing programming syntax is necessary, but it is only one part of successful competition performance.
Students also need to
- Understand Problems Precisely
- Design Algorithms
- Recognise Patterns
- Handle Edge Cases
- Estimate Efficiency
- Debug
- Test Solutions
- Reason About Correctness
A student who knows hundreds of programming commands may still struggle if they cannot design an effective algorithm.
04Who Can Enter the British Informatics Olympiad?
Under the 2026 BIO rules, entrants had to be: Under 19 years old, Studying full-time, At a secondary or further-education institution rather than higher education, Based in mainland Britain.
Entries were coordinated through a member of staff at the student's school or college. Eligibility should always be checked against the rules for the current competition year.
05Do Students Need to Study GCSE or A Level Computer Science?
No. BIO states explicitly that students do not need to be studying Computer Science to participate.
Some strong previous competitors have developed their programming skills independently. However, students still need sufficient practical programming ability to turn their ideas into working programs.
06What Is the BIO Competition Pathway?
- BIO First Round
- School-based programming competition.
- BIO Final
- Top-performing competitors invited to Cambridge.
- National Team Selection
- International Olympiad in Informatics
The BIO final is also used in selection for competitions including the European Girls' Olympiad in Informatics (EGOI) and the Western European Olympiad in Informatics (WEOI).
07What Was the BIO 2026 First-Round Format?
The 2026 first round consisted of 3 questions completed in 3 hours. The problems required programming solutions and were supplemented by written parts.
This means students needed to balance Programming, Mathematical Reasoning, Written Answers and Time Management.
08Can Students Use Any Programming Language?
For the 2026 first round, students could solve the programming tasks on any type of computer and in any programming language, according to the official competition rules.
This gives students flexibility to use a language they already understand well.
09Which Programming Language Should a Student Choose?
The best language for early preparation is usually one the student can use confidently. A suitable competition language should allow them to:
- Read Input
- Produce Output
- Use Loops
- Write Functions
- Manipulate Strings
- Use Lists/Arrays
- Implement Algorithms
- Debug Quickly
For beginners, clarity and fluency are more important than choosing a language simply because it appears advanced.
10What Language Is Used at the BIO Final?
The 2026 BIO final rules stated that competitors would use computers running Linux and that C/C++ would be available as the programming language environment. Competitors were given an opportunity to familiarise themselves with the environment before the contest.
Therefore, students aiming for national-final progression should eventually become comfortable with the competition environment specified for their year.
11What Happens at the BIO Final?
For 2026, the best 15 competitors from Round One were invited to the final at Churchill College, Cambridge, alongside additional students competing for EGOI selection.
The final involved Programming Problems and Written Problems.
12What Happens After the BIO Final?
The top four selected competitors form the team representing Britain at the International Olympiad in Informatics (IOI).
The BIO final is also used to select or contribute to selection for EGOI and WEOI.
13What Is the International Olympiad in Informatics?
The International Olympiad in Informatics (IOI) is an international programming competition for high-performing pre-university students. Competitors tackle complex algorithmic problems using computers.
The emphasis is on
- Algorithm Design
- Correctness
- Efficiency
- Implementation
At BIO 2026, the four highest-selected finalists were due to form Britain's IOI team.
14What Skills Does Competitive Informatics Test?
Successful students typically need a combination of:
- Programming Fluency
- Turning ideas into working code.
- Algorithmic Thinking
- Designing a method that solves the problem.
- Logical Reasoning
- Understanding why the method works.
- Mathematical Thinking
- Recognising structures, patterns and constraints.
- Efficiency
- Avoiding solutions that become too slow on larger inputs.
- Testing
- Finding cases where the solution fails.
- Debugging
- Identifying and correcting mistakes quickly.
15Coding vs Algorithms
This distinction is fundamental.
- Coding
- Writing instructions in a programming language.
- Algorithm
- The logical method used to solve the problem.
Algorithm = The Idea. Code = The Implementation of the Idea. Competition preparation must develop both.
16Why Strong Coders Can Still Struggle
A student may be able to build
- Websites
- Games
- Apps
- School Programming Projects
and still struggle with informatics competitions.
Why? Because competition problems often ask: can you discover an efficient solution to a completely unfamiliar problem? — rather than: can you build something using familiar programming tools?
17Why Mathematical Students Can Also Struggle
A strong mathematician may spot patterns and develop clever ideas but still need programming fluency. They must be able to convert: Reasoning → Algorithm → Working Program.
If implementation takes too long or introduces errors, a correct mathematical idea may not become a successful competition solution.
18Programming Foundations Come First
Before advanced algorithm work, students should be comfortable with:
- Variables
- Input & Output
- Conditions
- Loops
- Functions
- Lists / Arrays
- Strings
- Basic Data Structures
- Debugging
- Program Organisation
These skills should become sufficiently automatic that they do not distract from problem solving.
19Learn to Read a Programming Problem Properly
Before writing code, identify:
- Input
- What information does the program receive?
- Output
- What exactly must it produce?
- Constraints
- How large can the input become?
- Rules
- What operations or relationships define the problem?
- Examples
- Why do the sample inputs produce the sample outputs?
Only then should implementation begin.
20Do Not Start Coding Immediately
A common competition mistake is: Read First Paragraph → Start Typing.
Instead: Read → Understand → Model → Design → Then Code.
Five minutes of careful thinking can prevent 30 minutes of debugging the wrong approach.
21Write Small Examples by Hand
Before implementing an algorithm, try small cases. If a problem allows values up to thousands or millions, test manually with 1, 2, 3 or Small Custom Inputs.
Ask
- What changes?
- What stays the same?
- Can I identify a pattern?
- Can I simulate the process manually?
Small cases often expose the structure of the problem.
22Learn Simulation
Some competition problems describe a process that can be modelled directly, for example: Move objects, Transform strings, Update positions, Follow instructions, Change states.
A simulation solution follows these rules computationally. Students should learn when direct simulation is sufficient — and when it becomes too slow.
23Understand Brute Force
Brute force means systematically trying many or all possibilities. It is sometimes Perfectly Acceptable and sometimes Far Too Slow.
Students need to ask: how many possibilities could there be? Before rejecting brute force, estimate its actual cost. Before using brute force, check whether it can finish within the required time.
24Learn Algorithmic Efficiency
Two programs can produce exactly the same answer but require dramatically different amounts of work. Suppose one method performs roughly n operations while another performs n².
For small inputs, both may work. For large inputs, the difference can become enormous. This is why competition programmers need to understand algorithmic efficiency.
25Time Complexity
Students should gradually learn concepts such as O(1), O(log n), O(n), O(n log n), O(n²) and more expensive growth rates.
The purpose is not simply to memorise notation. Students should be able to ask: will this algorithm remain practical for the maximum input size?
26Why Input Constraints Matter
If a question says n ≤ 20, a very different algorithm may be possible compared with n ≤ 1,000,000.
Constraints are clues. They help students estimate which approaches might be intended. Always read them.
27Important Data Structures
As students progress, they may need structures such as:
- Arrays / Lists
- Stacks
- Queues
- Sets
- Maps / Dictionaries
- Priority Queues
- Trees
- Graphs
The goal is to understand: which structure makes the required operations efficient?
28Arrays & Lists
Arrays or lists are fundamental. Students should become comfortable with:
- Indexing
- Iteration
- Searching
- Updating
- Sorting
- Prefix Information
- Multi-Dimensional Structures
Strong array manipulation supports a large range of competition problems.
29Stacks & Queues
- Stack
- Last in, first out.
- Queue
- First in, first out.
These structures become particularly useful in
- Expression Processing
- Search Problems
- Graph Traversal
- Simulations
30Sets & Dictionaries
Sets and dictionaries can provide efficient ways to
- Check Membership
- Count Frequencies
- Remove Duplicates
- Store Relationships
- Map Keys to Values
Students should recognise when repeated linear searching can be replaced with more efficient lookup.
31Sorting
Sorting is far more than a basic programming exercise. Once data is sorted, many problems become easier. Sorting can support:
- Searching
- Grouping
- Greedy Decisions
- Duplicate Detection
- Interval Problems
- Order-Based Reasoning
Before inventing a complex method, ask: would sorting simplify the problem?
32Searching
- Linear Search
- Check elements one at a time.
- Binary Search
- Repeatedly halve a sorted search space.
More advanced competitive programming also uses binary search on an answer space, not only on arrays.
33Recursion
Recursion can be useful when a problem naturally breaks into smaller versions of itself. Examples include
- Tree Problems
- Backtracking
- Divide-and-Conquer
- Recursive Structures
Students should understand both how recursive calls work and when recursion becomes inefficient or unsafe.
34Backtracking
Backtracking explores possible choices while abandoning paths that cannot produce a valid solution. A common structure is: Choose → Explore → Undo → Try Another Choice.
It can be useful for
- Permutations
- Constraint Problems
- Path Finding
- Search Spaces
But students need to monitor how quickly the number of possibilities grows.
35Greedy Algorithms
A greedy strategy repeatedly makes what appears to be the best immediate choice. This can produce an optimal solution for some problems — but fail badly for others.
Students therefore need to answer: why is this greedy choice always safe? A plausible idea is not enough.
36Dynamic Programming
Dynamic programming is useful when Subproblems Repeat and Previous Results Can Be Reused. Instead of repeatedly solving the same smaller problem, store its result.
A common development path is: Brute Force Recursion → Identify Repetition → Store Results → Dynamic Programming.
37Graphs
Many real and abstract problems can be modelled as Vertices + Edges. Examples include:
- Road Networks
- Friendship Connections
- States
- Game Positions
- Dependencies
- Routes
Students should learn to recognise when a problem is secretly a graph problem.
38Breadth-First Search
Breadth-first search, or BFS, is particularly useful for problems involving
- Shortest Paths in Unweighted Graphs
- Minimum Number of Moves
- Layered Exploration
A queue is typically used to process states in increasing distance.
39Depth-First Search
Depth-first search, or DFS, explores deeply before backtracking. It is useful for:
- Connected Components
- Cycle Investigation
- Tree Traversal
- Reachability
- Search Problems
Students should understand both recursive and iterative implementations where appropriate.
40Shortest-Path Problems
As students advance, they may encounter weighted graph problems. These can require algorithms such as Dijkstra's Algorithm or other shortest-path techniques.
The key step is first recognising: this problem can be represented as a graph.
41Strings
Strings appear frequently in programming competitions. Students should practise:
- Character Processing
- Substring Logic
- Pattern Matching
- Frequency Counting
- Transformations
- Lexicographical Ordering
- Encoding
Strong string manipulation is especially valuable in early competition preparation.
42Mathematics for Informatics
Competitive programming often uses mathematical thinking. Useful areas can include:
- Divisibility
- Prime Numbers
- Modular Arithmetic
- Combinatorics
- Sequences
- Coordinates
- Geometry
- Probability
- Logical Invariants
Students do not necessarily need advanced school Mathematics for every problem, but mathematical maturity is highly valuable.
43Learn Modular Arithmetic
Modular arithmetic deals with remainders. For example: 17 mod 5 = 2, because dividing 17 by 5 leaves remainder 2.
It appears frequently in
- Cycles
- Large Number Problems
- Counting
- Number Theory
- Clock-Like Processes
44Combinatorics
Students may need to count
- Arrangements
- Selections
- Paths
- Possible States
- Valid Configurations
These problems can often be approached either mathematically or algorithmically. Strong competitors learn to move between the two viewpoints.
45Problem Modelling
A major competition skill is turning the story into something computational. A problem about People, Roads, Letters, Tiles or Games may really be about Graphs, Strings, Arrays, Dynamic Programming or Search.
Ask: what is the underlying structure?
46Correctness Matters Before Optimisation
A very fast wrong algorithm is still wrong. Preparation should follow: Understand → Build Correct Solution → Test → Then Optimise.
Students should avoid premature optimisation before they are certain what problem they are solving.
47Test Edge Cases
Programs often work on typical examples but fail at boundaries. Always test cases such as:
- Smallest Input
- Largest Input
- All Values Equal
- Already Sorted
- Reverse Order
- No Solution
- Exactly One Solution
- Repeated Values
- Extreme Numerical Values
The specific cases depend on the problem.
48Do Not Trust Sample Tests Alone
Passing the sample input only proves your program works on the sample input. It does not prove that the algorithm is correct.
Create additional tests. Ask: what situation might break my assumptions?
49Debug Systematically
When a program fails:
- 1. Reproduce the error
- 2. Find the smallest failing test
- 3. Compare expected vs actual behaviour
- 4. Trace variables
- 5. Identify the first incorrect state
- 6. Fix the cause — not merely the symptom
Randomly changing code is inefficient.
50Read Before Debugging
Sometimes the problem is not the code.
The student may have misunderstood
- Input Format
- Output Format
- A Boundary Condition
- A Definition
- The Required Result
Before rewriting code, reread the problem statement.
51BIO Programs Are Tested on Inputs
The 2026 BIO marking scheme shows that competition programs were black-box tested using specified test data. Programs had to produce correct outputs, and relevant tests were required to terminate within one second to receive marks.
This demonstrates why both Correctness and Efficiency matter.
52Written Questions Matter Too
BIO Round One is not purely about submitting code. The official structure includes Programming Tasks and Written Problems.
Students should therefore practise explaining reasoning and calculating results without depending entirely on running code.
53Read All Problems Before Committing
The official 2026 marking instructions encouraged competitors to read the questions before attempting their answers.
This is strong competition strategy. Students can identify
- The Most Accessible Question
- Problems Matching Their Strengths
- Likely Time Requirements
rather than automatically beginning with Question 1.
54Partial Progress Can Matter
A competition problem may have several parts or test groups. Students should not assume “If I cannot solve the whole problem, there is no point attempting it.”
A simpler or less efficient solution may still solve some cases. Understanding how to secure partial progress can be valuable in programming competitions.
55Build Solutions in Stages
Instead of trying to implement the perfect algorithm immediately:
- Stage 1
- Solve tiny inputs.
- Stage 2
- Build a correct general approach.
- Stage 3
- Test thoroughly.
- Stage 4
- Improve efficiency.
This reduces the risk of spending most of the competition implementing an advanced idea that never works.
56Past BIO Problems Are Essential Preparation
The BIO website maintains historical Competition Papers, Programming Problems and Mark Schemes for students and schools. The 2026 Round One page, for example, publishes both the paper and mark scheme after the competition.
These are valuable because they show authentic competition-style problems.
57How to Use Past Problems Properly
Avoid: Read Problem → Read Solution → Move On.
Use:
- Attempt
- Design your own solution.
- Implement
- Write the program.
- Test
- Create several test cases.
- Compare
- Review official material where available.
- Analyse
- Understand weaknesses.
- Reattempt
- Return later without assistance.
58Keep an Informatics Problem Journal
Students can track: Problem, Main Idea, What Went Wrong?, Key Learning, Reattempt — for example: 1. Simulation — Misread rule — Model states first — Yes; 2. Strings — Too many loops — Improve lookup — Yes; 3. Graph — Missed BFS — Model moves as edges — Yes; 4. DP — Recalculated states — Store previous results — Yes; 5. Greedy — No proof — Test counterexamples — Yes.
This helps convert individual problems into reusable knowledge.
59Categorise Programming Mistakes
- Understanding Error
- The problem itself was misunderstood.
- Algorithm Error
- The chosen method was incorrect.
- Complexity Error
- The solution was correct but too slow.
- Implementation Error
- The algorithm was correct but the code was wrong.
- Boundary Error
- Special or extreme inputs failed.
- Input/Output Error
- The required format was not followed.
- Timing Error
- Too long was spent on one task.
This classification helps students practise more intelligently.
60Reattempt Problems Without Looking
After understanding a solution, close the notes. Wait several days. Then attempt the problem again.
A student who can reconstruct the algorithm independently has learned significantly more than one who merely recognises the official solution.
61Avoid Memorising Code
Memorising entire solutions is weak preparation. Students should understand reusable ideas such as BFS, Binary Search, Dynamic Programming, Sorting, Frequency Counting but must still adapt them to new problems.
The objective is: recognise the pattern → adapt the algorithm, not copy a remembered program.
62AI Tools and Competition Preparation
AI can be useful outside formal competition settings for explaining concepts or reviewing learning when used responsibly. However, competition rules must always be followed.
For BIO 2026, the official marking instructions explicitly stated that students could not use AI code-generation tools during the contest. Internet use was also restricted, apart from online help required for the student's programming language.
Students should therefore practise solving and implementing problems independently.
63Build Independent Coding Ability
A student preparing for BIO should be able to:
- Start a Program from a Blank File
- Write Input Handling
- Implement an Algorithm
- Test It
- Debug It
- Improve It
without relying on generated code. That independence is a core competition skill.
64How Should Beginners Start?
A beginner should not immediately start with national-final problems.
Use: Programming Basics → Short Logic Problems → Simple Simulations → Search & Sorting Problems → Algorithmic Problems → Past BIO Questions → Advanced Olympiad Problems.
Difficulty should increase gradually.
65How Should More Advanced Students Prepare?
Students already comfortable with programming should focus increasingly on
- Algorithm Design
- Data Structures
- Complexity Analysis
- Graph Algorithms
- Dynamic Programming
- Proof of Correctness
- Timed Problem Solving
- Past BIO Problems
At higher levels, programming syntax should no longer be the main obstacle.
66Preparing for the BIO Final
Students aiming beyond Round One should prepare for a major increase in difficulty.
The 2026 final was held at Churchill College, Cambridge, with competitors using a Linux-based environment and C/C++ expected to be available.
Advanced preparation may therefore include
- C++ Fluency
- Standard Data Structures
- Efficient Algorithms
- Complexity Analysis
- Advanced Graph Problems
- Dynamic Programming
- Competition Environment Familiarity
67Learn C++ When Appropriate
Students do not need to abandon another programming language immediately simply because C++ is common in advanced competitive programming.
A sensible progression is: Learn Problem Solving First, then, when needed, Develop C++ Fluency.
Students should eventually understand
- Vectors
- Strings
- Maps
- Sets
- Queues
- Stacks
- Priority Queues
- Sorting
68Example Weekly Informatics Preparation Plan
- Session 1
- Programming fluency
- Session 2
- Algorithm/data-structure study
- Session 3
- 1–2 competition problems
- Session 4
- Debugging and solution analysis
- Session 5
- Reattempt previous problems
- Periodic
- Timed BIO-style practice
This is an example and should be adjusted to the student's experience.
69Three-Stage Preparation Plan
- Stage 1 – Foundations
- Develop Programming, Logic, Arrays, Strings, Functions, Basic Complexity.
- Stage 2 – Competitive Programming
- Develop Sorting, Searching, Recursion, Graph Search, Greedy Algorithms, Dynamic Programming, Data Structures.
- Stage 3 – Competition Readiness
- Use BIO Past Papers, Timed Problems, Mixed Algorithms, Performance Testing, Error Analysis, Reattempts.
70How Much Practice Is Needed?
There is no universal number of hours.
A useful measure is not simply how long did I code, but
- How many unfamiliar problems did I attempt independently?
- Which new algorithms did I understand?
- Which errors did I fix?
- Can I solve a similar problem without help?
Quality matters more than simply accumulating coding time.
71Measure Progress Properly
Look for improvement in
- Problem Interpretation
- Algorithm Selection
- Implementation Speed
- Accuracy
- Debugging
- Complexity Awareness
- Independent Thinking
- Performance on Unseen Problems
The strongest indicator is not memorising more code. It is solving increasingly unfamiliar problems independently.
72What If a Student Cannot Solve a Problem?
That is normal. Competition programming is deliberately difficult.
- 1. Solve smaller cases
- 2. Write the process manually
- 3. Identify the underlying structure
- 4. Build a brute-force solution
- 5. Look for repeated work
- 6. Consider a different representation
- 7. Take a small hint if necessary
- 8. Study the solution only after a genuine attempt
Struggling productively is part of learning.
73Study Solutions Actively
After reviewing a solution, ask:
- What was the key observation?
- Why does the algorithm work?
- What is its complexity?
- What would make my approach fail?
- Could I implement the solution independently?
- Can I recognise this pattern in another problem?
A solution should teach a strategy — not merely provide code.
74How Parents Can Support Informatics Preparation
Parents do not need to be programmers.
They can help by
- Providing Regular Practice Time
- Encouraging Independent Problem Solving
- Avoiding Pressure to Solve Every Question
- Supporting Participation Through the School
- Helping Balance Competition Work With GCSE/A Level Study
- Encouraging Students to Explain Their Approach
A useful question is “What algorithm did you try, and why?” rather than only “Did your program work?”
75Common Informatics Olympiad Preparation Mistakes
Students should avoid
- Learning Programming Syntax Without Problem Solving
- Starting to Code Before Understanding the Task
- Ignoring Input Constraints
- Using Brute Force Without Checking Complexity
- Optimising Before the Program Is Correct
- Testing Only the Sample Input
- Ignoring Edge Cases
- Copying Solutions
- Memorising Code Without Understanding
- Never Reattempting Problems
- Over-Relying on AI-Generated Code
- Doing Only Easy Problems
76Computing Olympiad Preparation Checklist
Programming Foundations
- Confident input/output
- Conditions and loops secure
- Functions understood
- Arrays/lists fluent
- Strings fluent
- Debugging practised
Algorithms
- Sorting
- Searching
- Recursion
- BFS / DFS
- Greedy reasoning
- Dynamic programming
- Complexity analysis
- Appropriate data structures
Competition Skills
- Past BIO problems attempted
- Edge cases tested
- Error log maintained
- Difficult problems reattempted
- Timed practice completed
- Current BIO rules checked
- School registration route confirmed
77Frequently Asked Questions
What is the British Informatics Olympiad?
The BIO is the national computing competition for schools and colleges in Britain, focused on solving programming problems under competition conditions.
Who can enter BIO?
For BIO 2026, entrants had to be under 19 and studying full-time in secondary or further, rather than higher, education in mainland Britain. Current-year eligibility should always be checked.
Do students need to study Computer Science?
No. BIO states that students do not need to be studying Computer Science, and some successful competitors have been self-taught.
How long is the first round?
The 2026 first round lasted three hours and consisted of three main questions.
Which programming language can students use?
For BIO 2026 Round One, students could use any programming language on any type of computer.
Is BIO only about coding?
No. It assesses algorithmic problem solving, programming, efficiency and written reasoning.
How many students reach the BIO final?
Under the 2026 rules, the best 15 first-round competitors were invited, alongside additional competitors involved in EGOI selection.
Where was the 2026 final held?
The 2026 final took place at Churchill College, Cambridge.
Can BIO lead to the International Olympiad in Informatics?
Yes. Four selected finalists form Britain's team for the IOI under the BIO pathway.
Are past BIO papers available?
Yes. The BIO website maintains historical competition questions and publishes papers and mark schemes, including the 2026 Round One materials.
How Dominis Supports Computing & Informatics Olympiad Preparation
Dominis follows a Foundations → Algorithms → Problem Modelling → Implementation → Testing → Debugging → Timed Practice approach, tailored to the student's current programming level and competition goals.
Programming Foundations
- Python / C++ Fundamentals
- Variables & Control Flow
- Functions
- Arrays & Strings
- Debugging
Algorithms & Data Structures
- Sorting
- Searching
- Stacks & Queues
- Sets & Maps
- Graph Algorithms
- Greedy Algorithms
- Dynamic Programming
Computational Problem Solving
- Problem Modelling
- Pattern Recognition
- Algorithm Design
- Edge-Case Analysis
- Correctness
- Efficiency
Competition Programming
- BIO-Style Problems
- Past-Paper Practice
- Timed Programming
- Debugging Under Pressure
- Performance Analysis
Ready to Take Computing Beyond the Classroom?
Foundations. Algorithms. Problem Modelling. Implementation. Testing. Debugging. Timed Practice.
Computing Olympiad preparation is not about memorising code. Speak to our Academic Support Team to discuss a suitable Computing & Informatics Olympiad preparation pathway.
Keep Exploring
More Olympiad Guides
- 1
Complete Guide to Academic Olympiads & Competitions
How Olympiads work, who they suit and how to prepare.
Read - 2
UKMT Maths Challenges: Complete Student & Parent Guide
The UKMT pathway, challenge levels and preparation strategies.
Read - 3
How to Prepare for Maths Olympiads
Building reasoning and Olympiad-level problem-solving skills.
Read