NeroZein's blog

By NeroZein, history, 2 years ago, In English

This year's Asia-Pacific Informatics Olympiad (APIO) will take place on the 18-th of May.

For those who don't know about APIO, it's an IOI-style competition with 3 tasks and 5 hours and it serves as one of the main team selection tests for IOI 2024 for most of the participating countries. You can find more on apio2024.org

Let's discuss problems/cutoffs/results here in the comments after the contest (and the mirror, if there's any) ends.

Looking forward to a great contest!

  • Vote: I like it
  • +157
  • Vote: I do not like it

| Write comment?
»
2 years ago, hide # |
 
Vote: I like it +52 Vote: I do not like it

I was also wondering, is getting a bronze/silver medal in APIO harder than in IOI ? and what would be a good strategy for someone aiming for them ?

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +36 Vote: I do not like it

    I have to say that the most important thing to notice is to participate when the server is not heavily in queue. The problems are not bad but the queue (at least for 2023 when I was a participant and 2021 from what I heard) was unbearable.

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +23 Vote: I do not like it

      I also suffered from the long queue last year, but unfortunately we always participate in the very first hours of the window and I don't have influence over this

      • »
        »
        »
        »
        2 years ago, hide # ^ |
         
        Vote: I like it +6 Vote: I do not like it

        My country is also participating in the first hours of the first day of the window and this leaves me really surprised as it seems like the people who can determine the participate time doesn't learn from their own mistakes.

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +31 Vote: I do not like it

      This year's APIO judging has been moved to qoj, so I think the situation might improve significantly

»
2 years ago, hide # |
 
Vote: I like it +16 Vote: I do not like it

GLHF

»
2 years ago, hide # |
 
Vote: I like it +8 Vote: I do not like it

good luck for all participants

»
2 years ago, hide # |
 
Vote: I like it +21 Vote: I do not like it

I'm in Hangzhou now, where it's held. Good luck!

»
2 years ago, hide # |
 
Vote: I like it +8 Vote: I do not like it

Ann will win APIO 2024!

»
2 years ago, hide # |
 
Vote: I like it +18 Vote: I do not like it

evenvalue will win APIO 2024!

»
2 years ago, hide # |
 
Vote: I like it +4 Vote: I do not like it

NeroZein will win APIO 2024!

»
2 years ago, hide # |
 
Vote: I like it +3 Vote: I do not like it

Everyone who gives APIO 2024 is a winner!

»
2 years ago, hide # |
Rev. 3  
Vote: I like it -10 Vote: I do not like it

Deleted

»
2 years ago, hide # |
 
Vote: I like it +14 Vote: I do not like it

In which level you have to be to get at least bronze in APIO? (first time participating)

»
2 years ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I am first time participating, but I'm curios about why APIO lets participants choose their start time, can it be a reason of cheating?

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    It is because of different timezones.

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      so in theory, there may be cheating? If yes, it's sad

      • »
        »
        »
        »
        2 years ago, hide # ^ |
        Rev. 2  
        Vote: I like it +25 Vote: I do not like it

        Yes. There can be, but in general, in all of these olympiads, there is a fairly large reliance on sportsmanship or self honesty, like the team leader of any team gets the problems a lot earlier in both IOI and IMO (I don't know about other olympiads, but at least for these two I do know for sure), and if they want to, they can pretty easily share it with their team. But this obviously goes against the spirit of the olympiad (and in fact, I think for most countries, even if the team leader did that, no student would be willing to cheat), so like there's not a huge reliance on fully cheating proof regulation. Of course, they try their best, but in the end, it falls to the participants themselves to uphold the spirit of the olympiads.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +2 Vote: I do not like it

    So that, everybody is at ease and nobody has to stress out to follow the chosen timeslot.
    Otherwise, multiple people would have time zones and other scheduling problems.
    Also, Read the rules, it says: Every participant is expected to show good sportsmanship by following the rules.

»
2 years ago, hide # |
 
Vote: I like it +85 Vote: I do not like it

owoovo will win APIO 2024!

»
2 years ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

This will also be the last contest of Taiwan's provincial team selection! Good luck to everyone competing for the last spot of Taiwan(Province of China)'s IOI team

»
2 years ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

How to solve practice session A problem?

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +5 Vote: I do not like it

    I think we should wait until the contest is over before discussing problems publicly.

  • »
    »
    2 years ago, hide # ^ |
    Rev. 4  
    Vote: I like it +14 Vote: I do not like it

    First, we can make $$$4$$$ arrays $$$gr, gl, sr, sl$$$ which stores for index $$$i$$$, what's the nearest greater value to the right, to left and smaller value to left and to right. This can be done using stack in $$$O(n)$$$. Now, let's consider the edges (there is an edge between $$$(i, j)$$$ if we can go from $$$i$$$ to $$$j$$$ in $$$1$$$ move i.e all elements in between are between $$$a_i$$$, $$$a_j$$$). Important thing to notice is that, we will take the edge which brings us closest to $$$r$$$ (considering the query $$$(l, r)$$$). Also, another observation is that it is easily determinable that whether $$$a_i$$$ is a min-point or max-point. We can just check that whether $$$a_{i + 1}$$$ is less or greater than $$$a_i$$$ and then we can't have $$$a_i$$$ as min if $$$a_{i + 1}$$$ is less than it (similar for other case).

    Assume that $$$a_i \lt a_{i + 1}$$$ since other case is similar. Now, $$$a_i$$$ is min and we want the max points. Note that the edges from $$$i$$$ are going to the changes in the max as we go towards right from $$$i$$$. Now, where will the last edge be? It will be to the maximum in the valid range. What is a valid range? the range will be valid such that the min point $$$i$$$ does not change. So, beyond $$$sr_i$$$ (the first index to the right of $$$i$$$ which have smaller value than $$$a_i$$$)we don't have any edge outgoing from $$$i$$$. So, we just get the max in the range $$$[i, sr_i)$$$. Now, we have $$$O(n)$$$ edges added in $$$O(n \space lg(n))$$$.

    We can also do binary lifting and store where do I land when I take $$$2^x$$$ edges.

    Now, when the query comes, we just go to the rightmost point we can from $$$l$$$ which is $$$\leq r$$$. What to do after that? We can now just do the same things we did for going in the right direction, for the left direction. Now, we starting going left from $$$r$$$ (using binary lifting). And we want the minimum jumps needed to get $$$r \leq l$$$. Now, we add both of the steps and we are done.

    Proofs of the observations are not hard, I believe that you should try them.

    Implementation
  • »
    »
    2 years ago, hide # ^ |
    Rev. 3  
    Vote: I like it +32 Vote: I do not like it

    I tried my best to divide the solution into reasonable parts, hopefully it'd be helpful.

    init
    calc_f

    P.S: It appears that there are some similarities between my sol and the sol above, which wasn't there when I started writing the comment.

»
2 years ago, hide # |
 
Vote: I like it +8 Vote: I do not like it

I don't like the idea of counting a compilation error as a submission. Still its not that bad, but counting in the rule of 1 minute pause is too bad. It can be so frustrating sometimes.

»
2 years ago, hide # |
Rev. 2  
Vote: I like it +3 Vote: I do not like it

Practice is over. Is there any standings?

»
2 years ago, hide # |
 
Vote: I like it +19 Vote: I do not like it

Is there going to be a mirror?

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Sadly no :(

    Although from Monday onwards it can be discussed, so wait for Monday :))))

»
2 years ago, hide # |
 
Vote: I like it +8 Vote: I do not like it

When will every country participated and I can discuss problems?

»
2 years ago, hide # |
 
Vote: I like it +16 Vote: I do not like it

According to regulation schedule, the contest window is over. But is it truly over? Are there anyone who didn't participate?

»
2 years ago, hide # |
 
Vote: I like it +16 Vote: I do not like it

When will ranking come out

»
2 years ago, hide # |
Rev. 2  
Vote: I like it +40 Vote: I do not like it

Asia-Pacific Informatics Olympiad

Asia-Pacific Graphs Olympiad

Anyway, I think problems were cool

»
2 years ago, hide # |
Rev. 2  
Vote: I like it +51 Vote: I do not like it

[Unofficial rankings]

Please add your scores in this spreadsheet

Edit: In case the public editing version is vandalized, you can view this backup

»
2 years ago, hide # |
 
Vote: I like it +28 Vote: I do not like it

Pakistan top 6

Ghulam_Junaid 100+0+100=200
Kaleem_Raza_Syed 100+0+100=200
Muhammad_Aneeq 100+10+5=115
Sir-Ahmed-Imran 100+5+5=110
M.UmairAhmadMirza 100+5+5=110
Muhammad-Saram 100+5+5=110

»
2 years ago, hide # |
 
Vote: I like it +184 Vote: I do not like it

China

56 300s.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +89 Vote: I do not like it

    This is in meme territory.

    • »
      »
      »
      2 years ago, hide # ^ |
      Rev. 2  
      Vote: I like it 0 Vote: I do not like it

      Btw, I realized this when compiling thoughts about the contest on Zhihu: the 4 teams with 300s averaged roughly one 300 per 25 million of population (slightly lower for Canada, but roughly works out via including Tianjin or half of Shanghai (which some of the contestants have ties with)...).

      So my general impression is that good performances on this contest mostly boiled down to having training geared towards such 3 problems, 4 hours, 200~400 lines of code contests. Over the past few years, I get this feeling that a lot of teams simply aren't training to solve standard OI problems anymore...

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +12 Vote: I do not like it

    💀

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    China's that one country where the first rank page is just filled with red users who are prob younger than 16....

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +39 Vote: I do not like it

    I heard 59... did you not count the CHN IOI team?

    On the flip side, CHN IOI team member ranks outside top 300? :manual-doge

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    I wonder how they will decide the official participants. There must be 6 from each country, right?

»
2 years ago, hide # |
 
Vote: I like it +71 Vote: I do not like it

Guys I totally did not write a random solution for C and got either only st3 correct or both st2 and st3 correct, and in the end wrote a sol for st1 specifically!!!

There were no dependencies set !!!

»
2 years ago, hide # |
 
Vote: I like it +52 Vote: I do not like it

In my opinion, not a good contest.

The first problem is too easy. It is probably the easiest one in APIO for years.

The second problem is good. A good problem about DP optimization and persistent DS. The official solution is a bit hard (even a LGM failed to pass the problem), but some algorithms with $$$O(n\sqrt{n\log n})$$$ passed.

But the third one is 'fantastic'.

The official solution is long and extremely hard, while there is a much easier solution which can pass at about n=75 in all test cases, and about n=600 at the worst case (if the interactive lib is perfect, which is obviously impossible). What's more, the problemsetter put an $$$X \le 25,000,000$$$ which is supposed to lead the contestants to approach the solution, but it made many people try to solve T2 (at least in China) and some of them failed, getting a low score; while some successfully gets 100 points in T3 using easy solutions.

It's amazing that NOBODY found the easy solution of T3 before the contest.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    I think all of the countries finished taking the APIO can you tell me the full solution for C 100 points?

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +11 Vote: I do not like it

      This is a very genius solution I heard from someone in the Errichto server: Connect for all $$$2 \le i \le n$$$, the vertices $$$X \pmod{i - 1} + 1$$$, and $$$i$$$. Clearly the first vertex is always less than the second, so there cannot be any cycles. On the other hand, the graph has exactly $$$n - 1$$$ edges. Thus, it must be a tree. In order to restore the answer, you can use CRT (chinese remainder theorem).

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +11 Vote: I do not like it

      Here is how I solved C.

      Solution
  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +6 Vote: I do not like it

    I agree. In my country the competition was only about 15 points because of easy problem A and hard BC. Maybe we have skill issue, but it's still bad to be able to get A in the first 20 minutes and struggle to get anything else the rest of the contest

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it 0 Vote: I do not like it

      In India, we have like 10 people at 115 (and some people like me got 110, because they were trying to do P3 subtask 2 the whole contest instead of implementing the remaining subtask on P2 but failed).

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +19 Vote: I do not like it

    I had the $$$O(n \sqrt{n \log n})$$$ solution during the contest but I didn't want to code it since the TL was 1s and $$$n$$$ was up to $$$10^5$$$, why weren't there any subtasks rewarding that solution especially that there aren't that many subtasks to think of in P2 and P3 :))

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +5 Vote: I do not like it

      On the technical committee end, I saw a whole bound of n^{1.5}logn get by in between 200-400ms.

      2 and 3 both could have had much harder subtasks: trying to get people to put up apio24p2hard and apio24p3hard on DMOJ at the moment...

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +18 Vote: I do not like it

      My solution is O(n^{1.75}) and it passed this problem.

  • »
    »
    2 years ago, hide # ^ |
    Rev. 2  
    Vote: I like it 0 Vote: I do not like it

    What is $$$n$$$ (in the third problem)?

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    Can you explain more about the solution of B?

»
2 years ago, hide # |
 
Vote: I like it +39 Vote: I do not like it

I think problem C was better as "minimizing n" problem(i.e. your solution is judged by the max n it uses)

  • »
    »
    2 years ago, hide # ^ |
    Rev. 2  
    Vote: I like it +11 Vote: I do not like it

    Cool! Then one of the solutions would be to sample and encode the points of polynomial with degree k such that at least k+1 points will survive.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +29 Vote: I do not like it

    Reasonable but it is impossible to have a perfect checker, so many solutions based on rng still works. For example, the 'best solution' so far requires 615 vertices in the worst case, but 75 vertices is able to pass all test cases. So the max n where you can get full marks can't be lower than 615 (unless better solutions are found), and some 'bad' solutions can still pass. Also, the solution mentioned above is obviously too easy for a problem C of APIO.

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +13 Vote: I do not like it

      Also I think it should specified that it was a random interactor since it is more fair to have actual information about the checker

      • »
        »
        »
        »
        2 years ago, hide # ^ |
        Rev. 2  
        Vote: I like it +44 Vote: I do not like it

        If the interactor was random, the problem would be totally different and would be too easy for APIO

        In an ideal situation, this problem could have been rejected but i guess they have 0 problems lol

        • »
          »
          »
          »
          »
          2 years ago, hide # ^ |
           
          Vote: I like it +27 Vote: I do not like it

          They have 8 extra problems. That's why we are unhappy 'bout the contest.

        • »
          »
          »
          »
          »
          2 years ago, hide # ^ |
           
          Vote: I like it 0 Vote: I do not like it

          If the interactor was random, it would have lead to more interesting and harder solution that can lower n drastically from 5000.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    The issue (not really, but) is that the author didn't have a key idea for solving this problem in smaller $$$n$$$. If they did know, there would be a lot of ways to improve the problem anyway (one of them would be the grader strategy).

»
2 years ago, hide # |
 
Vote: I like it +12 Vote: I do not like it

when will be results publish?

»
2 years ago, hide # |
 
Vote: I like it +273 Vote: I do not like it

A very hard contest.

Kevin114514 got 115.

»
2 years ago, hide # |
Rev. 2  
Vote: I like it 0 Vote: I do not like it

China score line: bronze (Cu) >= 115 silver (Ag) >= 200 gold (Au) >= 240

only got 140 :(

»
2 years ago, hide # |
 
Vote: I like it +93 Vote: I do not like it

A well known saying in China: "Instead of beating the problem, I only need to beat the author." The person who said it got accepted in C with $$$n=75$$$, and his algorithm's easy to hack.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +18 Vote: I do not like it

    but if u have a bigger n it is still OK to pass.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it +7 Vote: I do not like it

    What I mean is that this solution can beat the author, but I did pass this question using $$$n=75$$$ during the competition, and I can also guarantee to pass it when $$$n=615$$$.

    • »
      »
      »
      2 years ago, hide # ^ |
       
      Vote: I like it +29 Vote: I do not like it

      I guess your solution is to connect $$$(x\bmod i,i)$$$ for all $$$1\le i \lt n$$$. (The nodes are 0-indexed).

      With some modifications to the solution, it can be achieved for $$$n=101$$$, and the correctness is guaranteed.

      Instead of connecting $$$(x\bmod i,i)$$$, we can connect $$$(x\bmod a_i,i)$$$.

      sequence a (0-indexed)

      Proof:

      We need to prove that after deleting at most $$$49$$$ elements of $$$a$$$, the $$$\operatorname{lcm}$$$ of $$$a$$$ is still greater than $$$10^{18}$$$.

      The sequence $$$a$$$ only contains powers of prime numbers. Therefore, different prime numbers can be considered independent.

      For a prime $$$p$$$, let $$$p^k$$$ be the greatest power of $$$p$$$ that occurred in the sequence $$$a$$$, it is optimal for the grader to delete all $$$p^k$$$ first, then delete all $$$p^{k-1}$$$, ..., until $$$p$$$.

      We can use dynamic programming to calculate the maximum possible decrease of the $$$\operatorname{lcm}$$$ caused by the grader.

      • »
        »
        »
        »
        2 years ago, hide # ^ |
         
        Vote: I like it +10 Vote: I do not like it

        Great, A very wonderful solution.

      • »
        »
        »
        »
        2 years ago, hide # ^ |
        Rev. 2  
        Vote: I like it -8 Vote: I do not like it

        But how do you obtain the best sequence $$$a$$$?

        • »
          »
          »
          »
          »
          2 years ago, hide # ^ |
           
          Vote: I like it +13 Vote: I do not like it

          I don't know. But the length of best sequence $$$a$$$ is at least $$$85$$$, because $$$\operatorname{lcm}(1,2,\dots,42) \lt 10^{18}$$$.

          It's hard to determine whether a sequence is valid, so I restrict the elements in $$$a$$$ to be powers of prime numbers.

          Even though I added the condition, I can't find the best one that satisfies the condition.

          I used DFS with pruning(may cause missing the best one) to find a good one.

»
2 years ago, hide # |
 
Vote: I like it +41 Vote: I do not like it
A simple solution to Task 3
»
2 years ago, hide # |
 
Vote: I like it +45 Vote: I do not like it

The third problem "magic" is just a retard, but it also warns me that I'm a retard too. lol

»
2 years ago, hide # |
 
Vote: I like it +37 Vote: I do not like it

Me refreshing the ranking page for the 100000th time

»
2 years ago, hide # |
Rev. 2  
Vote: I like it -10 Vote: I do not like it

Easy idea for C

Get 2 nodes lets say 0 and 1 and connect them. Then we split X in to 64 groups for each bit. All nodes belonging to the first group will be connected to 1 if the bit at position 1 is '1'. Now we can just see if at least 1 node of group 1 is connected to node 0 then first bit is 0 otherwise first bit is 1. Then we can just reconstruct the number using its bits. We split the nodes to groups using some seed that will be constant no matter what X is.

  • »
    »
    2 years ago, hide # ^ |
     
    Vote: I like it -8 Vote: I do not like it

    What if the judge deletes all nodes of group 1?

    • »
      »
      »
      2 years ago, hide # ^ |
      Rev. 5  
      Vote: I like it +8 Vote: I do not like it

      I didn’t know the judge was smart but then don’t make one node for bit ‘1’ and ‘0’ but make 500 nodes for each let’s say and distribute the nodes among them

      EDIT: Idea 2 to fix this issue: If a group is all deleted then just imagine its from the node which has more deleted so for the case which all '1's are deleted then all the deleted nodes u would imagine they are from '1' if it uses its deletes evenly then there is a very high probability that the whole group didn't get deleted

      I think this is an easy idea compared to the other ideas I have seen

»
2 years ago, hide # |
 
Vote: I like it +8 Vote: I do not like it
My sol for C
»
2 years ago, hide # |
 
Vote: I like it +39 Vote: I do not like it

where is the standing

»
2 years ago, hide # |
 
Vote: I like it +30 Vote: I do not like it

This is quite appalling. They opened an appeal session but did not give any chance to do any resubmission (as in analysis mode). Neither do they publish on their website the task statements, the test data, nor the unofficial standings.

»
23 months ago, hide # |
 
Vote: I like it +76 Vote: I do not like it

Me refreshing the ranking page for the 1000000000th time

»
23 months ago, hide # |
 
Vote: I like it +58 Vote: I do not like it

At least give a date on which results will be published so that we need not refresh the page 1000000000 times daily

»
23 months ago, hide # |
 
Vote: I like it +5 Vote: I do not like it

Can somebody write editorial of problem A please!

  • »
    »
    23 months ago, hide # ^ |
     
    Vote: I like it +3 Vote: I do not like it
    Solution - Problem A
»
23 months ago, hide # |
Rev. 7  
Vote: I like it +135 Vote: I do not like it

Why is the APIO website just dead? There's no update so far after the contest.

We'll get GTA 6 before the unofficial ranking.

»
23 months ago, hide # |
 
Vote: I like it +30 Vote: I do not like it

Instead of waiting indefinitely, One suggestion would be to contact your country's delegation leader on this. He should be able to communicate directly with the APIO organizing team to know the status.

»
23 months ago, hide # |
 
Vote: I like it +67 Vote: I do not like it

The organizers have sent the PRELIMINARY results to the team leaders. According to it:

  • Gold >= 240 points (40 people)

  • Silver >= 200 points (39 people)

  • Bronze >= 135 points (33 people)

Remember, these results are NOT OFFICIAL, yet. Also, we should not expect them until 31st May.

»
23 months ago, hide # |
 
Vote: I like it +35 Vote: I do not like it

The long wait is over, and the ranking has been released.