Mathko's blog

By Mathko, 3 years ago, In English

Hellooo codeforces comunity!

I have a rather technical question about gym/mashup problems: is it possible to have "pretests" and "system tests". It is know that is possible for official ("rated") rounds, not only that it is possible, it happens every time at the end of the round. There is also a "hacking", but i wouldn't expect that to be possible for just some mashup...

I have made a lot problems on Polygon and made them into a gym contests by now (around 10-15 contests), but every time i made "system tests" before contest and they were the one that solutions were tested on during the contest. But now, I'm looking into possible new formats like Facebook Hackercup that have a limited "pretests", and just have solutions be tested on the real test after the contest.

I know about a rather time consuming proces so that this can be done, and it would be this: just have pretests as your only test on Polygon as long as contest is running on Codeforces. After contest, make new tests on Polygon, make package and just push them to Codeforces. Now you can rejudge all of the submitions on this new tests from Codeforces, but the pretests are lost basically.

However, "Create tests" page on Polygon has "Create testset" and really, you can create other testsets. And this works fine on Polygon... So lets test it: when I tried it out on Codeforces, it only tested solutions on testset "Tests" (the default one), not on the others. So this could be a "pretests" part of the question. But there is no easy way of making other testsets default on Polygon, or going on next testset in Codeforces, so no easy way to switch from "pretests" to "system tests".

At first i though that going to "Adm." tab on contest page (on Codeforces) and then just doing something with "Rejudge on next testset" could do what i want, but after submitting a few solutions i still see "To rejudge submissions: 0" what I interpret as Codeforces not knowing there are more testsets for problem? Maybe I'm just wrong and there is way to do it...

So finally, my question is: is there an easy way to make "pretests" and "system test" for gym contests using builtin methods on Polygon and Codeforces? IMO testsets on Polygon look like a way to go, but I suspect Codeforces is not reading them correctly or I'm just looking at the wrong place...

Thank you in advance, any help is appreciated!

Full text and comments »

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

By Mathko, history, 3 years ago, In English

Hello world!

Sadly, as in most places, you need to publish a full blog about some problem since otherwise nobody will find that problem relavant.

So... I'm trying to use the API to get results from more than a few privet contests! :)

I'm using contest.status because I need to know for each user how many tries they had on problem and so on.

So where is the problem? Well... that are not my privet contests, they are in a group and I have manager in all of them, so you might think that should be fine... Nope.

I double checked: if you are the one that created mashup, then you can get data from the API.

Probably because it is in your gym, but if you are the manager from the group, then it's not. even if you are just manager... So there is really no reason why you could not see contest.status...

So the question is: is there a way around this? It's silly to me that I can't get info because I can just go by hand and get it from status in the group...

Anyone? MikeMirzayanov? Any help is good help! :)

Thank you all in advance!

Full text and comments »

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