armurox's blog

By armurox, history, 13 months ago, In English

Received the above error when submitting my code, with the qualification "FAIL- Participant has the answer but jury does not (Test Case 393)". This is my first time getting this error, but I assume it is a problem on the checker side. Is there somewhere I can report this? In case this is the place, here is my code:

#include <stdio.h>

int main()
{
    int t;
    scanf("%d", &t);
    for (int i = 0; i < t; i++)
    {
        int n, k;
        scanf("%d%d", &n, &k);
        if (k % 2)
        {
            printf("YES\n");
            for (int j = 1; j < n; j+=2)
            {
                printf("%d %d\n", j, j + 1);
            }
        }

        else
        {
            int num_valid = 0;
            for (int j = 2; j < n + 1; j += 2)
            {
                if (j % 4 > 0 && (j + k) % 4 == 0)
                {
                    num_valid++;
                }
            }
            if (num_valid < n / 4 || k == 0)
            {
                printf("NO\n");
                continue;
            }

            printf("YES\n");
            int max_j = 0;
            for (int j = 1; j < n; j+=2)
            {
                if (j + 3 + 2 * (j / 2) < n + 1)
                {
                    max_j= j;
                    printf("%d %d\n", j, j + (3 + 2 * (j / 2)));
                }

            }

            max_j += 2;
            for (int j = 2; j < n + 1; j+=2)
            {
                if (j % 4 > 0)
                {
                    printf("%d %d\n", j, max_j);
                    max_j += 2;
                }
            }
        }
    }
}

The error came in the second test case run.

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

| Write comment?
»
13 months ago, # |
Rev. 3   Vote: I like it -18 Vote: I do not like it

It's not a problem from the checker's side. This message means that for a particular test case, your code is printing "NO" while the jury has found that an answer exists. Also, please include the link to the problem in such posts.

Edit: I did not remember the jury message correctly while writing the comment!

  • »
    »
    13 months ago, # ^ |
      Vote: I like it +16 Vote: I do not like it

    No? That verdict means that the participant found the answer, but the jury did not. This means that either the jury's solution is wrong or there is some other bug in the system.

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

It seems to be a bug with the checker where it does not check that the pairs actually contain every number exactly once, see this submission: 194882285