Submission #1678250


Source Code Expand

#include <iostream>
#include <algorithm>
#include <utility>

using namespace std;

int H, W;
long long res = 1000000000;

long long min_val, max_val;

void update_val(int Surface) {
    min_val = min(min_val, (long long) Surface);
    max_val = max(max_val, (long long) Surface);
}

int solve() {
    for (int i = 1; i <= H - 1; ++i) {
        min_val = (long long) i * W;
        max_val = (long long) i * W;

        int separated_width;
        if (W % 2) {
            separated_width = W / 2 + 1;
            update_val((H - i) * separated_width);
            update_val((H - i) + (W - separated_width));
            res = min(res, max_val - min_val);

            min_val = i * W;
            max_val = i * W;
        }
        separated_width = W / 2;
        update_val((H - i) * separated_width);
        update_val((H - i) * (W - separated_width));
        res = min(res, max_val - min_val);

        min_val = i * W;
        max_val = i * W;
        if (H - i >= 2) {
            int separated_height;
            if ((H - i) % 2) {
                separated_height = (H - i) / 2 + 1;
                update_val(separated_height * W);
                update_val((H - i - separated_height) * W);
                res = min(res, max_val - min_val);

                min_val = i * W;
                max_val = i * W;
            }
            separated_height = (H - i) / 2;
            update_val((H - i - separated_height) * W);
            update_val(separated_height * W);
            res = min(res, max_val - min_val);
        }
    }
}


int main() {
    cin.tie(0);
    ios::sync_with_stdio(false);

    cin >> H >> W;

    solve();
    swap(H, W);
    solve();
    cout << res << endl;
}

Submission Info

Submission Time
Task C - Chocolate Bar
User colaholic
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1772 Byte
Status WA
Exec Time 3 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 400
Status
AC × 4
WA × 1
AC × 18
WA × 2
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
0_03.txt AC 2 ms 256 KB
0_04.txt WA 3 ms 256 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 2 ms 256 KB
1_02.txt AC 2 ms 256 KB
1_03.txt AC 2 ms 256 KB
1_04.txt AC 2 ms 256 KB
1_05.txt AC 2 ms 256 KB
1_06.txt AC 3 ms 256 KB
1_07.txt AC 2 ms 256 KB
1_08.txt AC 2 ms 256 KB
1_09.txt AC 2 ms 256 KB
1_10.txt WA 3 ms 256 KB
1_11.txt AC 2 ms 256 KB
1_12.txt AC 3 ms 256 KB
1_13.txt AC 2 ms 256 KB
1_14.txt AC 2 ms 256 KB