QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#815465#9799. Magical PaletteKafuuChinocpp#WA 42ms7496kbC++14998b2024-12-15 14:41:212024-12-15 14:41:22

Judging History

你现在查看的是最新测评结果

  • [2024-12-15 14:41:22]
  • 评测
  • 测评结果:WA
  • 用时:42ms
  • 内存:7496kb
  • [2024-12-15 14:41:21]
  • 提交

answer

#include <cstdio>
#include <algorithm>

using namespace std;

const int max1 = 1e6;

int T, n, m, a[max1 + 5], b[max1 + 5];
bool flag[max1 + 5];

void Work ()
{
    scanf("%d%d", &n, &m);
    for ( int i = 1; i <= n; i ++ )
        a[i] = i;
    for ( int i = 1; i <= m; i ++ )
        b[i] = (i - 1) * n + 1;
    
    for ( int i = 0; i < n * m; i ++ )
        flag[i] = false;
    
    for ( int i = 1; i <= n; i ++ )
        for ( int j = 1; j <= m; j ++ )
            flag[a[i] * b[j] % (n * m)] = true;
    
    for ( int i = 0; i < n * m; i ++ )
    {
        if ( !flag[i] )
        {
            printf("No\n");
            return;
        }
    }

    printf("Yes\n");

    for ( int i = 1; i <= n; i ++ )
        printf("%d ", a[i]);
    printf("\n");
    for ( int i = 1; i <= m; i ++ )
        printf("%d ", b[i]);
    printf("\n");
    return;
}

int main ()
{
    scanf("%d", &T);
    while ( T -- )
        Work();

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 3704kb

input:

2
2 3
2 2

output:

Yes
1 2 
1 3 5 
No

result:

ok 2 cases (2 test cases)

Test #2:

score: -100
Wrong Answer
time: 42ms
memory: 7496kb

input:

1
1 1000000

output:

Yes
1 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 1...

result:

wrong answer Integer parameter [name=b[1000000]] equals to 1000000, violates the range [0, 999999] (test case 1)