FelixArg's blog

By FelixArg, 4 months ago, In English

Neapolis University Pafos

Hello Codeforces!

The series of Educational Rounds continues thanks to the support of the Neapolis University Pafos.

On Jun/09/2026 17:35 (Moscow time) Educational Codeforces Round 191 (Rated for Div. 2) will start.

This round will be rated for the participants with rating lower than 2100. It will be held on extended ICPC rules. The penalty for each incorrect submission until the submission with a full solution is 10 minutes. After the end of the contest, you will have 12 hours to hack any solution you want. You will have access to copy any solution and test it locally.

You will be given 6 or 7 or 67 problems and 2 hours to solve them.

The problems were invented and prepared by Ivan BledDest Androsov and me. Also, huge thanks to Mike MikeMirzayanov Mirzayanov for great systems Polygon and Codeforces.

We would also like to express our gratitude to the problem testers: ashmelev, awoo, FairyWinx, Alenochka, basalov_yurij, robotolev, dariasaligina, Matrosk1n, Fucking_Specialist, Ya-chmen, Loller4ik, adedalic, shnirelman, pusheen_1024, _OCHEPYATKA_, paomur, nik1998, fisym, Galina_Basalova. Thank you for helping us prepare the contest!

Our friends at Neapolis University Pafos have a final, urgent message:

LAST CHANCE: Only 2 Days Left to Apply for CSAI!

The final admission round for the BSc in Computer Science and Artificial Intelligence at Neapolis University Pafos closes the day after tomorrow.

Final Application Deadline: June 9, 2026.

Don't miss your chance to apply for one of up to 40 JetBrains Foundation Scholarships covering:

  • full tuition

  • accommodation

  • monthly stipend

  • visa support

Start your application now and secure your place! The Mandatory Entrance Test is scheduled for June 14, 2026.

Good luck to all the participants!

UPD: Editorial

  • Vote: I like it
  • -35
  • Vote: I do not like it

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Auto comment: topic has been updated by chillingjellyfish (previous revision, new revision, compare).

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

i love carrots

»
4 months ago, hide # |
 
Vote: I like it +7 Vote: I do not like it

Let the meme die peacefully.

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I see what u did there

»
4 months ago, hide # |
Rev. 2  
Vote: I like it +6 Vote: I do not like it

FelixArg 67 problems in 2 hours to solve......

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

W-what did he s-say...

»
4 months ago, hide # |
 
Vote: I like it +29 Vote: I do not like it

Wow 67 problems that's not a good choice

»
4 months ago, hide # |
 
Vote: I like it +16 Vote: I do not like it

67 problems,plz

»
4 months ago, hide # |
 
Vote: I like it +9 Vote: I do not like it

So 67 problems in 2 hours? Finally a real challenge for Tourist

»
4 months ago, hide # |
Rev. 2  
Vote: I like it +32 Vote: I do not like it

What if there are actually 67 problems?

You could choose ξ for instance.

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

actually, i think it will be 67 problems

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

It's not a good idea to have 67 problems in a round:)

»
4 months ago, hide # |
 
Vote: I like it +37 Vote: I do not like it

$$$6 | 7 | 67 = 71$$$

This means that we are going to have 71 problems

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

67 problems in 2 hours

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

So what if there are 67 problems?

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

You will be given 6 or 7 or 67 problems and 2 hours to solve them. If there are 67 problems, avg time = 2*60/67 ~= 1.79 min per problem... 6767676767676

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

It's interesting, but I still love China.

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

67 problems? Do you really think it's a good choice? -_-

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

    вместо того чтобы блокать просто ответь

    я хотел написать что у тебя нет доказательств про курсы питон,с++,2 место в олимпиаде и т.д. также если заедает enter то почему в лёгких задачах по типу A,B у тебя всё норм, а в задачах другой сложности такие сильный подозрения на ИИ. Я собрал где-то 10 посылок с 5 последних раундов и в скором времени хочу выложить пост по поводу этого. Надеюсь на бан явного читера. хаххахахах сидит на середине алгоритмов по питону и говорит полный курс питона и с++.Я знаю о тебе больше чем ты думаешь

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

As a glumbus, hope my computer doesn't set on fire this round

edit: It didn't :D

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

How u guys check the contest problems rating after the contest? is there any site or something?

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

67 to solve in 2 hours that in more than 1 problem we should solve every minute

»
4 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

67 Problems in 2 hrs...

Never thought CF had rapid fire coding rounds too

»
3 months ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

Editorial will be released in 67 parts, one for each problem.

»
3 months ago, hide # |
 
Vote: I like it +20 Vote: I do not like it

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I'm glad I could participate in testing some of these problems. The problems are really good and interesting. Good luck to everyone in this Educational Div. 2!

»
3 months ago, hide # |
 
Vote: I like it +7 Vote: I do not like it

Sorry, i voted for negative to hold +**67**!

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

67

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

how 67 problems in 2 hours??

  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it +4 Vote: I do not like it

    It's basically:

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

      who ask bro???

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

        Your chatgpt!

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Guys, downvote this blog to keep it +67.

Plot twist:
»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

67 problems in one contest! That's going to be a great experience.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

https://codeforces.me/blog/entry/154343

Participate in this contest great problem are there in this contest

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

how can we solve 67 problems in 2 hours

»
3 months ago, hide # |
 
Vote: I like it +4 Vote: I do not like it

why did i write this contest?

»
3 months ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

greedyforces

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

please publish the editorial, it helps me a lot... thank you

»
3 months ago, hide # |
 
Vote: I like it +12 Vote: I do not like it
  1. I'm curious, why does problem D not ask for the operation to be performed? Are there solutions where determining feasibility is much simpler than finding the actual operation? That is not the case for my solution.
  2. How to solve E? I made a lot of observations, but nothing seems to lead to a concrete solution.
  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    For E, say you have x strings with A ones and y string with B ones

    Construct any permutation, let's say 1,2,3,4...n construct the strings how many have A ones and how many have B ones? If the answer is not x and y, there is no solution

    Otherwise Now we know that x of the strings are to be placed in x known positions, but we don't know how many valid ways there are to do this, and we know y strings have y places but don't know how to distribute them either

    You can try any way, if it works, then all ways work, and the answer is A! * B! otherwise, no way will work and the answer is 0

    If he have some strings with A ones, some with B ones, some with C ones, etc... Then the answer is either A! * B! * C! *... Or it is 0, we just repeat the same process by constructing our own strings from a random permutation and checking whether we get the same number of ones in string

    To prove that if one way works then all work, and one way doesn't work then none of them work, Notice that if we swap 2 strings, let's say representing bits x and y then numbers in the permutation with both bits x and y set, or both unset, remain unchanged

    Numbers with x set and y unset or vice versa, they just swap places (try to trace some examples to see this) so if a number is < 1 or > n or a duplicate, therefore making the array not a permutation it doesn't disappear by swapping around strings, so the array remains not permutation

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

    For E, first it is clear that each of the given strings must end up at a position that has the correct number of bits (i.e. the bitcount of the string in the $$$k$$$'th position must be equal to the number of numbers at most $$$n$$$ that have the $$$k$$$'th bit set).

    The key observation now is that if any such arrangement satisfying this property produces a valid permutation, then all such arrangements will also satisfy such an arrangement. To prove this, let $$$(S_1, \ldots, S_k)$$$ be a valid arrangement, and note that every other valid arrangement can be generated by repeatedly swapping $$$S_i$$$ and $$$S_j$$$ that have equal bitcount. None of these swaps will flip the validity of the arrangement (after each swap, all numbers stay distinct, and it's not hard to check that none of the numbers end up exceeding $$$n$$$). Thus, if any one arrangement works, they all work, and the answer ends up being the product of several multinomial coefficients.

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

    Solution to $$$E$$$.

    We don't know the order of numbers. Let's try to sort them from $$$1$$$ to $$$n$$$ starting from greater bits.

    For the first (greatest) bit do the following. First we have to choose the row, which will correspond to it. The only criteria is the number of bits in the row: they have to be equal. For example, for $$$n = 6$$$ the greaters bit's row has to have $$$3$$$ bits: for numbers $$$4$$$, $$$5$$$ and $$$6$$$. Let's multiply the answer by number of such rows. And then swap one of these rows with the last row.

    Next we need to reorder columns (numbers themselves), such that bits in newly placed row are in correct positions. Let's swap columns, so that they placed correctly.

    And this was the first iteration.

    Assume input:

    n = 6
    011001
    100011
    010110
    

    In this case we need to place at bottom the row with exactly $$$3$$$ bits. All rows satisfy this. Thus multiply answer by $$$3$$$ and move one of the satisfied rows to bottom (but we don't need it here).

    Next, we need to have the following picture:

    xxxxxx
    xxxxxx
    000111
    

    We can do this by swapping second and sixth columns:

    011001
    110010
    000111
    

    Then we proceed to the next bit. We do the same, but now we can't swap columns, if one of them is $$$\le 3$$$ and the other is $$$\ge 4$$$, otherwise it will break the last row. Those boundaries split row by segments. We need to find the row, which on every segment has the same number of bits, as the required segment. For example, now the second row has to be $$$011001$$$. So we need row, which on segment $$$[1,3]$$$ has two bits, and on segment $$$[4, 6]$$$ has one bit. Again multiply answer by number of such rows. The rest is the same.

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

Is it possible to go unrated now?

»
3 months ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

Disgusting D, tons of corner cases.

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

I think that this contest is much more harder than other edu rounds. Also, I'm waiting for MIDORIYA_ 's record excuse. He only solved AB btw.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

This round seems so difficult... I don't know why, but I was stuck with C for around an hour lol.

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

bro was c that easy or are there too many cheaters on this platform might quit ig

»
3 months ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

Anyone managed to AC E1 with brute force? (I don't mean stupid brute force, but with some tricks)

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

Simpler sol'n to D, find first, last position and count of each type. If last-first+1>count then this type needs a fix. Only 4 cases are possible, swap last with first-1, swap first with last+1,swap last with (end of contiguous segment starting at first)+1, swap first with (start of contiguous segment ending at last)-1. If it passes for any one formation cout yes else cout no.

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

    bro why did my fail , Got WA on D (Goods on the Shelf) with a greedy idea and trying to understand the flaw.

    My approach was:

    • Count contiguous segments for each value.
    • Mark values appearing in multiple segments as "bad".
    • If there are too many bad values, answer NO.
    • Otherwise try to repair one bad value with a single swap and verify the final array.

    For example:

    1 1 2 3 2 3

    Here:

    • 2 appears in segments [2] and [4]
    • 3 appears in segments [3]and [5]

    So bad values are {2,3}.

    I then try swaps involving occurrences of a bad value and check whether the resulting array has every value in a single contiguous block.

    This passes samples but fails hidden tests.

    What is the main flaw in this reasoning? can you give counterexample that could fail here?

»
3 months ago, hide # |
 
Vote: I like it +19 Vote: I do not like it

boring and difficult and no idea and suffering forces

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

open upsolving please

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

$$$C$$$ was too hard :( and $$$D$$$ was so much easier, but my submission is wrong on test 3, could anyone please just take a quick look at it?

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

    can you try this testcase?

    [1, 0, 0, 1, 0, 0, 4, 3, 2, 2]
    

    you can transform it into

    [1, 1, 0, 0, 0, 0, 4, 3, 2, 2]
    
»
3 months ago, hide # |
 
Vote: I like it +7 Vote: I do not like it

I hate D

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Basic solution for C:

Scan left to right and check if we have more ) than (, if so iterate backwards and delete ( since it'll lead to more imbalance

Now do the same thing right to left and check if we have more ( than ), if so iterate forward and delete ) since it'll lead to more imbalance

If we have any leftover deletes, just scan left to right and delete (

»
3 months ago, hide # |
 
Vote: I like it +4 Vote: I do not like it

d = suffer to win

i dont think anyone that read the problem didnt think of the idea within 5m LOL

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

    I also thought it was too simple but there were so few ACs and there wasn't much time, so I thought I must be missing something and I didn't even try to submit the implementation :<

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Any idea for F?

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

    Btw, I learned today that directly using cin to input bitset has complexity $$$O(\text{max_len})$$$ thus fails on multitest.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Guys can anyone suggests some problems similar to B, it took a lot of time to get the logic of B, I want to practice similar problems where we need to construct such arrays.

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

Weak E1 pretests.

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

This is a crazy approach in Q2 by me:

used dp lol ~~~~~

vector dp[200]; vector vis(200, false);

vector firstdp(int n) { vector g;

if (vis[n - 1] == true)
    return dp[n - 1];
else {
    vector<int> g = firstdp(n - 1);

    g.insert(g.begin() + (g.size() / 2), n);
    g.insert(g.begin() + g.size() - 2, n);
    g.insert(g.begin(), n);
    g.insert(g.begin(), n);

    dp[n - 1] = g;
    return dp[n - 1];
}

}

int main() { int t; cin >> t;

while (t--) {
    int n;
    cin >> n;

    dp[1] = {1, 2, 2, 1, 2, 1, 1, 2};
    dp[2] = {3, 3, 1, 2, 1, 3, 2, 2, 1, 1, 3, 2};

    vis[1] = true;
    vis[2] = true;

    vector<int> g = firstdp(n);

    for (int i = 0; i < 4 * n; i++) {
        cout << g[i] << " ";
    }
    cout << "\n";
}

} ~~~~~~~

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

    Hey, can you explain your approach?

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

      hello, sorry for late reply, I identified a pattern that if you have a array valid for n-2, you can add the 4 n's in this way:

      2 at start one in the middle and one at second last position.

      for that i made a dp array(gpt says my method aint dp tho, its more of a memorized recursion) in which i stored answers for different n's.

      one issue here is that n=2 and n=3 are spl cases you need to handle differently, also your ans for n=3 must be in such way that differences are in non increasing order between any pi,x or are unchanged, as say you fit your n in the middle now initially p1,1=3 and p1,2 =2 has now changed in p1,1=3 and p1,2=3 creating an issue, so make your n=3 array wisely

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

        wow thats so good approach ;)

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

          thank you! you started cp recently, but you have solved so many ques, how are you doing it?

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

            its summer so I dont have any other work other than solving problems

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

              no like whats your strategy, im not able to solve more than 1 or 2 questions hardly around 1000 rated

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

                Like, I move on to the solutions fastly , I mean its a bad thing but I cant resist so basically i am just learning to implement lol,I will have to change ths ik

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

                  ohh, is it working in developing your aptitude towards problems?

                  also congrats on green!

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

                  thanks man, It helped me alot actually now I can think of how to start the problem like the logic which strikes first will be somewhere near to optimal. But yeah I cant think more for a problem with this

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

                  ohhh, good for you tho, i am also grinding, got no improvement this vacation :'(

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

                  i also didnt improve much, lets see in 3 rd sem, now its hard to get good rating due to cheaters

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

                  on the same boat,lol

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

PCTprobability can you answer this question

It is related to your solution for b

»
3 months ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

what was the approach for B ? boring and useless question

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

    https://codeforces.me/contest/2233/submission/377970880

    I created an array of $$$4n$$$ length, with first $$$n$$$ elements being $$$1, 2 \dots, n$$$, next $$$n$$$ elements also being the same list of first $$$n$$$ naturals, so total 4 times, basically 4 chunks of this list, notice that all elements so far have equal distance of $$$n$$$ between consecutive $$$p_{x,i}$$$'s. Then I applied a cyclic permutation to first and fourth chunk, then the $$$(p_{x,i+1}-p_{x,i})$$$'s become $$$n-1$$$ for $$$i=1$$$, $$$n$$$ for $$$i=2$$$ and $$$n+1$$$ for $$$i=3$$$ where $$$1 \leq x \lt n$$$. In the case where $$$x = n$$$, it's $$$2n-1, n, 1$$$ for $$$i=1,2,3$$$ respectively. Thus for all $$$x$$$ and $$$i$$$, the $$$(p_{x,i+1}-p_{x,i})$$$'s are different and it passed for me. I think there's actually a similar problem in Pinter's Algebra book or Dummit and Foote chapters on symmetric groups I don't really remember. Edit1: Typo, Edit2: symmetric groups, not cyclic

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

    keep repeating solution for n=2 and solution for n=3

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

https://codeforces.me/contest/2233/submission/377920491

how is the above brute force passing inside limit ??

BledDest can you explain this??

no of arrays possible are (4n)!/ (4!)^n ! = factorial

is the no of arrays inside limit ??

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

    Actually, the probability of getting a valid sequence on a random shuffle is around 0.2, in the worst case, it is 0.1. The loop will averagely never have to run more than 5-10 times.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

D cooked me. Enjoyed the contest tho.

»
3 months ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

Why is the "system testing" taking forever lol is hacks phase gonna be extended

»
3 months ago, hide # |
 
Vote: I like it +8 Vote: I do not like it

Today's round did'nt feel to be an educational round.

»
3 months ago, hide # |
 
Vote: I like it +9 Vote: I do not like it

Just shuffling the array in B because the probability of a valid one is high is so sick. Probability is cool.

»
3 months ago, hide # |
 
Vote: I like it +10 Vote: I do not like it

Unexpected Verdict incident (not even an option in dropdowns lmao)

uvhack

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

I found it interesting for B.

ll n; cin >> n;
cout << n << " ";
for(ll i = 1; i <= n; i ++) cout << i << " " << i << " ";
for(ll i = 1; i <= n; i ++) cout << i << " ";
for(ll i = 1; i < n; i ++) cout << i << " ";
cout << endl;
  • »
    »
    3 months ago, hide # ^ |
     
    Vote: I like it 0 Vote: I do not like it

    i also did similar to this, but that double sequence in between those two single sequences, like a = 1,2,...,n,1,1,2,2,...,n,n,1,2,...,n and swapping a[0] and a[n/2] in final sequence a , if n is odd, else fine.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

when will ratings get updated?

»
3 months ago, hide # |
 
Vote: I like it +7 Vote: I do not like it

I'm sorry, but I felt the contest was poorly designed and the problems were terrible.

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

    +8 left for the expert. this is really painful

    • »
      »
      »
      3 months ago, hide # ^ |
      Rev. 4  
      Vote: I like it 0 Vote: I do not like it

      Yeah but it doesn't matter

      I will do my best and reach it

      btw i saw your profile. you are doing so good

      keep it up

      Thank you for your comment

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

was this unrated ?

i ranked about 10k but still my rating hasn't changed a bit !

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

I hate problem D. Why was the test data so weak during the contest?

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

    You must always calculate the worst-case scenario and write optimal code

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Finally, the rating is out!

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

another day another cheater https://codeforces.me/contest/2233/standings# another guy, i dont find his soln suddenly, Saugata123. all soln have AI comments

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

E is very nice, but I don't like ABCD

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

worst contest ever

»
3 months ago, hide # |
 
Vote: I like it +1 Vote: I do not like it

-71 is crazy

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

You will be given 6 or 7 or 67 problems and 2 hours to solve them. plese change to 1 or 0 or 2 and 102 problem

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Hello,

I am writing regarding the plagiarism flag on my submission [377950943] for problem 2233C.

I want to clarify that I wrote this solution entirely on my own during the contest. I did not share my code with anyone, did not post it on Ideone, Pastebin, or any other public platform, and I have no idea who krish1567 is.

I understand the codes look similar, but I believe this is a case of independent convergence. The approach — computing a prefix count of '(' from the left, a suffix count of ')' from the right, finding the optimal split point, and greedily marking up to k characters — is a very natural and straightforward greedy solution for this problem. When a problem has one clean optimal approach, many contestants will independently arrive at nearly identical implementations.

I have been participating honestly and this is the first time I have faced such a flag. I respectfully request that my case be reviewed manually.

Thank you for your time. khabibOfCodeforces

»
3 months ago, hide # |
Rev. 3  
Vote: I like it -6 Vote: I do not like it

Regarding the plagiarism warning for my submission 377946024 on 2233C, I would like to clarify that the solution was written independently by me. The core observation and algorithm using prefix counts of '(' and suffix counts of ')', finding the optimal split point, and greedily selecting deletions were derived by me during the contest.

While coding, I occasionally used an LLM as a general coding assistant for implementation and function-writing suggestions, which may have resulted in coding patterns similar to those found in other submissions implementing the same idea. However, I did not share, receive, view, or copy code from Soumya26 (submission 377988862) that too I have submitted much earlier than this person, and I have no connection or association with that account.

IST 20:37 mine, and 21:51 for this account, kindly make my submissions back as this clearly states they have copied from sources not me.

I respectfully request a manual review of the flagged submissions, as any similarity is due to the straightforward nature of the algorithm and common implementation patterns rather than code sharing or unauthorized collaboration.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Dear Codeforces Administration,

I am writing regarding the recent warning about my submission [377932075] for problem 2233D. I want to clarify that I solved this problem entirely independently and did not share my code, nor did I copy from anyone else during the contest window.

I am genuinely unsure how my solution matched with the other users listed. I do not know them and did not use any public online compilers or forums to test my code during the round. The similarity might be due to a common algorithmic approach to this specific problem or standard C++ structural templates that I frequently use.

I respect the platform's rules and the integrity of the rating system. I would appreciate it if this case could be reviewed, as the coincidence was entirely unintentional.

Sincerely, DrownedDragon06

»
3 months ago, hide # |
 
Vote: I like it -6 Vote: I do not like it

Appeal for False Plagiarism Flag on Submission 377970197 (Problem 2233C) Hello Codeforces Team,I am writing to formally appeal a plagiarism warning I received regarding my submission for problem 2233C (Submission ID: 377970197). The system flagged my code as significantly coinciding with user khabibOfCodeforces (Submission ID: 377950943).I want to state unequivocally that I solved this problem entirely independently. I did not cheat, I did not share my code with anyone, and I did not use any public IDEs like ideone.com to test my logic. The similarity between our codes is purely circumstantial and stems from the natural, most optimal approach to solving this specific problem.Here is a detailed breakdown of why these submissions are an instance of convergent thinking, alongside the clear stylistic differences that prove independent authorship:1. The Logic is a Standard CP PatternThe problem essentially dictates its own implementation. The optimal solution requires tracking the prefix counts of ( and suffix counts of ). Any experienced programmer will immediately reach for two std::vector arrays to precompute these states in $$$O(N)$$$ time. From there, iterating through to find the minimum sum split point, collecting target indices into an array, and mutating a base string of 0s into 1s is the most direct, straightforward greedy implementation possible. When the optimal path is this narrow, independent C++ implementations will inevitably mirror each other structurally.2. Core Architectural DifferencesWhile the logic is the same, our basic coding habits and templates are entirely different:Execution Flow: My implementation processes the test cases directly inside the int main() block using a while(t--) loop. The other user uses a modular approach, wrapping their logic in a void solve() function and calling it from main().I/O Optimization: The other user actively utilizes fast I/O optimizations (ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0);) and uses \n for line breaks. My template does not include fast I/O setup, and I use endl for flushing the output stream.Macros and Types: The other user includes specific type definition macros (#define ull unsigned long long, #define ll long long), which are completely absent from my environment setup.3. Divergent Naming ConventionsThe variable naming clearly shows two completely different thought processes during implementation:I used semantic, directional naming for my arrays (left and right), whereas the other user used shortened, abstract names (ss and rr).My minimization variables were tracked using mini and best, while they used mincost and minp.I named my index collection vector cover (thinking about covering the necessary deletions), whereas they used targets.My deletion limit variable was dels, and theirs was del.The MOSS system correctly identified that the Abstract Syntax Tree (AST) of our logic is highly similar, but this is a false positive caused by the standard nature of the algorithm. The differences in flow control, template setup, and variable nomenclature definitively point to two separate authors writing code to solve the same constrained logic puzzle.I take my competitive programming journey seriously and always adhere to the rules. I kindly request that the moderation team manually review these submissions and lift the warning from my account.Thank you for your time and for maintaining the integrity of this platform.

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Dear Administrator, I follow all contest rules and believe the flag on question 2233E1 is a false positive. The problem practically requires a Bitmask DP reconstruction, so the outer loops and state iteration will naturally match common CP templates (e.g., LeetCode 526, Codeforces 1550E). That similarity is expected and does not imply copying. My implementation contains original, identifying choices: I compute the current depth with GCC’s intrinsic __builtin_popcount(mask) rather than an explicit loop. I perform an O(N) frequency check and reconstruct integers with int nv = v[mask][j] | ((s[i][j]-'0') << d);, using a temporary frequency array f compared to precomputed cnt. I also copy state vectors only when dp[nxt] == 0 to avoid unnecessary work. These implementation details and structure show independent work, not plagiarism. Please review the code with this context and submission timelines which will make everything clear. Attached is the annotated code which I had submitted ~~~~~ // This handles the specific "Permutation Transmission" requirement // of finding bit frequencies. It has no equivalent in simple problems. int m=0; int tmp=n; while(tmp>0){ m++; tmp/=2; }

vector<string> s(m);
    for(int i=0;i<m;++i){ cin>>s[i]; }

    vector<vector<int>> cnt(m+1, vector<int>(1<<m, 0));
    for(int d=1; d<=m; ++d){
        int mx=1<<d;
        for(int x=1; x<=n; ++x){ cnt[d][x&(mx-1)]++; }
    }

    // Every Subset DP problem (like LeetCode 526) initializes an array 
    // of size 2^m. Using "dp" is the global standard variable name.
    vector<long long> dp(1<<m, 0);
    vector<vector<int>> v(1<<m, vector<int>(n, 0));
    dp[0]=1; // Base case: 1 way to have an empty set
    vector<int> f(1<<m, 0);

    // STANDARD LEETCODE TEMPLATE
    // Iterating using the variable name "mask" up to (1<<m) is textbook CP.
    for(int mask=0; mask<(1<<m); ++mask){

        if(dp[mask]==0) continue; // Universal optimization check

        // Built-in GCC macro used universally in CP to find the current row/depth
        int d=__builtin_popcount(mask); 

        for(int i=0; i<m; ++i){ // Iterate through all available items

            // Bitwise AND to check if item 'i' is already in 'mask'
            if(!(mask&(1<<i))){ 

                int nxt=mask|(1<<i); // Bitwise OR to create the next state

                //
                // [PROBLEM-SPECIFIC LOGIC] - similar to multiple codeforces  question 
                // In LeetCode 526, this is a 1-line mathematical check.
                // Here, it is a forced O(N) frequency matching simulation.
                int mx=1<<(d+1);
                for(int val=0; val<mx; ++val) f[val]=0;

                for(int j=0; j<n; ++j){
                    int nv=v[mask][j]|((s[i][j]-'0')<<d);
                    f[nv]++;
                }

                bool ok=true; // "ok" or "valid" are standard boolean flags
                for(int val=0; val<mx; ++val){
                    if(f[val]!=cnt[d+1][val]){
                        ok=false;
                        break;
                    }
                }

                 // STANDARD LEETCODE TEMPLATE
                // If the move is valid, pass the combinations forward.
                if(ok){
                    if(dp[nxt]==0){
                        for(int j=0; j<n; ++j){
                            v[nxt][j]=v[mask][j]|((s[i][j]-'0')<<d);
                        }
                    }
                    dp[nxt]+=dp[mask]; // Exactly equivalent to LeetCode templates
                }
            }
        }
    }
    // Output the final state mask
    cout<<dp[(1<<m)-1]<<endl; 
}

} ~~~~~ Regards, mayankrana

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Dear administrator, this comment is regarding the plagiarism flags which have been put on my submissions for E1(377988071) and E2(377987849) which are essentially the same code and hence I will be talking about them together. I believe that this is a case of false positive and request for removal of my contest skip from this contest because of the same. I will be explaining everything for my reasoning below. I submitted essentially the same code for both versions because the only difference between E1 and E2 was the constraints and also the solution I came up with had good enough time complexity to pass both. Apart from that I was matched with multiple other people. I do not know any of these people at all. I use VS code as my IDE and did not share my code with anyone anywhere. I have not copied from any other sites or from any other person's code. I understand that some parts of the implementation may appear similar to other submissions because the solution relies on a fairly specific observation about counting set bits in binary representations. The method of counting complete cycles and handling the remaining partial cycle is a standard binary-pattern observation, and there are only a limited number of natural ways to implement it efficiently. However, the solution and implementation submitted were developed independently. I have also provided a detailed explanation of how I thought of the question from start to finish, while I tend to make some intuitive jumps or things which I might not have rigorously verified mathematically or just have a feeling might work, this should still help demonstrate that I reached to this solution independently.

okay, I saw the question and was immediately thinking okay damn they reodered the bit position and each string only gives us the numbers of that bit, not really any info of any of the individual numbers, but then what information do we really have then? that lead me to thinking oh we know the total number of zeroes and 1s and actually we also know how many there are in each bit, so I thought okay first I will take that out and check whether if all strings actually match, other wise it will anw be incorrect, after that I was thinking how the largest bit would have really few ones, so I thought that maybe I can find the string with the least bits and I would know that okay this is the largest bit, I started thinking on maybe I can go like this hoping from bit to bit by order of increasing number of 1s and read each string and have some way to assign that okay these positions will likely have really large numbers, but I later on was kind of stuck on how on earth will I even track that and that it seems really complex and even if I can do that it seems like it might use some advanced concepts idk, so I left that, then I was thinking that okay, but what other ways can strings be wrong, so I started writing test cases on my copy, that is when I realized that between two strings it really doesn't matter what bit position they are at if they have the same number of 1 bits, so I thought why not just somehow check whether any combination works or not, but then I wasn't sure how to arrange it to check, then I looked at my copy and saw that I had already figured that part out earlier, which was to just straight up order them by the number of 1s which they have in increasing order. After this, if the array I got from making the numbers back had all numbers from 1 to n, then it must be possible to make this correctly into 1 to n cuz it literally just happened and as there is not distinction as such between two strings with same number of 1s, I can reorder them among themselves with no restrictions and still get all the numbers, so then after that it is a standard permutations concept to find out the number of permutations by multiplying all the factorials, with this my algorithm part was done. Then I thought okay, now I need to think of how I will implement all of these, so for how do I now calculate the number of bits for all the numbers, this was actually tougher than I initially thought, I was kind of blank initially, because going over all the bits for each number 1 to n to store it will for sure lead to TLE, so I then thought well do I really need to go through each number individually, like after all I do have literally all numbers from 1 to n and like bits are in their literal form remainders of the power of 2's so there must be some way to not have to go through each number. So, then I thought welll for the first digit, all I need to do is find how many numbers are even for which we just divide by 2 and all the rest will be odd, then I tried looking at the next bit I realized that this would have 2 0 bits and then 2 1 bits, so I could maybe divide by 4 and subtract 2 for the number of bits which have 1? I then thought okay similarly for the next bits as well, but how do I actually program this pattern, then I saw that well each time it was half the number of bits or well 2^k numbers with 0 if we are dividing by 2^(k+1). So, in short, bit k has the same pattern in cycles of 2^(k+1) where the first 2^k numbers have zero bit, so the formula will be to first divide the number by 2^k+1 to find the number of complete cycles and then find the remainder and remove 2^k from it if possible. The implementation follows these observations: first sorting the strings by number of ones, matching them to expected bit counts, reconstructing the values, verifying that they give all the numbers from 1 to n and then multiplying the factorials to find number of permutations.

I was particularly happy with these solutions because it was the first time I independently solved both the easy and hard versions of such a difficult problem during a contest, but I respect the system's rules and regulations as well as the integrity of the rating system.

»
3 months ago, hide # |
 
Vote: I like it -6 Vote: I do not like it

Hello Codeforces administrators,

My submission 377994817 for problem 2233E1 was recently flagged for plagiarism alongside another user's code. I am writing to clarify that my submission simply implemented standard Bitmask DP pattern, similar to that used in AtCoder's Problem O- Matching.

The modification i made to the standard solution was changing the validation logic form a simple O(1) check to an O(N) check for frequencies against a pre computed target, along with corresponding changes in the initialization in the beginning of solve function. Anyone using this approach was bound to use a similar flow to make it past the test cases while avoiding TLE.

I would also like to point out that I do not use pre-saved templates to code during the contest and hence there is uniqueness to my submission, like using a while loop to count my set bits, whereas many templates and the submission i was flagged with use pre-built functions.

I aknowlede the testing system might have flagged the submission due to its structural similarity, but implementing them was necessary to pass the test cases. I assure that the flag was merely a coincidence and not any kind of unfair practice.

Thank you in advance for looking into this matter. GKD3776

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Dear administrator, my challenge to the false flag on my contest submissions I got the following message on codeforces itself (No mail, No specification as to what rule I broke, if it is a case of Plagiarism then it didn't even give me the submission with which my code matches) "ypsd Your submissions in contest 2233 — Educational Codeforces Round 191 (Rated for Div. 2) were skipped because of a rules violation in one or more submissions for problem 2233D — Goods on the Shelf."

I didn't cheat, I didn't copy the code from any one, neither did I publish my code to anyone. I did use AI, but only to generate new test cases for me to test my code on and to debug some errors I got, nothing related to the logic of the question.

I wrote my approach of all attempts in comments, including the changes I make in between attempts as i usually do for tougher problems, I got many TLE wrong answers on this particular question before adding a few edge cases, which somehow passed the pretests during the contest, but it failed during system testing, and I accept that result. But my entire contest was skipped due a reason I don't even know. So I got skipped mark on D, for which my solution was already wrong in the first place. How does that even make sense. please regrade my submissions and make the contest rated for me again. I have followed the contest rules to the best of my knowledge. It's a humble request.

»
3 months ago, hide # |
 
Vote: I like it -6 Vote: I do not like it

Respected Sir,

I am writing regarding the rules violation notification for my submission in Educational Codeforces Round 191.

I would like to respectfully state that I solved the problem independently. I did not copy code, share my solution, or publish my code during the contest. I also do not know the participant whose submission was referenced in the similarity report.

While I understand that my solution was found to be significantly similar to another submission, the similarity was completely unintentional from my side. The solution was written by me during the contest without access to any other contestant's code. I would also like to mention that my submission was made before the other submission referenced in the report.

I sincerely request a review of my case. If restoring the contest result is not possible, I would be grateful if an alternative resolution, such as treating the contest as unrated for me, could be considered, as I had no intention of violating any rules.

Thank you for your time and consideration.

Yours sincerely,

Handle: venkat6912 Contest: Educational Codeforces Round 191 (2233) Problem: 2233C Submission ID: 377963928

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Dear Administrator,

Regarding the contest Educational Codeforces Round 191 (Rated for Div. 2), I would like to clarify the rules violation case related to code copying.

The submission from my account was copied, and I take full responsibility for the incident. I sincerely apologize for violating the contest rules.

I kindly request that you restore the contest rating and remove the penalty from the other account that was also flagged for the same violation. The owner of that account was not at fault and had no involvement in the misconduct. The mistake was entirely on my side.

I would be grateful if you could reconsider the case and take this clarification into account.

Thank you for your time and understanding.

Sincerely, Handle: itkd

»
3 months ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

Hello Codeforces Team, My submission for Problem 2233D during Educational Round 191 was recently flagged for a rules violation and skipped. I am writing to respectfully appeal this decision, as I wrote the logic entirely by myself. U can see that i am a beginner in this platform and 3000 rank was my best rank ever in cf when i got that rank after solving C i was satisfied so i did not have any motivation to solve D so I just wrote a shitty brute force code with n^3 complexity but it was still flagged . I think it happened because I used functions in the code which i don't do usually . But i only did it as i had 40 mins to kill as I knew D was well beyond my limits. So i thought that with the time at hand i could make sure my code for D was understandable for me when i decided to upsolve it later. I would be grateful if you could review your decision as it makes no sense for me to copy a code with n^3 time. Thanks and regards

»
7 weeks ago, hide # |
 
Vote: I like it 0 Vote: I do not like it

To the administrators I am writing for the past month penalty applied to my old account, which was not answered in this month. My solution for problem 2233E2 (e2 of this round), with submission id: 377982587 was skipped due to a false positive coincidence with other (that I think is special in this round). All the code and core logic was written by me, the only external resource that I used was from this blog https://codeforces.me/blog/entry/140773 (not even used), I kindly ask for the review of my case :(, I really love competitive programming and don't want this false mistake to not allow me to keep participating fairly, If anything please contact me.