*Err.. I'm sorry for Tebak_Siapa_Aku, the official announcement is late, but here is it, just a couple of minutes after you posted the unofficial here :')*

Hello everyone! :D

Indonesia will hold 2016 National Olympiad in Informatics this week (May 16th — May 18th 2015) in Palembang, Indonesia. It is a competition for Indonesian high school students as one of the preliminary round of Indonesian IOI selection. The contest consists of three separated contests:

- Day 0 (Practice Contest): Monday, May 16th 14.00 — 17.00 (UTC +7)
- Day 1: Tuesday, May 17th 08.30 — 13.30 (UTC +7)
- Day 2: Wednesday, May 18th 08.30 — 13.30 (UTC +7)

And this is the second year for Indonesia (last year event : here) to invite everyone around the world to try solving the problems by participating the Open Contest! The Open Contest will be held in https://competition.ia-toki.org/.

There will be three different contests, one for each day. You may participate them separately (e.g. only participate in Day 1 and Day 2, but not in Day 0), but we expect you to join them all. **Unlike last year**, they are not virtual contests. The Open Contest will start after an hour from the real contest. Here are the schedule and details for the Open Contest:

- Day 0 (Practice Contest): Monday, May 16th 15.30 — 24.00 (UTC +7). Register here.
- Day 1: Tuesday, May 17th 09.30 — 14.30 (UTC +7). Register here.
- Day 2: Wednesday, May 18th 09.30 — 14.30 (UTC +7). Register here.

Several notes:

- No medals/certificates will be awarded to Open Contest participants.
- Each contest will have 3 IOI-styled problems.
- Problem statements will be provided in English and Indonesia.
- There is a submission limit of 30 for each problem.

We hope you will find many interesting problems here. Good luck and thanks for your participation! :D

**UPD** Open OSN is delayed for 30 minutes, it will start on 10.00.

**UPD** Registrations are open until the start of each contests, except for Day 0 (you can register at anytime before the end of the contest).

**UPD** The results are out! You can access Open OSN results here.

Thanks for all people who participated in this contest! We wish you had a great problemset and experiences, we are looking forward to your participation next year! :D

Indonesian National Olympiad in Informatics Committee

Auto comment: topic has been updated by saitammar (previous revision, new revision, compare).Can you provide a template code for problem 2 ? I still can't figure out how to interact.

I used

`while (cin >> n >> m) {}`

and got AC. But if I use`while (scanf("%d%d", &n, &m) == 2)`

or`while (scanf("%d%d", &n, &m) != EOF)`

, I got TLE.Assuming that you code in C++, here's the template if you're using

`cin`

and`cout`

:or

or if you're using

`scanf`

and`printf`

:Just a note for those red coders who are looking for challenge (or maybe IOI warmup) :

This contest is one of the first round in choosing Indonesian IOI 2017 team. We still have like around 90 people and we will choose the medalists (around 30 people) to advance to the next round. Thus, the problems on this contest may not be as challenging as you think. As a comparison, I predict the hardest problem in this contest will not be harder than standard Div 1 C problem. (just a prediction, I am not inside the committee).

We will usually have harder problems for later rounds of selection, but unfortunately we don't normally open those contests for public.

Auto comment: topic has been updated by saitammar (previous revision, new revision, compare).Seems like one cannot register after contest starts. Can you please register me? Same handle.

Unfortunately, the registrations are open until the start of each contests. The only exception is for the Day 0.

You can still participate on Day 2 afterall :)

How to solve the last subtask of the interactive problem?

I'll post problem description here, so everyone can enjoy this problem :)

The Problem: Taming a BombAmpera Bridge, the famous landmark of Palembang City is in danger! A terrorist has sticked a bomb in the middle of Ampera Bridge. The bomb cannot be removed and it can explode anytime.

The bomb has N buttons, labeled from 1 to N (inclusive). It will explode right after pushing any of those buttons T times except one thing as follows.

Among the buttons, there is exactly one button, namely X. The bomb is designed so that when X has been pushed, it will sound “BIP” but delayed at next K button pushings after it was pushed. In other word, if X was pushed at the i-th push, its “BIP” can be heard at the (i+K)-th push. K is between 0 to N-1.

Whenever the "BIP" has been heard for N times(not necessarily consecutive), the bomb can be deactivated (tamed), of course, as long as the total number of button pushes does not exceed T times.It is already known that there are two types of the bombs: type-0 and type-1. Type-0 is exactly as described above. Type-1 has additional behavior that will explode as after a “BIP” heard, the next “BIP” is not heard in more than N next button pushes.

Pak Dengklek is a top bomb tamer, but he have to realize that this case is not as easy as the thought. Your task is to help him to find a sequence of button pushes for deactivating the bomb.

Interaction FormatIn this problem, you you will interact with the jury.

The first line contains the test case label. A test case label is a string with the following description:

For example, if the test case label of a task is

`0..345`

, then:Your program is expected to output an integer between 1 to N, which means you push the button with that label. The interactive program will response with “BIP” if after the button is pushed, the bomb outputs the sound “BIP”; or the interactive program will response with “HENING” (means “SILENT”), otherwise. As long as the bomb has not been tamed or has not exploded yet, you are asked to push the next button.

Interaction ExampleJudge'sOutput

Juri

Participant'sOutput

ExplanationEven when the button X = 3 is pushed,

the bomb does not directly output the BIP sound,

but it is heard in the next

K= 2 pushes.Observe that even though the button X is not pushed,

the BIP is heard as the result of pushing X in the previous K-th pushes.

Even when

N= 4 pushes of the X button,still the bomb has not been tamed.

HENING for

Ntimes, the BOMB WILL EXPLODE if it is type-1.The bomb is tamed after the N-th BIP is heard.

Your program is succeed if (all should be true):

Your program is failed if (at least, one should be true):

SubtasksIn all subtasks, the following applies:Subtask 1 (8 points)Subtask 2 (9 points)Subtask 3 (8 points)Subtask 4 (10 points)Subtask 5 (11 points)Subtask 6 (13 points)Subtask 7 (16 points)Subtask 8 (25 points)After reading the problem you may play "Taming a Bomb" game manually

Step by step solutionThere is special sequence of button pushes such that after hearing "BIP" twice we know exactly where the X button is. Also that special sequence guarantee that the second "BIP" will be no more than than N button pushes apart with first "BIP"

What is that special sequence?The special sequence is defined like this:

`inc`

as strictly increasing sequence size`N`

from`1`

up to`N`

`dec`

as strictly decreasing sequence size`N`

form`N`

down to`1`

`hdec`

as strictly decreasing sequence size`floor(N/2)`

from`floor(N/2)`

down to`1`

Then the special sequence is formed like this:

`hdec`

,`inc`

,`dec`

,`inc`

,`dec`

,...For example if

`N = 7`

then the special sequence is:`3,2,1,1,2,3,4,5,6,7,7,6,5,4,3,2,1,1,2,3,4,5,6,7,7,6,...`

Why this sequence work?This sequence work because for every number (1 to N) the first two occurrence of each number is no more than N distance apart, so if you press that button in that sequence until we hear second "BIP" the bomb will not explode in all cases (both

`R = 0`

or`R = 1`

).Since X is one of the button and K is less than N we will hear two "BIP" in at most

`2*floor(N/2) + 2N`

button pushes, and the for all subtask`T >= 5N`

(`T = 5N`

for last subtask) so we already used more than half of the button pushes limit in worst case for the worst (last) subtask. After we hear two "BIP" using this sequence we know X button, so just press the X button until we hear "BIP" N-2 more times (we already hear 2 "BIP"s before we know X) and terminate the program so the total number of button pushes in wort case will be:`2*floor(N/2) + 2N + K + (N-2) < 5N`

button pushes because in all subtask`K < N`

. Now the remaining problem is:How do we know button X after hearing BIP twice?First lets denote the time distance between the two "BIP" with

`dist`

We can find X by

`dist`

and by when (in which sequence or in which button number) we hear the first or second "BIP" (is it in`hdec`

sequence or in`inc`

sequence or in`dec`

sequence), let's divide this by three cases:`hdec`

sequence: Because`hdec`

sequence occur only at the start of special sequence so at this time no number in the sequence appear twice so it's impossible we hear second "BIP" in this case.`inc`

sequence [or we hear second "BIP" in first`dec`

sequence but we hear first "BIP" when we push the button withlower button numberthan when we hear second "BIP"]: Then the X button will be in`1+floor(dist/2)`

because`K < N`

and some special property in this special sequence so the button that caused the second "BIP" must be in`inc`

sequence.`inc`

sequence [or we hear second "BIP" in first`dec`

sequence but we hear first "BIP" when we push the button withhigher or equal button numberthan when we hear second "BIP"]: Then the X button will be in`N-floor(dist/2)`

because`K < N`

and some special property in this special sequence so the button that caused the second "BIP" must be in`dec`

sequence.The proof why 1+floor(dist/2) or N-floor(dist/2)Please, do it yourself :p I'm tired explaining, or you can check it yourself by playing the game.

Will the contest allow upsolving ? I tried but after I clicked on Submit, it jump back to the announcement page.

The contest problems will be added to Training later (after day 2 contest ended). Actually I'm not sure about when the problems will be added there for this kind of contest.

It will be added to this archive, but not all the problems are provided in English. Currently, the only problemset which have English description is OSN Informatika 2015 (last year National Olympiad in Informatics).

Good luck for day 2! :)

When will you publish the scoreboard? (Both official and open contests)

The closing for the Olympiad itself will be held two days from now (on Friday). So, I guess the scoreboard will be published not long after the closing has ended...

Haven't they published the scoreboard yet?

The results are out! :D

You can access Open OSN results here.

Thanks for all people who participated in this contest! We wish you had a great problemset and experiences, we are looking forward to your participation next year! :D