QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#781488 | #9799. Magical Palette | masttf# | RE | 40ms | 18820kb | C++20 | 1.7kb | 2024-11-25 16:15:09 | 2024-11-25 16:15:16 |
Judging History
answer
#include<bits/stdc++.h>
#define int long long
using namespace std;
#define dbg(x...) \
do{ \
cout << #x << " -> "; \
err(x); \
}while(0)
void err(){
cout << endl;
}
template<class T, class ...Ts>
void err(T arg, Ts ...args){
cout << fixed << setprecision(10) << arg << ' ';
err(args...);
}
void solve(){
int n, m;
cin >> n >> m;
vector<int> a(n + 1), b(m + 1);
auto pf = [&]() -> void{
int ok = 1;
vector<int> vis(n * m + 1);
cout << "Yes\n";
for(int i = 1; i <= n; i ++){
cout << a[i] << ' ';
}
cout << '\n';
for(int i = 1; i <= m; i++){
cout << b[i] << ' ';
}
cout << '\n';
for(int i = 1; i <= n; i++){
assert(a[i] < n * m);
}
for(int i = 1; i <= m; i++){
assert(b[i] < n * m);
}
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m; j++){
int d = a[i] * b[j] % (n * m);
if(vis[d])ok = 0;
vis[d] = 1;
}
}
assert(ok);
};
if(n == 1 && m == 1){
a[1] = 0;
b[1] = 0;
pf();
return ;
}
if(n == 1){
a[1] = 1;
for(int i = 1; i <= m; i++){
b[i] = i - 1;
}
pf();
return ;
}
if(m == 1){
b[1] = 1;
for(int i = 1; i <= n; i++){
a[i] = i - 1;
}
pf();
return ;
}
if(n % 2 == m % 2){
cout << "No\n";
return ;
}
if(n % 2 == 0){
for(int i = 1; i <= n; i++){
a[i] = i;
}
for(int i = 1, j = 1; i <= m; i++, j += n){
b[i] = j;
}
pf();
}else{
for(int i = 1; i <= m; i++){
b[i] = i;
}
for(int i = 1, j = 1; i <= n; i++, j += m){
a[i] = j;
}
pf();
}
return ;
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
int t = 1;
cin >> t;
while(t--)solve();
return 0;
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3552kb
input:
2 2 3 2 2
output:
Yes 1 2 1 3 5 No
result:
ok 2 cases (2 test cases)
Test #2:
score: 0
Accepted
time: 23ms
memory: 18756kb
input:
1 1 1000000
output:
Yes 1 0 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...
result:
ok 1 cases (1 test case)
Test #3:
score: 0
Accepted
time: 40ms
memory: 18820kb
input:
1 1000000 1
output:
Yes 0 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 10...
result:
ok 1 cases (1 test case)
Test #4:
score: 0
Accepted
time: 2ms
memory: 6984kb
input:
1 2 500000
output:
No
result:
ok 1 cases (1 test case)
Test #5:
score: 0
Accepted
time: 20ms
memory: 14928kb
input:
1 2 499999
output:
Yes 1 2 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111 113 115 117 119 121 123 125 127 129 131 133 135 137 139 141 143 145 147 149 151 153 155 157 159 161 163 165 167 169 171 17...
result:
ok 1 cases (1 test case)
Test #6:
score: 0
Accepted
time: 0ms
memory: 7016kb
input:
1 500000 2
output:
No
result:
ok 1 cases (1 test case)
Test #7:
score: 0
Accepted
time: 21ms
memory: 14948kb
input:
1 499999 2
output:
Yes 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 101 103 105 107 109 111 113 115 117 119 121 123 125 127 129 131 133 135 137 139 141 143 145 147 149 151 153 155 157 159 161 163 165 167 169 171 173 175...
result:
ok 1 cases (1 test case)
Test #8:
score: 0
Accepted
time: 0ms
memory: 5680kb
input:
1 3 333333
output:
No
result:
ok 1 cases (1 test case)
Test #9:
score: -100
Runtime Error
input:
1 3 333332
output:
Yes 1 333333 666665 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 ...