QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#135719#6309. AqreSwarthmore#AC ✓57ms12428kbC++174.9kb2023-08-05 23:14:212023-08-05 23:14:22

Judging History

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

  • [2023-08-10 23:21:45]
  • System Update: QOJ starts to keep a history of the judgings of all the submissions.
  • [2023-08-05 23:14:22]
  • 评测
  • 测评结果:AC
  • 用时:57ms
  • 内存:12428kb
  • [2023-08-05 23:14:21]
  • 提交

answer

#include "bits/stdc++.h"
#pragma GCC optimize ("O3")
#pragma GCC target ("sse4")
 
using namespace std;
 
typedef long long ll;
typedef long double ld;
typedef complex<ld> cd;
 
typedef pair<int, int> pi;
typedef pair<ll,ll> pl;
typedef pair<ld,ld> pd;
 
typedef vector<int> vi;
typedef vector<ld> vd;
typedef vector<ll> vl;
typedef vector<pi> vpi;
typedef vector<pl> vpl;
typedef vector<cd> vcd;

template<class T> using pq = priority_queue<T>;
template<class T> using pqg = priority_queue<T, vector<T>, greater<T>>;
 
#define FOR(i, a, b) for (int i=a; i<(b); i++)
#define F0R(i, a) for (int i=0; i<(a); i++)
#define FORd(i,a,b) for (int i = (b)-1; i >= a; i--)
#define F0Rd(i,a) for (int i = (a)-1; i >= 0; i--)
#define trav(a,x) for (auto& a : x)
#define uid(a, b) uniform_int_distribution<int>(a, b)(rng)
 
#define sz(x) (int)(x).size()
#define mp make_pair
#define pb push_back
#define f first
#define s second
#define lb lower_bound
#define ub upper_bound
#define all(x) x.begin(), x.end()
#define ins insert

template<class T> bool ckmin(T& a, const T& b) { return b < a ? a = b, 1 : 0; }
template<class T> bool ckmax(T& a, const T& b) { return a < b ? a = b, 1 : 0; }
 
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());

void __print(int x) {cerr << x;}
void __print(long x) {cerr << x;}
void __print(long long x) {cerr << x;}
void __print(unsigned x) {cerr << x;}
void __print(unsigned long x) {cerr << x;}
void __print(unsigned long long x) {cerr << x;}
void __print(float x) {cerr << x;}
void __print(double x) {cerr << x;}
void __print(long double x) {cerr << x;}
void __print(char x) {cerr << '\'' << x << '\'';}
void __print(const char *x) {cerr << '\"' << x << '\"';}
void __print(const string &x) {cerr << '\"' << x << '\"';}
void __print(bool x) {cerr << (x ? "true" : "false");}

template<typename T, typename V>
void __print(const pair<T, V> &x) {cerr << '{'; __print(x.first); cerr << ", "; __print(x.second); cerr << '}';}
template<typename T>
void __print(const T &x) {int f = 0; cerr << '{'; for (auto &i: x) cerr << (f++ ? ", " : ""), __print(i); cerr << "}";}
void _print() {cerr << "]\n";}
template <typename T, typename... V>
void _print(T t, V... v) {__print(t); if (sizeof...(v)) cerr << ", "; _print(v...);}
#ifdef DEBUG
#define dbg(x...) cerr << "\e[91m"<<__func__<<":"<<__LINE__<<" [" << #x << "] = ["; _print(x); cerr << "\e[39m" << endl;
#else
#define dbg(x...)
#endif


const int MOD = 1000000007;
const char nl = '\n';
const int MX = 1001; 

int N, M;
int ans;
bool vis[MX][MX];
int bst[MX][MX];
int cur[MX][MX];


int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};

bool valid(int x, int y) {
    return x >= 0 && x < N && y >= 0 && y < M;
}

void go(vi vals) {
    int co = N*M;
    F0R(i, N) {
        F0R(j, M) {
            cur[i][j] = 1;
            if (j%4 == vals[i%4]) {
                cur[i][j] = 0;
                co--;
            }
        }
    }
    //dbg(vals, co);
    if (co <= ans) return;
    //dbg("Try", vals);
    int fx = -1, fy = -1;
    F0R(i, N) F0R(j, M) if (cur[i][j] == 1) {
        fx = i; fy = j; break;
    }
    F0R(i, N) F0R(j, M) vis[i][j] = false;
    queue<pi> q; q.push({fx, fy});
    while (!q.empty()) {
        auto [x, y] = q.front(); q.pop();
        F0R(i, 4) {
            int nx = x + dx[i], ny = y + dy[i];
            if (valid(nx, ny) && cur[nx][ny] == 1 && !vis[nx][ny]) {
                vis[nx][ny] = true; q.push({nx, ny});
            }
        }
    }
    F0R(i, N) {
        F0R(j, M) {
            if (!vis[i][j] && cur[i][j] == 1) return;
        }
    }
    ans = co;
    F0R(i, N) {
        F0R(j, M) {
            bst[i][j] = cur[i][j];
        }
    }
    //dbg("OK");
}

void solve() {
    cin >> N >> M;
    ans = 0;
    bool fl = false;
    if (max(N, M) < 4) {
        cout << N*M << nl;
        F0R(i, N) {
            F0R(j, M) {
                cout << 1;
            }
            cout << nl;
        }
        return;
    }
    if (N > M) {
        swap(N, M); fl = true;
    }
    if (N <= 3) {
        F0R(i, 4) {
            F0R(j, 4) {
                F0R(k, 4) {
                    go({i, j, k});
                }
            }
        }
    } else {
        vi perm; F0R(i, 4) perm.pb(i);
        do {
            go(perm);
        } while (next_permutation(all(perm)));
    }
    cout << ans << nl;
    if (fl) {
        F0R(i, M) {
            F0R(j, N) {
                cout << bst[j][i];
            }
            cout << nl;
        }
    } else {
        F0R(i, N) {
            F0R(j, M) {
                cout << bst[i][j];
            }
            cout << nl;
        }
    }

}
 
int main() {
    ios_base::sync_with_stdio(0); cin.tie(0);

    int T = 1;
    cin >> T;
    while(T--) {
        solve();
    }

	return 0;
}



详细

Test #1:

score: 100
Accepted
time: 1ms
memory: 5540kb

input:

3
2 2
3 4
3 8

output:

4
11
11
9
0111
0111
0111
18
01110111
01110111
11011101

result:

ok ok (3 test cases)

Test #2:

score: 0
Accepted
time: 1ms
memory: 7764kb

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
0111
0111
8
10111
11101
9
011101
110111
11
1011101
1110111
12
01110111
11011101
14
101110111
111011101
15
0111011101
1101110111
17
10111011101
11101110111
18
011101110111
110111011101
20
1011101110111
1110111011101
21
01110111011101
11011101110111
23
101110111011101
1110111011101...

result:

ok ok (361 test cases)

Test #3:

score: 0
Accepted
time: 40ms
memory: 6096kb

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
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111
1101110111011101110...

result:

ok ok (100 test cases)

Test #4:

score: 0
Accepted
time: 45ms
memory: 12104kb

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
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011
1011101110111011101110111011101110111011101110...

result:

ok ok (16 test cases)

Test #5:

score: 0
Accepted
time: 57ms
memory: 12344kb

input:

1
997 997

output:

745507
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #6:

score: 0
Accepted
time: 56ms
memory: 12280kb

input:

1
997 998

output:

746255
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #7:

score: 0
Accepted
time: 45ms
memory: 12304kb

input:

1
997 999

output:

747003
11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #8:

score: 0
Accepted
time: 36ms
memory: 12288kb

input:

1
997 1000

output:

747750
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #9:

score: 0
Accepted
time: 53ms
memory: 12356kb

input:

1
998 997

output:

746255
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #10:

score: 0
Accepted
time: 49ms
memory: 12368kb

input:

1
998 998

output:

747004
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #11:

score: 0
Accepted
time: 44ms
memory: 12360kb

input:

1
998 999

output:

747752
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #12:

score: 0
Accepted
time: 35ms
memory: 12304kb

input:

1
998 1000

output:

748500
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #13:

score: 0
Accepted
time: 45ms
memory: 12400kb

input:

1
999 997

output:

747003
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #14:

score: 0
Accepted
time: 44ms
memory: 12296kb

input:

1
999 998

output:

747752
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #15:

score: 0
Accepted
time: 32ms
memory: 12404kb

input:

1
999 999

output:

748501
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #16:

score: 0
Accepted
time: 31ms
memory: 12428kb

input:

1
999 1000

output:

749250
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #17:

score: 0
Accepted
time: 36ms
memory: 12352kb

input:

1
1000 997

output:

747750
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #18:

score: 0
Accepted
time: 32ms
memory: 12296kb

input:

1
1000 998

output:

748500
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #19:

score: 0
Accepted
time: 36ms
memory: 12348kb

input:

1
1000 999

output:

749250
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #20:

score: 0
Accepted
time: 36ms
memory: 12408kb

input:

1
1000 1000

output:

750000
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #21:

score: 0
Accepted
time: 1ms
memory: 7660kb

input:

1
3 997

output:

2244
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #22:

score: 0
Accepted
time: 0ms
memory: 5688kb

input:

1
3 998

output:

2246
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #23:

score: 0
Accepted
time: 1ms
memory: 5612kb

input:

1
3 999

output:

2249
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #24:

score: 0
Accepted
time: 1ms
memory: 7708kb

input:

1
3 1000

output:

2250
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #25:

score: 0
Accepted
time: 1ms
memory: 5616kb

input:

1
997 3

output:

2244
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001...

result:

ok ok (1 test case)

Test #26:

score: 0
Accepted
time: 2ms
memory: 7664kb

input:

1
998 3

output:

2246
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111...

result:

ok ok (1 test case)

Test #27:

score: 0
Accepted
time: 2ms
memory: 5568kb

input:

1
999 3

output:

2249
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011
111
100
111
011...

result:

ok ok (1 test case)

Test #28:

score: 0
Accepted
time: 0ms
memory: 5680kb

input:

1
1000 3

output:

2250
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111
110
111
001
111...

result:

ok ok (1 test case)

Test #29:

score: 0
Accepted
time: 1ms
memory: 7692kb

input:

1
2 997

output:

1496
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #30:

score: 0
Accepted
time: 2ms
memory: 5648kb

input:

1
2 998

output:

1497
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #31:

score: 0
Accepted
time: 2ms
memory: 7656kb

input:

1
2 999

output:

1499
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #32:

score: 0
Accepted
time: 1ms
memory: 5660kb

input:

1
2 1000

output:

1500
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #33:

score: 0
Accepted
time: 2ms
memory: 7696kb

input:

1
997 2

output:

1496
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
1...

result:

ok ok (1 test case)

Test #34:

score: 0
Accepted
time: 1ms
memory: 5672kb

input:

1
998 2

output:

1497
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
1...

result:

ok ok (1 test case)

Test #35:

score: 0
Accepted
time: 1ms
memory: 7704kb

input:

1
999 2

output:

1499
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
1...

result:

ok ok (1 test case)

Test #36:

score: 0
Accepted
time: 1ms
memory: 5612kb

input:

1
1000 2

output:

1500
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
1...

result:

ok ok (1 test case)