제출 #849626

#제출 시각아이디문제언어결과실행 시간메모리
849626Bach21Detecting Molecules (IOI16_molecules)C++14
컴파일 에러
0 ms0 KiB
#include <bits/stdc++.h>
#include "molecules.h"
using namespace std;
#define int long long
const int nmax=2e5+5;
int find_subset(int l, int u, int w[], int n, int result[])
{
    pair<int,int> w1[nmax];
    for (int i=0;i<n;i++)
    {
        w1[i].first=w[i];
        w1[i].second=i+1;
    }
    sort(w1,w1+n,greater<pair<int,int>>());
    int l1=0;
    int r=n-1;
    int tmp=0;
    while (r>l1)
    {
        if (tmp+w1[l1].first<=l)
        {
            tmp+=w1[l1].first;
            l1++;
        } else if (tmp+w1[l1].first>=l && tmp+w1[l1].first<=u)
        {
            tmp+=w1[l1].first;
            l1++;
        } else if (tmp+w1[l1].first>=u)
        {
            while (tmp<l)
            {
                tmp+=w1[r].first;
                r--;
            }
            while (tmp>u)
            {
                tmp-=w1[l1].first;
                l1--;
            }
        }
        if (tmp<=u && tmp>=l) break;
    }
    if (tmp<u || tmp>l) return 0;
    int d=0;
    for (int i=0;i<l1;i++)
    {
        result[d]=w1[i].second;
        d++;
    }
    for (int i=r;i<n;i++)
    {
        result[d]=w1[i].second;
        d++;
    }
    d--;
    return d;
}

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

/usr/bin/ld: /tmp/cc18l29S.o: in function `main':
grader.cpp:(.text.startup+0x18d): undefined reference to `find_subset(int, int, std::vector<int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status