Editorial for COCI '20 Contest 2 #3 Euklid
Submitting an official solution before solving the problem yourself is a bannable offence.
The first few subtasks can be solved in many ways; e.g. for , the simplest way is 
. The fourth subtask is just calculating 
 for 
; we can check that this covers all 
.
For the large subtasks, the main issue is to find solutions not larger than .
Notice that, if the problem can be solved for the given constraints, it must have a solution where few division steps occur in executing Edicul's algorithm. More precisely, the product of the numbers on the sand is a nice monovariant, which decreases by a factor of  in each step. Since 
 up to the last step, there can be at most 
 division steps for 
.
We can play with finitely many possibilities to find a construction similar to the following one. Let  be a positive integer such that 
. Construction:
Notice that  something small, such that 
 divides 
. Also, we have 
.
It's easy to see . Let's prove that 
.
We have  because 
. Hence, 
 since 
.
However, , thus 
 becomes 
 after 
 steps.
The time complexity is  per test case.
Comments