답안 #672428

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
672428 2022-12-16T04:18:20 Z Alihan_8 Red-blue table (IZhO19_stones) C++17
43 / 100
27 ms 1236 KB
#include <bits/stdc++.h>
// include <ext/pb_ds/assoc_container.hpp>
// include <ext/pb_ds/tree_policy.hpp>
// using namespace __gnu_pbds;
using namespace std;
#define all(x) x.begin(), x.end()
#define pb push_back
// define ordered_set tree<int,null_type,less_equal<int>,rb_tree_tag,tree_order_statistics_node_update>
#define mpr make_pair
#define ln '\n'
void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
#define int long long
signed main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int T; cin >> T;
    while ( T-- ){
        int n, m; cin >> n >> m;
        int res = max(n, m)+(min(n, m)-1)/2;
        if ( min(n, m) == 5 ){
            cout << res+1 << ln;
            if ( n >= m ){
                for ( int i = 0; i < n; i++ ){
                    for ( int j = 0; j < m; j++ ){
                        if ( j < m/2 or (i+j)%3 == 0 ) cout << '+';
                        else cout << '-';
                    }
                    cout << ln;
                }
            }
            else{
                for ( int i = 0; i < n; i++ ){
                    for ( int j = 0; j < m; j++ ){
                        if ( i < n/2 or (i+j)%3 == 0 ) cout << '-';
                        else cout << '+';
                    }
                    cout << ln;
                }
            }
            continue;
        }
        cout << res << ln;
        if ( n >= m ){
            for ( int i = 0; i < n; i++ ){
                for ( int j = 0; j < m; j++ ){
                    if ( j <= m/2 ) cout << '+';
                    else cout << '-';
                }
                cout << ln;
            }
        }
        else{
            for ( int i = 0; i < n; i++ ){
                for ( int j = 0; j < m; j++ ){
                    if ( i <= n/2 ) cout << '-';
                    else cout << '+';
                }
                cout << ln;
            }
        }
    }

    cout << '\n';
}

Compilation message

stones.cpp: In function 'void IO(std::string)':
stones.cpp:11:29: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 | void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
      |                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stones.cpp:11:70: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   11 | void IO(string name){freopen((name+".in").c_str(),"r",stdin); freopen((name+".out").c_str(),"w",stdout);}
      |                                                               ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Incorrect 27 ms 1208 KB Wrong answer in test 97 21: 107 < 116
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 20 ms 1236 KB Wrong answer in test 24 24: 35 < 44
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 340 KB Output is correct
5 Incorrect 27 ms 1208 KB Wrong answer in test 97 21: 107 < 116
6 Halted 0 ms 0 KB -