답안 #137025

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
137025 2019-07-26T23:05:37 Z MladenP Detecting Molecules (IOI16_molecules) C++17
컴파일 오류
0 ms 0 KB
#include "molecules.h"
#include <bits/stdc++.h>
#define MAXN 200010
#define pb push_back

using namespace std;

struct mol{
    int i, val;
};

bool cmp(mol a, mol b) { return a.val < b.val; }

mol a[MAXN];
vector<int> sol;

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    int n = w.size();

    for(int i = 0; i < n; i++) {
        a[i].val = w[i]; a[i].i = i;
    }
    sort(a, a+n, cmp);
    long long zbir =  a[0].val;
    int L = 0, R = 1;
    while(L < R && L < n && R <= n)) {
        if(zbir < l) {
          zbir += a[R].val;
          R++;
        } else if(zbir > u) {
          zbir -= a[L].val;
          L++;
        } else {
            for(int k = L; k < R; k++) sol.push_back(a[k].i);
            return sol;
        }
    }

    return std::vector<int>(0);
}

Compilation message

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:26:36: error: expected primary-expression before ')' token
     while(L < R && L < n && R <= n)) {
                                    ^
molecules.cpp:24:15: warning: unused variable 'zbir' [-Wunused-variable]
     long long zbir =  a[0].val;
               ^~~~