제출 #1354111

#제출 시각아이디문제언어결과실행 시간메모리
1354111takoshanavaA Difficult(y) Choice (BOI21_books)C++20
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>
#include "books.h"
//#define int long long
#define ll long long
#define pb push_back
#define fs first
#define sc second
using namespace std;

void solve(int n, int k, long long a, int s){
    vector<int> vec; 
    ll sum = 0;
    for(int i = 1; i <= k; i++) int v = skim(i), vec.pb(v), sum += v;
    for(int i = max(k + 1, n - k + 1); i++) vec.pb(skim(i));

    if(sum > 2 * a) impossible();

    int r = k, l = 1;
    vector<int> res;
    while(r < n){
        sum -= vec[l];
        r++;
        sum += vec[r];
        if(sum >= a and sum <= 2 * a){
            for(int i = l; i <= r; i++) res.pb(i);
            answer(res);
        }
        l++;
    }
    if(sum < a) impossible();

    l = 1, r = n, val;
    while(l <= r){
        int mid = (l + r) / 2;
        int v = skim(mid);
        if(v > a) r = mid - 1;
        else l = mid + 1, val = v;
    }

    vector<int> vec1;
    for(int i = 0; i < k; i++) vec1.pb(vec[i]);

    for(int i = max(k + 1, l - k); i++) vec1.pb(skim(i));

    r = k, l = 1;
    while(r < n){
        sum -= vec1[l];
        r++;
        sum += vec1[r];
        if(sum >= a and sum <= 2 * a){
            for(int i = l; i <= r; i++) res.pb(i);
            answer(res);
        }
        l++;
    }

    sum = 0;
    vec1.clear();
    for(int i = 0; i < k - 1; i++) sum += vec[i], vec1.pb(i);
    sum += val;
    vec1.pb(l);
    if(sum < 2 * a) answer(vec1);
    impossible();
}


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

books.cpp: In function 'void solve(int, int, long long int, int)':
books.cpp:13:53: error: expected initializer before '.' token
   13 |     for(int i = 1; i <= k; i++) int v = skim(i), vec.pb(v), sum += v;
      |                                                     ^
books.cpp:14:43: error: expected ';' before ')' token
   14 |     for(int i = max(k + 1, n - k + 1); i++) vec.pb(skim(i));
      |                                           ^
      |                                           ;
books.cpp:32:19: error: 'val' was not declared in this scope
   32 |     l = 1, r = n, val;
      |                   ^~~
books.cpp:43:39: error: expected ';' before ')' token
   43 |     for(int i = max(k + 1, l - k); i++) vec1.pb(skim(i));
      |                                       ^
      |                                       ;