제출 #126069

#제출 시각아이디문제언어결과실행 시간메모리
126069EntityITCoin Collecting (JOI19_ho_t4)C++14
100 / 100
83 ms4960 KiB
#include<bits/stdc++.h>

using namespace std;

const int N = (int)1e5 + 5;
int n, cnt[N][3], curCoin[3];
long long ans;

int main () {
    scanf("%d", &n);
    for (int i = 1; i <= (n << 1); ++i) {
        int x, y; scanf("%d %d", &x, &y);
        if (x < 1) ans += 1 - x, x = 1;
        if (n < x) ans += x - n, x = n;
        if (y < 1) ans += 1 - y, y = 1;
        if (2 < y) ans += y - 2, y = 2;
        ++cnt[x][y];
    }

    for (int i = 1; i <= n; ++i) {
        for (int _ = 1; _ <= 2; ++_) curCoin[_] += cnt[i][_], --curCoin[_];
        for (int _ = 1; _ <= 2; ++_) {
            if (curCoin[_] < 0 && 0 < curCoin[3 - _]) {
                int tmp = min(-curCoin[_], curCoin[3 - _]);
                ans += tmp;
                curCoin[_] += tmp;
                curCoin[3 - _] -= tmp;
            }
        }
        ans += abs(curCoin[1]) + abs(curCoin[2]);
    }

    printf("%lld", ans);

    return 0;
}

컴파일 시 표준 에러 (stderr) 메시지

joi2019_ho_t4.cpp: In function 'int main()':
joi2019_ho_t4.cpp:10:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d", &n);
     ~~~~~^~~~~~~~~~
joi2019_ho_t4.cpp:12:24: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         int x, y; scanf("%d %d", &x, &y);
                   ~~~~~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...