Hello, Codeforces. Below you can see the improvements in the system Polygon.
A lot of work has been done to simplify the preparation of school tasks, which use groups and points for tests. In the General Information tab, you can enable the points option for each test. This option is enabled points for the whole problem, that is, for tests from all testsets. Let me remind you that test groups can be enabled for each testset separately on the Tests tab.
Points for groups, points policies, dependencies
Points for the test, as well as groups, can be entered in the table with the list of tests, and also specify them when creating a new test. If the group for the test appears for the first time, it will be automatically added to the list of available groups. This list is presented in the table.
Here the problem developer can specify a policy for calculating points for the group, and also specify from which groups the current group depends on. The are two types of the points policies. The first type of the points policy is EACH_TEST
, in which case points will be added for each passed test from this group. The second type of the points policy is COMPLETE_GROUP
, in which case the points for the group will be added only if all tests from this group have been passed.
Also, you can now add dependencies on other groups for each group. If group A depends on group B, then regardless of which of the tests of group A were passed, you will get 0 points for all tests of group A if at least one of test of group B is not passed.
Solution tags by groups and testsets
In Solutions tab now you can specify a tag for each solution for each existing testset and for each existing group. The interface for working with tags is presented below.
Updates in Invocations
When the invocation is started, all the information about groups, points, dependencies and tag solutions are now taken into account. The points for each group will be calculated according to the group's points policy, as well as according to the groups on which the current group depends. If the solution violates at least one of its tags, the invocation will be highlighted in red, and the information about violation tags is available in detailed invocation report.
Updates in Packages
All information about test groups, points and solution tags added to the problem descriptor on the stage of building packages. Here you can find the example of the descriptor of the school problem.
Thank you for attention! We hope that the described improvements will be useful to you.
That sounds amazing! :)
Are those partial scores handled correctly when the problems are exported into a Gym contest?
Partial scoring seems to work in IOI-format mashup contests at least, the scoreboard is updated correctly. I assume it works in public Gym contests too.
There's a minor quirk, however: even if all test groups are solved, the verdict is still "Partial score: 100 points", for example. I think that a complete solution should be listed as "Accepted: 100 points" or something similar.
Finally! This will make it a lot easier to prepare school contests :D
In addition, it would be perfect if we could tag groups for each test in a programmable manner. Currently there is setGroup() function in the validator, but it is not reflected to the actual group data. Any future plans on that?
the update began ? i see nothing in my polygon account :\
You can enable points on the General Info tab of a problem.
Hopefully that means we'll be getting IOI gyms soon
Thank you, the partial scoring is an amazing addition! I've been waiting for this for a while.
Partial scoring has always been an option; it's just a lot easier to use now. Even before, you could instead of this
do this
to get partial scoring.
Yes, but previously it wasn't possible to require that all tests in a subtask must pass before getting any points. This was a problem because sometimes subtasks with larger constraints contain some small tests (edge cases, for example). With the previous system the contestants would get extra points for those tests without actually solving the subtask.
Also, the score of a subtask was pretty much dependent on the number of tests in it assuming the checker returned a constant number of points on AC verdict.
So yeah, the new system is a lot easier and more versatile.
Is there a way to assign points for one test group, not just individual test cases?
If I want a subtask with 30 test cases to be worth 20 points, it's not like I can set each test case to have 2/3 points exactly...
You can assign all points to a single test in the group and leave other tests 0. This works if point policy is COMPLETE_GROUP.
If I want to upload the test cases with a .zip file,, Can I assign more than one test case to a group at the same time ?
Use checkboxes to select a group of tests. Also you can use Shirt+click to check a range of tests. After it click "Group" in the header of the table of tests.
Is there something that we can do about tasks with partial scoring? Like the score for a subtask will be the lowest score of all test cases within the subtask?
Hey all!
I'm just wondering if there has been a solution for this yet? I'm sorry if I've missed it!
I'm trying to make an interactive question in Polygon with the final subtask as a partial scoring subtask, where the score for the subtask depends on the maximum number of queries amongst all testcases in the subtask (and the score can be any value from 0 to 20).
I've currently tried to use the
quitf(_pc(X), "response")
andquitp(_pc(X-16),"response")
, but both of them seem to give me the full 20 points regardless of the number of queries used. Is there an alternative method to do this?Any help would be appreciated!
Thanks!
Have you figured this out eventually? I can't get it working. Maybe Polygon/Gym doesn't support actual partial scoring.
Unfortunately, no :(.
For our contest, we eventually just split it into a series of subtasks, each with fixed limits for number of queries. Hopefully this can get added sometime :)
If I want to create my own Problem and add it to personal team contest, how can I do that?
If I do internal trainings in Saratov State U. I do:
Thanks in advance. Is there any tutorial I can read to create problem in Polygon?
@fcspartakm Please check this issue --
I am seeing the "Groups points policy and dependencies" place like above. Though I added groups, it is not being shown there.
Another problem is, when I add points and click "Set points" it works fine, and reloads page. But when I set groups and click "Set groups", nothing happens, I needed to refresh page manually to see the group assigned. Also, when did with multiple test files, it sets group to only one test. :|
Aslo when I add test manually with "Add Test", if I assign Group then nothing happens after clicking "Create". But works with only points set.
Fixed.
Dear MikeMirzayanov, till now no IOI styled competitions have been held :( Will we have such competitions in the near future?