MOL / PRIM / 01
Elementary maths
Number, shape and pattern, Klasse 1 to 5.
Open the syllabusGermany · Mathematik-Olympiade · Klasse 3 to 13
The Mathematik-Olympiade is Germany's large maths olympiad for schools, and it is not a test of speed. Its papers ask for answers that are argued, step by step, on paper. This page sets out the 66th olympiad from its organisers' pages, how a pupil takes part through school, what a full written solution looks like, and three problems of our own, one for each age band, with complete proofs and a short program that checks the small cases without proving anything.
Live online since 2020 · 10,000+ students worldwide · every answer argued, not just found
In short
Mathematik-Olympiade preparation at Modern Age Coders is a live online maths class in English for pupils in Germany from Klasse 3 to 13, through our Mathematik-Olympiade and Känguru Training course. Pupils solve original problems pitched at their Klassenstufe and learn to write the full, argued solutions the olympiad papers mark. A regular mentor matches each pupil's pace and accent, in groups of fifteen to twenty or one to one.
Where olympiad pupils start
One shaped around the German contests, one for teenagers who want to reach the international level, and one for younger pupils who are new to competition problems.

MOL / 01
Ages 8 to 18, grouped by Klassenstufe. Written proofs for the Olympiade, quick reasoning for the Känguru, weekly problems with one full solution.
Open the syllabus →
MOL / 02
For strong teenagers. Number theory, combinatorics, geometry and inequalities at olympiad depth, up to the level of international papers.
Open the syllabus →
MOL / 03
Roughly ages 10 to 14. A first season of competition problems, for pupils who find school maths too easy.
Open the syllabus →The 66th olympiad
In rounds that get harder each time, from the school to the Land and, from Klasse 8, to a national final. The Mathematik-Olympiaden e.V. is the organiser.
| Round | Date | Where and how | Who goes on |
|---|---|---|---|
| Schulrunde | From the start of the school year (earliest 1 August), set by each Land | Usually a homework round, or a paper at school | Successful pupils are invited to the Regionalrunde |
| Regionalrunde | 11 November 2026 | Four problems at a central place near the school | The best go to the Landesrunde |
| Landesrunde | 26 to 28 February 2027 | A one or two day written paper | Ends the contest for Klasse 3 to 7 |
| Bundesrunde | 30 May to 2 June 2027, Kaiserslautern | Two days, three problems a day, four and a half hour papers | Teams of up to 15 per Land, from Klasse 8 |
Sources: Bundesweite Mathematik-Wettbewerbe, Mathematik-Olympiade page (mathe-wettbewerbe.de/mo), and Mathematik-Olympiaden e.V. (mathematik-olympiaden.de), read on 2 and 3 November 2026. Dates for primary schools are often later, and the Landesbeauftragte of each Land publish the binding dates.
The organisers say pupils in Klasse 5 to 7 compete in three rounds and pupils from Klasse 8 in four. Primary schools have taken part since 2005, in three rounds for Klasse 3 and 4.
About 200,000 pupils take part every year, according to the organisers. The Bundesrunde brings together around 200 of them, and since 2014 it has included five guests from German schools abroad.
A problem committee of around 60 mathematicians writes about 150 different problems each school year, pitched to each Klassenstufe, the Mathematik-Olympiaden e.V. says.
For pupils who reach the Bundesrunde, the hosting Land pays board and lodging for the four days, so it costs the participants nothing.
Taking part
Through the school. The organisers send each round's papers to schools through the Landesbeauftragte, and they tell pupils to go straight to their maths teacher.
Source: Bundesweite Mathematik-Wettbewerbe, Mathematik-Olympiade FAQ on mathe-wettbewerbe.de/mo, read on 3 November 2026.
For 2026/27 the Schulrunde ran from the start of the school year into the autumn, and the Regionalrunde is already set for 11 November 2026. A pupil who did not take part this autumn will usually start with next year's Schulrunde, from August 2027 at the earliest.
That is not wasted time. Nine months of steady problem solving before the next Schulrunde is a strong preparation.
We are not connected with the Mathematik-Olympiaden e.V. or with Bildung & Begabung, and we do not enter pupils. Entry is the school's.
The organisers allow only non-commercial websites to republish old problems, and then without solutions. So we never copy them: we link to the organisers' archive and teach with problems we write ourselves.
Written solutions
The reasoning, not only the result. The organisers say the problems ask less for skill at calculation than for precise thinking, applying knowledge and finding creative solutions to unusual problems.
| A found answer says | A full solution also shows |
|---|---|
| "The answer is 18." | Why no smaller number works, and why 18 does |
| "I tried many cases and it always works." | An argument that covers every case, not only the ones tried |
| "It is obvious from the picture." | Which property of the figure is used, and why it holds |
| "The computer found no example." | A proof that no example can exist |
Our own checklist, used in class. The organisers' description of what the problems test is from mathe-wettbewerbe.de/mo, read on 3 November 2026.
Pupils who are quick at mental arithmetic often lose most marks here, because the answer arrived in their head and never reached the paper. Our classes slow that moment down. A pupil solves the problem, then writes the solution so that a stranger could check every step, then reads it aloud in English to the mentor, who asks the one question a marker would ask. Writing in English and explaining aloud are a good test: if a step cannot be said clearly, it usually is not yet understood.
Practice, ours
These three problems were written by Modern Age Coders for this page, one per age band. None is from the Mathematik-Olympiade or any other contest. The program at the end checks small cases; read why that is not enough.
How many three-digit numbers have digits that add up to 5?
Solution. Sort by the hundreds digit, which cannot be 0. If it is 1, the other two digits add up to 4: 04, 13, 22, 31, 40, so 5 numbers. If it is 2, they add up to 3: 4 numbers. Then 3 numbers for a hundreds digit of 3, 2 for 4, and 1 for 5 (the number 500). The total is 5 + 4 + 3 + 2 + 1 = 15, and the list is complete because every case of the hundreds digit has been counted.
Call a number balanced if its digit sum equals the digit sum of twice the number. Find the smallest balanced number above 9, and prove that every balanced number is divisible by 9.
Solution. A number and its digit sum leave the same remainder on division by 9. If n is balanced, n and 2n have equal digit sums, so they leave the same remainder; then 2n minus n, which is n, leaves remainder 0. So n is a multiple of 9. The multiples of 9 above 9 start with 18, and 18 has digit sum 9 while 36 also has digit sum 9. So the answer is 18. The converse fails: 333 is a multiple of 9, but 666 has digit sum 18.
For which whole numbers n is n² + 3n + 5 divisible by 11? Can it ever be divisible by 121?
Solution. Rewrite: n² + 3n + 5 = (n - 4)² + 11(n - 1), which is easy to check by multiplying out. The second part is always a multiple of 11, so the whole expression is divisible by 11 exactly when (n - 4)² is, and because 11 is prime that happens exactly when n - 4 is. So n must leave remainder 4 on division by 11.
Now write n = 11k + 4. Then (n - 4)² = 121k², and 11(n - 1) = 11(11k + 3) = 121k + 33. Together that is 121k² + 121k + 33, which leaves remainder 33 on division by 121 for every k. So the expression is never divisible by 121.
Every step holds for all whole numbers, not only for the ones anyone has tried. That is what makes it a proof.
def digit_sum(n):
return sum(int(d) for d in str(n))
# Problem A: three-digit numbers whose digits add up to 5
print("A:", sum(1 for n in range(100, 1000) if digit_sum(n) == 5))
# Problem B: smallest n > 9 with the same digit sum as 2n, and a check on 9
balanced = [n for n in range(10, 100000) if digit_sum(n) == digit_sum(2 * n)]
print("B:", balanced[0], "all divisible by 9:", all(n % 9 == 0 for n in balanced))
# Problem C: n*n + 3n + 5 for n = 1 to 10000
f = [(n, n * n + 3 * n + 5) for n in range(1, 10001)]
by_11 = [n for n, v in f if v % 11 == 0]
print("C: divisible by 11:", len(by_11), "all with n % 11 == 4:", all(n % 11 == 4 for n in by_11))
print("C: divisible by 121:", sum(1 for n, v in f if v % 121 == 0))It prints A: 15, then B: 18 all divisible by 9: True, C: divisible by 11: 909 all with n % 11 == 4: True and C: divisible by 121: 0.
The program agrees with all three solutions, which is reassuring. But look at what it actually did: it tested the numbers 1 to 10,000 for Problem C and found none divisible by 121. That cannot rule out a larger number, and an olympiad marker would give no credit for it. The algebra above covers every whole number at once. We use small programs like this in class for one purpose only: to test a guess before trying to prove it, and to catch an arithmetic slip in a solution. In the olympiad itself, as in any written paper, there is no computer and the proof is the whole answer.
Beyond the olympiad
For a few pupils, further: the organisers describe a path to the international olympiad. For everyone, to clearer thinking in school maths.
Bildung & Begabung says the six-person German team for the International Mathematical Olympiad is chosen through a selection contest, the AIMO, which invites top performers from the Mathematik-Olympiade Bundesrunde, the second round of the Bundeswettbewerb Mathematik and the maths winners at Land level of Jugend forscht. The AIMO begins each year at the end of November or the start of December.
The Bundeswettbewerb Mathematik is a separate, home-based contest for pupils on the way to the Hochschulreife, run over three rounds.
The Mathematik-Olympiaden e.V. keeps an archive of official problem sheets on mathematik-olympiaden.de, and puts the problems of the current round online after it has run. For the 66th Regionalrunde, Klasse 5 to 12, it gives 1 December 2026 as the date.
Working through old papers at home is free and useful. We send families to that archive; we do not copy from it.
Class times
After school or on weekend mornings. Our mentors are in India, where it is later in the day.
| Time in Germany | Time in India this winter (to 27 March 2027) | Time in India in summer (from 28 March 2027) |
|---|---|---|
| 15:20 | 19:50 | 18:50 |
| 17:40 | 22:10 | 21:10 |
| Saturday 08:45 | 13:15 | 12:15 |
| Sunday 12:15 | 16:45 | 15:45 |
German time under the Einheitenzeitgesetz is UTC+1 in winter and UTC+2 in summer. The switch back to winter time came on 25 October 2026; summer time returns on 28 March 2027. India runs on UTC+5:30 without any change, four and a half hours ahead of Germany in winter and three and a half in summer.
The rows are examples only, never a promised batch time. Around the Regionalrunde and the Landesrunde, one-to-one pupils often add a session of written practice under time pressure.
Milestones
Our own milestones for olympiad pupils. They set where a new pupil starts, and they show parents what has changed.
| Stage | Typical school years | The pupil can |
|---|---|---|
| 1. Careful counting | Klasse 3 to 5 | List cases in order and know when the list is complete |
| 2. Patterns and why | Klasse 5 to 7 | Spot a pattern and explain the reason behind it |
| 3. Remainders and parity | Klasse 6 to 9 | Use even and odd, digit sums and remainders to rule things out |
| 4. Full written proof | Klasse 7 and up | Write a solution a stranger can check, every step justified |
| 5. Papers under time | Klasse 8 and up | Solve and write up three or four problems in a long timed paper |
If you tried ten cases, you have a guess. Now find the reason, and you have a proof.
Write the solution for someone who has not seen the problem. Then check that they could follow it.
Ask your child to read one solution aloud each week. If it sounds clear, it is probably correct.
A Regionalrunde paper with one full solution is a real achievement. Praise the writing as well as the score.
More courses
Each course runs live in English with one steady mentor and can be taken in a group or alone.
MOL / PRIM / 01
Number, shape and pattern, Klasse 1 to 5.
Open the syllabusMOL / PRIM / 02
Number sense, ages 5 to 10.
Open the syllabusMOL / PRIM / 03
Logic and patterns, ages 7 to 12.
Open the syllabusMOL / MID / 01
Pre-algebra and geometry in depth.
Open the syllabusMOL / MID / 02
Test conjectures in Python, then prove them.
Open the syllabusMOL / MID / 03
Both German contests, by Klassenstufe.
Open the syllabusMOL / UPPER / 01
Algebra to calculus, in English.
Open the syllabusMOL / UPPER / 02
Leistungskurs and Grundkurs, alongside school.
Open the syllabusMOL / UPPER / 03
Counting and chance, carried further.
Open the syllabusHow classes run
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays.
After school
Mid to late afternoon German time.
Weekend morning
A quiet slot for longer written problems.
One to one
Agreed with the mentor, closer to each round if needed.
Written for teaching, by Klassenstufe.
Every answer argued on paper.
Pupils explain their proof in English.
Code tests guesses, never replaces proof.
Practice at olympiad length before each round.
The same teacher marks every solution.
Student work
Our students also build things; a few examples are below, and the student labs show more.

AI and ML
An AI nutrition coach that reads what you eat and works you toward a target.

AI and ML
A chatbot that answers mathematics and programming questions, built and deployed by a student.

AI and ML
An assistant that helps a young person recognise unsafe situations online.

Web app
A weather forecasting site with live conditions for any location.
Fees
The monthly fee includes eight live classes. It is quoted here in euro using the European Central Bank's reference rate, but taken in US dollars, which your bank converts at its own rate, so a small difference on your statement is normal.
Free first class
Free
no card required
Group batch
€90
a month, eight live classes, charged in US dollars
One to one
€134
a month, eight live classes, charged in US dollars
What families say
Google reviews written by our students and parents, left exactly as posted.
★★★★★
"The one step solution for my son. Modern Age Coders make learning coding so simple that kids love it. The teachers explain complex concepts clearly with practical exercises and interactive content."
Ria Mukherjee
Parent
★★★★★
"Modern Age Coders has been a game-changer for me. I struggled to grasp IT concepts and coding before joining, but their classes transformed everything. I can now confidently write complex programs with ease."
Samriddha Mondal
Student
★★★★★
"One of the most wonderful education centres out there. Education is not limited to school syllabus but focuses on skill development."
Vansh Agarwal
Student
★★★★★
"My child Dhairya is really enjoying the Modern Age Coders classes. This is his first online class and he eagerly looks forward to it. I can already see his improvement, and the teachers are very cooperative."
Sonam Oswal
Parent of Dhairya
★★★★★
"Modern Age Coders have wonderful teachers who teach in a clear, easy and practical way. The teacher boosts students' confidence and inspires them to learn without hesitation."
Sonu Goyal
Parent
★★★★★
"I highly recommend this computer coding class! The teachers are incredibly knowledgeable and passionate about coding."
Ritu Kedia
Parent
Families in Germany ask
No. Our classes are live and in English only, with a mentor who matches your child's pace and accent. We give the German maths words beside the English, so the olympiad paper itself holds no surprises.
The Mathematik-Olympiaden e.V. lists 11 November 2026 for the Regionalrunde of the 66th olympiad. The Landesrunde follows from 26 to 28 February 2027 and the Bundesrunde from 30 May to 2 June 2027 in Kaiserslautern.
Through school. The organisers tell pupils to ask their maths teacher, and schools receive the papers through the Landesbeauftragte of their Land. We are not connected with the organisers and do not enter anyone.
Yes. The organisers say primary schools have been part of the Mathematik-Olympiade since 2005, with three rounds for Klasse 3 and 4. Dates for primary schools are often later than for secondary schools.
No. The organisers allow only non-commercial websites to republish old problems, so we write our own in the same spirit, like the three on this page, and send families to the official archive on mathematik-olympiaden.de.
No. The papers ask for written, argued solutions. That is why our classes spend as much time on writing a solution clearly as on finding it.
Teams of up to 15 pupils per Land, from Klasse 8 upwards, according to the organisers. About 200 pupils take part, and for Klasse 3 to 7 the contest ends at the Landesrunde.
Weekdays or weekends, flexible: choose your batch, or for a very personalised plan choose 1-on-1 at your convenience, weekend mornings or weekdays. Younger pupils usually come after school, older ones often at weekends.
Fees appear in euro, converted with the European Central Bank's reference rate, and are paid in US dollars; your bank converts the payment, so the euro figure can differ slightly. The first class is free.
Yes. Our Mathematik-Olympiade and Känguru Training course prepares for both: written proofs for the Olympiade and quick, careful reasoning for the multiple-choice Känguru der Mathematik.
Elsewhere on this site
More for maths-loving pupils in Germany.
The full set of our Germany pages.
The Abitur papers, explained in English.
For younger children who like puzzles.
Where maths meets data.
A look inside a live class.
What our students have made.
Start here
In the first class the mentor gives your child one of our problems at their Klassenstufe, listens to how they reason, and asks them to write the solution, all in English and at your child's pace.
If you prefer to read more first, here is how our lessons run and the list of courses.
WhatsApp us · +91 91233 66161 · connect@modernagecoders.com
Lessons are live, online and given in English by mentors based in India. A WhatsApp message in English is the quickest way to ask us anything.
A priority demo is a full class of about 45 to 60 minutes. After the class the mentor sends a written skill report and a personal learning roadmap on WhatsApp. If you enrol, the demo fee is adjusted against your first month's fee. Share your demo Order ID with us on WhatsApp and we take it off.
Book a priority demo