QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#94930#6131. TournamentGeorge_Plover#WA 2ms3756kbC++231.2kb2023-04-08 12:55:022023-04-08 12:55:04

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-04-08 12:55:04]
  • 评测
  • 测评结果:WA
  • 用时:2ms
  • 内存:3756kb
  • [2023-04-08 12:55:02]
  • 提交

answer

#include<bits/stdc++.h>
#define rep(i,l,r) for(int i=l;i<=r;i++)
using namespace std;
const int N = 1005;
int T;
int n, k;
int a[N];
int ans[N];
void work(){
    scanf("%d%d", &n, &k);
    if (n%4 || k >= n) {
        printf("Impossible\n");
        return;
    }
    rep(i, 1, n) {
        printf("%d ", i&1 ? i+1 : i-1);
    }
    printf("\n");
    if(--k==0) return;
    int x = n/4;
    rep(i, 0, x*2-1) a[i]=i;
    rep(t, 1, x*2-1) {
        rep(i, 0, x*2-2) {
            a[i]=(a[i]+1)%(x*2-1);
        }
        rep(i, 0, x-1) {
            int l=a[i], r=a[x*2-1-i];
            ans[l*2]=r*2;
            ans[r*2]=l*2;
            ans[l*2+1]=r*2+1;
            ans[r*2+1]=l*2+1;
        } 
        rep(i,0,n-1) {
            printf("%d ", ans[i]+1);
        }
        printf("\n");
        if(--k==0) return;
        rep(i, 0, x-1) {
            int l=a[i], r=a[x*2-1-i];
            ans[l*2]=r*2+1;
            ans[r*2]=l*2+1;
            ans[l*2+1]=r*2;
            ans[r*2+1]=l*2;
        } 
        rep(i,0,n-1) {
            printf("%d ", ans[i]+1);
        }
        printf("\n");
        if(--k==0) return;
    }
    
}
int main(){
    scanf("%d", &T);
    while(T--){
        work();
    }
    return 0;
}

详细

Test #1:

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

input:

2
3 1
4 3

output:

Impossible
2 1 4 3 
3 4 1 2 
4 3 2 1 

result:

ok 4 lines

Test #2:

score: -100
Wrong Answer
time: 2ms
memory: 3756kb

input:

100
1 4
2 1
2 2
2 3
3 6
4 2
4 3
4 4
4 5
5 4
6 1
6 2
6 4
7 1
8 3
8 7
8 8
8 14
9 4
10 1
10 2
10 3
12 2
12 3
12 4
12 8
13 2
14 1
14 2
14 4
15 4
16 9
16 15
16 16
16 28
17 6
18 1
18 2
18 4
19 5
20 1
20 3
20 4
20 6
21 1
22 1
22 2
22 3
23 4
24 5
24 7
24 8
24 15
25 3
26 1
26 2
26 3
27 5
28 1
28 3
28 4
28 6
...

output:

Impossible
Impossible
Impossible
Impossible
Impossible
2 1 4 3 
3 4 1 2 
2 1 4 3 
3 4 1 2 
4 3 2 1 
Impossible
Impossible
Impossible
Impossible
Impossible
Impossible
Impossible
2 1 4 3 6 5 8 7 
5 6 7 8 1 2 3 4 
6 5 8 7 2 1 4 3 
2 1 4 3 6 5 8 7 
5 6 7 8 1 2 3 4 
6 5 8 7 2 1 4 3 
3 4 1 2 7 8 5 6 
4 3 ...

result:

wrong answer 2nd lines differ - expected: '2 1', found: 'Impossible'