//mubarizvusal
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define allr(v) v.rbegin(), v.rend()
#define all(v) v.begin(), v.end()
#define mcqueen ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr);
#define pii pair<int,int>
#define pb push_back
#define new int32_t
#define ts to_string
#define fi first
#define se second
#define ins insert
#define int ll
#define kub(i) i*i*i
new main(){
int T; cin >> T;
while(T--){
int N, M; cin >> N >> M;
vector<string> grid(N, string(M, '+'));
int mid_row = N / 2;
int mid_col = M / 2;
// Üst yarı: Genelde '+'
// Sağ taraftaki son sütunu '-' yaparak sütunlarda az da olsa mavi ekleyelim
for(int i=0; i<mid_row; i++){
// Son sütunu '-'
if(M > 0) grid[i][M-1] = '-';
}
// Alt yarı: Tamamen '-'
for(int i=mid_row; i<N; i++){
for(int j=0; j<M; j++){
grid[i][j] = '-';
}
}
// Sonuç olarak:
// Üst yarıda çoğunluk '+', ama en sağda '-' var
// Alt yarıda tamamen '-'
// Bu desenin A+B değeri bazı durumlarda artış gösterebilir.
// A + B değerini hesaplayalım (opsiyonel)
// Burada gösteriyoruz ama problemde sadece tabloyu basmamız da yeterli.
auto computeAB = [&](const vector<string>& g){
int A=0, B=0;
// Hesapla A
for(int i=0;i<N;i++){
int plusCount=0, minusCount=0;
for(int j=0;j<M;j++){
if(g[i][j] == '+') plusCount++; else minusCount++;
}
if(plusCount > minusCount) A++;
}
// Hesapla B
for(int j=0;j<M;j++){
int plusCount=0, minusCount=0;
for(int i=0;i<N;i++){
if(g[i][j] == '+') plusCount++; else minusCount++;
}
if(minusCount > plusCount) B++;
}
return make_pair(A,B);
};
auto [A,B] = computeAB(grid);
cout << (A+B) << "\n";
for(auto &row : grid) cout << row << "\n";
}
}
# | 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... |