Submission #142965

# Submission time Handle Problem Language Result Execution time Memory
142965 2019-08-12T12:45:01 Z VladaMG98 Red-blue table (IZhO19_stones) C++17
15 / 100
43 ms 1784 KB
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1010;
bool anss[MAXN][MAXN];
void solve_test() {
    int n, m;
    scanf("%d %d", &n, &m);
    int ans = 0, best_A = -1;
    for(int A = 0; A <= n; A++) {
        int half = m / 2 + 1;
        int D = (m - half) * A;
        int need = max(0, n / 2 + 1 - (n - A));
        int B;
        if(need == 0) B = m;
        else B = min(m, D / need);
        if(A + B > ans) {
            ans = A + B;
            best_A = A;
        }
    }
    printf("%d\n", ans);
    for(int i = 0; i < n; i++) {
        for(int j = 0; j < m; j++) {
            anss[i][j] = false;
        }
    }
    int s = 0;
    int half = m / 2 + 1;
    for(int i = 0; i < best_A; i++) {
        for(int j = 0; j < half; j++) {
            anss[i][(s + j) % m] = true;
        }
        s = (s + half) % m;
    }
    for(int i = 0; i < n; i++) {
        for(int j = 0; j < m; j++) {
            if(anss[i][j]) printf("+");
            else printf("-");
        }
        printf("\n");
    }
}
int main() {
    int tests;
    scanf("%d", &tests);
    while(tests--) {
        solve_test();
    }
    return 0;
}

Compilation message

stones.cpp: In function 'void solve_test()':
stones.cpp:7:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d %d", &n, &m);
     ~~~~~^~~~~~~~~~~~~~~~~
stones.cpp: In function 'int main()':
stones.cpp:45:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &tests);
     ~~~~~^~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Incorrect 2 ms 256 KB in the table A+B is not equal to 5
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 376 KB in the table A+B is not equal to 5
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Incorrect 2 ms 256 KB in the table A+B is not equal to 5
# Verdict Execution time Memory Grader output
1 Incorrect 43 ms 1392 KB in the table A+B is not equal to 116
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 43 ms 1504 KB Output is correct
2 Correct 35 ms 1784 KB Output is correct
3 Correct 32 ms 1612 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Output is correct
2 Incorrect 2 ms 256 KB in the table A+B is not equal to 5