QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#292111 | #6309. Aqre | QwertyPi# | RE | 45ms | 20320kb | C++17 | 2.8kb | 2023-12-27 18:35:08 | 2023-12-27 18:35:08 |
Judging History
answer
#include <bits/stdc++.h>
#define int long long
#define all(a) (a).begin(), (a).end()
#define sz(a) (int) (a).size()
#define forn(i, n) for(int i = 0; i < (n); i++)
using namespace std;
bool b[1000][1000];
struct DSU{
int dsu[1000 * 1000];
void in(int n){ for(int i = 0; i <= n; i++) dsu[i] = i; }
int f(int x){ return x == dsu[x] ? x : dsu[x] = f(dsu[x]); }
void g(int x, int y) { x = f(x), y = f(y); dsu[x] = y; }
} dsu;
void check(int n, int m){
dsu.in(n * m);
forn(i, n) forn(j, m - 1)
if (b[i][j] && b[i][j + 1])
dsu.g(i * m + j, i * m + j + 1);
forn(i, n - 1) forn(j, m)
if (b[i][j] && b[i + 1][j])
dsu.g(i * m + j, (i + 1) * m + j);
vector<int> h;
forn(i, n) forn(j, m)
if (b[i][j]) h.push_back(dsu.f(i * m + j));
for(int i = 1; i < h.size(); i++){
assert(h[i] == h[0]);
}
forn(i, n) forn(j, m - 3)
assert(!(b[i][j] && b[i][j + 1] && b[i][j + 2] && b[i][j + 3]));
forn(i, n - 3) forn(j, m)
assert(!(b[i][j] && b[i + 1][j] && b[i + 2][j] && b[i + 3][j]));
}
void solve(){
int n, m; cin >> n >> m;
bool swapped = false;
if(n > m) {
swapped = true;
swap(n, m);
}
if(n <= 3 && m <= 3){
forn(i, n) forn(j, m) b[i][j] = 1;
}else if(n == 3){
forn(i, n) forn(j, m) {
int ri = i % 4, rj = j % 4;
if(ri == 0 && rj == 3 || ri == 1 && rj == 3 || ri == 2 && rj == 1){
b[i][j] = 0;
}else{
b[i][j] = 1;
}
}
}else{
if (n % 4 == 3 && m % 4 == 1) {
swapped ^= 1;
swap(n, m);
}
vector<int> c = n == 2 || n % 4 == 0 || m % 4 == 0 ? vector<int>{1, 3, 0, 2} : vector<int>{3, 2, 0, 1};
forn(i, n) forn(j, m) {
int ri = i % 4, rj = j % 4;
if(rj == c[ri]){
b[i][j] = 0;
}else{
b[i][j] = 1;
}
}
}
int total = 0;
forn(i, n) forn(j, m) total += b[i][j];
check(n, m);
#ifdef LOCAL
int potent = (n / 4 * 3) * (m % 4) + (n % 4) * (m / 4 * 3) + ((n / 4) * (m / 4) * 12);
int diff = (n % 4) * (m % 4) - (total - potent);
if(diff) cout << "DIFF = " << diff << ' ' << n << ' ' << m << endl;
#else
cout << total << '\n';
if (swapped) {
forn(i, m) {
forn(j, n) cout << b[j][i];
cout << '\n';
}
}else{
forn(i, n) {
forn(j, m) cout << b[i][j];
cout << '\n';
}
}
#endif
}
int32_t main(){
cin.tie(0); cout.tie(0)->sync_with_stdio(false);
int t = 1;
cin >> t;
while(t--){
solve();
}
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3436kb
input:
3 2 2 3 4 3 8
output:
4 11 11 9 1110 1110 1011 18 11101110 11101110 10111011
result:
ok ok (3 test cases)
Test #2:
score: 0
Accepted
time: 2ms
memory: 3476kb
input:
361 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10 2 11 2 12 2 13 2 14 2 15 2 16 2 17 2 18 2 19 2 20 3 2 3 3 3 4 3 5 3 6 3 7 3 8 3 9 3 10 3 11 3 12 3 13 3 14 3 15 3 16 3 17 3 18 3 19 3 20 4 2 4 3 4 4 4 5 4 6 4 7 4 8 4 9 4 10 4 11 4 12 4 13 4 14 4 15 4 16 4 17 4 18 4 19 4 20 5 2 5 3 5 4 5 5 5 6 5 7 5 8 5 9 5 1...
output:
4 11 11 6 111 111 6 1011 1110 8 10111 11101 9 101110 111011 11 1011101 1110111 12 10111011 11101110 14 101110111 111011101 15 1011101110 1110111011 17 10111011101 11101110111 18 101110111011 111011101110 20 1011101110111 1110111011101 21 10111011101110 11101110111011 23 101110111011101 1110111011101...
result:
ok ok (361 test cases)
Test #3:
score: 0
Accepted
time: 27ms
memory: 3860kb
input:
100 91 91 91 92 91 93 91 94 91 95 91 96 91 97 91 98 91 99 91 100 92 91 92 92 92 93 92 94 92 95 92 96 92 97 92 98 92 99 92 100 93 91 93 92 93 93 93 94 93 95 93 96 93 97 93 98 93 99 93 100 94 91 94 92 94 93 94 94 94 95 94 96 94 97 94 98 94 99 94 100 95 91 95 92 95 93 95 94 95 95 95 96 95 97 95 98 95 9...
output:
6211 1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111 1101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110 0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011 1011101110111011101...
result:
ok ok (100 test cases)
Test #4:
score: 0
Accepted
time: 34ms
memory: 4632kb
input:
16 247 247 247 248 247 249 247 250 248 247 248 248 248 249 248 250 249 247 249 248 249 249 249 250 250 247 250 248 250 249 250 250
output:
45757 1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111 1101110111011101110111011101110111011101110111...
result:
ok ok (16 test cases)
Test #5:
score: 0
Accepted
time: 42ms
memory: 20224kb
input:
1 997 997
output:
745507 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #6:
score: 0
Accepted
time: 38ms
memory: 20212kb
input:
1 997 998
output:
746255 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #7:
score: 0
Accepted
time: 37ms
memory: 20296kb
input:
1 997 999
output:
747003 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #8:
score: 0
Accepted
time: 38ms
memory: 20200kb
input:
1 997 1000
output:
747750 10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...
result:
ok ok (1 test case)
Test #9:
score: 0
Accepted
time: 38ms
memory: 20260kb
input:
1 998 997
output:
746255 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #10:
score: 0
Accepted
time: 42ms
memory: 20220kb
input:
1 998 998
output:
747004 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #11:
score: 0
Accepted
time: 43ms
memory: 20312kb
input:
1 998 999
output:
747752 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #12:
score: 0
Accepted
time: 31ms
memory: 20264kb
input:
1 998 1000
output:
748500 10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...
result:
ok ok (1 test case)
Test #13:
score: 0
Accepted
time: 45ms
memory: 20292kb
input:
1 999 997
output:
747003 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #14:
score: 0
Accepted
time: 33ms
memory: 20304kb
input:
1 999 998
output:
747752 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #15:
score: 0
Accepted
time: 39ms
memory: 20312kb
input:
1 999 999
output:
748501 11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...
result:
ok ok (1 test case)
Test #16:
score: 0
Accepted
time: 33ms
memory: 20284kb
input:
1 999 1000
output:
749250 10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...
result:
ok ok (1 test case)
Test #17:
score: 0
Accepted
time: 37ms
memory: 20308kb
input:
1 1000 997
output:
747750 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #18:
score: 0
Accepted
time: 37ms
memory: 20320kb
input:
1 1000 998
output:
748500 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #19:
score: 0
Accepted
time: 38ms
memory: 20164kb
input:
1 1000 999
output:
749250 11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...
result:
ok ok (1 test case)
Test #20:
score: -100
Runtime Error
input:
1 1000 1000