The Central European Olympiad in Informatics (CEOI) is an annual informatics competition for secondary school students for central European countries. The 25th CEOI takes place in Warsaw, the capital of Poland.

This year, 13 countries will participate in the CEOI: Austria, Azerbaijan, Croatia, Czechia, Georgia, Germany, Hungary, Italy, Romania, Slovakia, Slovenia, Switzerland, and Poland. The full list of participants is available at: https://ceoi2018.pl/teams/

There will be two competition days: 8/14 and 8/16 (Tuesday and Thursday). We invite everyone to participate in the online mirror, hosted by the CS Academy (details). The contest will start both days one hour after the end of the onsite competition (at 13:00 UTC) and last 5 hours (till 18:00 UTC).

Further info can be found on the official website of the competition: https://ceoi2018.pl/ and our Facebook fanpage: https://facebook.com/ceoi2018/.

The first day of the competition has started. The scoreboard is available at https://ceoi2018.pl/liveranking/

Sorry, how to separate points of each problem? Why there is 5 columns and what they show us?

The first two problems (car and dis) were used during the trial session.

Okay, it's clear. Thank you.

Tasks, testdata and the presentation of day 1 solutions can be found at https://ceoi2018.pl/tasks/

Could you also publish implementations of model solutions?

We will add them soon.

Done!

The second day has started. The scoreboard is available at https://ceoi2018.pl/liveranking/

day 2 update: You can participate in the online mirror for the second day. It will start in 4 hours. (1 hour after the onsite contest ends)Is there an efficient way to generate multiplicative partitions of a number? Could be used to solve Toys Small.

Statements, test data and some details about solutions have been published: https://ceoi2018.pl/tasks/

The analysis of Toys seems to be missing from the Day 2 Presentation slides. Can you please add that?

Unfortunately, there were no slides for this problem.

Write a recursive function

`void rec(n, sum)`

that iterates over divisorsdofnand runs recursively`rec(n/d, sum+d-1)`

. That's too slow, so we must memoize states`(n,sum)`

not to enter them twice, and also memoize divisors in a`map<int, vector<int>>`

not to recompute that in each time.Alternative approach: think about it as DP and for every encountered

n(starting either from 1 or from the initial givenn) have a`set`

with possible sums. Also, when going to fromnton/dyou can pass divisors ofnand remove those that don't dividen/d, because the set of divisors ofn/dis a subset of the set of divisors ofn.And yeah, slides were only for FIB to avoid a lot of writing on the blackboard, and then the projector didn't work ;_;

The input file format in Triangles test data is quite cryptic, could you explain that — or publish the grader program used in the contest :)

I asked the adequate juror about that. Sorry!

And done as well!

You can solve all problems here: https://oj.uz/problems/source/358 We set the time limits as same as CSAcademy's.