I'm confused by the rules around resubmits for codeforces. When I read this link (not sure if this is the best link: https://codeforces.me/blog/entry/4088) it says the main test will be applied to "the last submitted solutions of each contestant for each problem".
Yet in a recent div 4, I did do a resubmit, but for the final ranking, my first successful submit was used instead of my last submitted solution (which helped my rank).
Is this the behavior what we can expect for all divisions? All resubmits are basically free lunches?
Thanks
The link you mentioned contains rules of contests which run on Codeforces rules (i.e. Div.1, Div.2 and "rated for all" rounds), basically rounds with problem scores. In those rounds, only the last "pretests passed" submission will be run on system tests; all previous ones will be skipped and give $$$-50$$$ penalty.
This is not true in ICPC-scored rounds (i.e. Div.3, Div.4 and Educational rounds). In those rounds, you can (afaik) submit an accepted submission as many times as possible without any penalty and if any one of those passes the system tests, you get AC.
What I said should be pretty much correct, but I may be slightly wrong about something, so please anyone correct me if I missed something.
Just to confirm what you are saying, for Div 3, 4, and Educational, "if any of those passes the system tests, you get AC", what you really mean to say is "if any of those passes the full system tests, the first pass is used, and subsequent submits are disregarded" (which is what happened in this div 4 round).
Yeah, but the point was that say you had two submits for the same problem which got "pretests passed" in a Div.2, the first of which would end up getting system tests passed, but the second submission would fail system tests. The first one gets skipped, and you don't get points for that problem.
But if the same happened in Div.3, you would get the points for that problem regardless of which submission you made first.