#include <bits/stdc++.h>
#pragma GCC optimize ("O3")
#pragma GCC target ("sse4")
using namespace std;
#define int long long int
const int N = 3e5 + 10;
const int md = 1e9 + 7;
const int INF = 1e9;
int32_t main(int32_t argc, char *argv[]) {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int T = 1;
cin >> T;
while (T--) {
int n, m;
cin >> n >> m;
if (n < m) {
vector<vector<int>> a(n + 1, vector<int> (m + 1));
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
a[i][j] = 0;
vector<int> st(n + 1);
for (int j = 1; j <= m; j++) {
int cnt = 0;
for (int i = 1; i <= n && (cnt + 1) <= (n - (cnt + 1)) && st[i] <= (m - st[i]); i++) {
a[i][j] = 1;
cnt++;
st[i]++;
}
}
int ans = 0;
for (int i = 1; i <= n; i++) {
int cnt = 0;
for (int j = 1; j <= m; j++) {
cnt += a[i][j];
}
if (cnt > (m - cnt))
ans++;
}
ans += m;
cout << ans << '\n';
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++)
cout << (a[i][j] == 1 ? '+' : '-');
cout << '\n';
}
} else {
vector<vector<int>> a(n + 1, vector<int> (m + 1));
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
a[i][j] = 1;
vector<int> st(m + 1);
for (int i = 1; i <= n; i++) {
int cnt = 0;
for (int j = 1; j <= m && (cnt + 1) <= (m - (cnt + 1)) && st[j] <= (n - st[j]); j++) {
a[i][j] = 0;
cnt++;
st[j]++;
}
}
int ans = n;
for (int j = 1; j <= m; j++) {
int cnt = 0;
for (int i = 1; i <= n; i++) {
cnt += !(a[i][j]);
}
if (cnt > (n - cnt))
ans++;
}
cout << ans << '\n';
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= m; j++)
cout << (a[i][j] == 1 ? '+' : '-');
cout << '\n';
}
}
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |