답안 #114539

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
114539 2019-06-01T16:48:44 Z ly20 Detecting Molecules (IOI16_molecules) C++17
컴파일 오류
0 ms 0 KB
#include<bits/stdc++.h>
#define debug(args...) //fprintf(stderr,args)
using namespace std;
const int MAXN=112345;
int resp[MAXN],kn[MAXN];
vector<int> find_subset(int l,int u,vector<int> w)
{
	int n=w.size();
	for(int i=0;i<MAXN;i++)
	{
		kn[i]=-1;
	}
	kn[0]=-2;
	for(int i=0;i<n;i++)
	{
		for(int j=MAXN-1;j>=w[i];j--)
		{
			if(kn[j-w[i]]!=-1 && kn[j]==-1)kn[j]=i;
		}
	}
	int val=-1;
	for(int i=l;i<=u;i++)
	{
		if(kn[i]!=-1)val=i;
		debug("%d %d\n",i,kn[i]);
	}
	vector<int> result;
	int cont=0;
	while(val>0)
	{
		result[cont]=kn[val];
		val-=w[kn[val]];
		cont++;
	}
	for(int i=0;i<cont;i++)resp[i]=result[i];
	return result;
}
int w[MAXN];
int v[MAXN];
int main()
{
	int l,u,n;
	scanf("%d %d %d",&l,&u,&n);
	int a;
	vector<int> w;
	for(int i=0;i<n;i++)scanf("%d",&a), w.push_back(a);
	find_subset(l,u,w);
	for(int i=0;i<n;i++)printf("%d\n",w[resp[i]]);
}

Compilation message

molecules.cpp: In function 'int main()':
molecules.cpp:43:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d %d",&l,&u,&n);
  ~~~~~^~~~~~~~~~~~~~~~~~~~~
molecules.cpp:46:36: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for(int i=0;i<n;i++)scanf("%d",&a), w.push_back(a);
                      ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~
/tmp/cc9UD0i8.o: In function `main':
grader.cpp:(.text.startup+0x0): multiple definition of `main'
/tmp/cci7wylP.o:molecules.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status