답안 #555253

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
555253 2022-04-30T10:36:03 Z nafis_shifat 송금 (JOI19_remittance) C++17
0 / 100
0 ms 212 KB
#include<bits/stdc++.h>
#define ll long long
#define pii pair<int,int>
using namespace std;
const int mxn=1e6+5;
const int inf=1e9;
int a[mxn], b[mxn];
int n;
void process() {
    for(int i = 0; i < n; i++) {
        int nxt = (i + 1) % n;

        int rem = (a[i] - b[i]) / 2;
        if(rem <= 0) continue;

        a[nxt] += rem;
        a[i] -= 2 * rem;
    }
}
int main() {
    cin >> n;
    ll bs = 0;
    ll as = 0;
    for(int i = 0; i < n; i++) {
        scanf("%d%d", &a[i], &b[i]);
        bs += b[i];
        as += a[i];
    }

    if(as && !bs) {
        cout<<"NO"<<endl;
        return 0;
    }


    for(int i = 0; i < 60; i++) process();

    bool f1 = true, f2 = true;

    for(int i = 0; i < n; i++) {
        f1 = f1 && (a[i] == b[i]);
        f2 = f2 && (a[i] == b[i] + 1);
    }
    if(f1 || f2) cout<<"YES"<<endl;
    else cout<<"NO"<<endl;
}

Compilation message

remittance.cpp: In function 'int main()':
remittance.cpp:25:14: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   25 |         scanf("%d%d", &a[i], &b[i]);
      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 0 ms 212 KB Output isn't correct
2 Halted 0 ms 0 KB -