답안 #138408

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
138408 2019-07-29T21:12:27 Z cfalas Detecting Molecules (IOI16_molecules) C++14
0 / 100
2 ms 348 KB
#include<bits/stdc++.h>
using namespace std;
#include "molecules.h"
typedef pair<int, int> ii;
#define S second

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
	vector<ii> sorpos;
	int f = 0;
	int s = 0;
	int n = w.size();
	for(int i=0;i<w.size();i++) sorpos.push_back(ii(w[i], i));
	for(int i=0;i<n;i++){
		if(w[i]==w[0]) f++;
		else s = w[i];
	}
	for(int i=0;i<=f;i++){
		int tot = i*w[0];
		/*
		int added = 0;
		while(tot<l && s!=0){
			tot+=s;
			added++;
		}
		*/
		int cnt2 = u - tot;
		if(s!=0) cnt2/=s;
		cout<<tot<<" "<<cnt2<<"\n";
		if(tot+cnt2*s >= l && tot+cnt2*s <= u && cnt2<=n-f){
			vector<int> result;
			for(int j=0;j<i;j++){
				result.push_back(sorpos[j].S);
			}
			for(int j=0;j<cnt2;j++){
				result.push_back(sorpos[n-j-1].S);
			}
			return result;
		}
	}
	return vector<int>();
}

Compilation message

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:12:15: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0;i<w.size();i++) sorpos.push_back(ii(w[i], i));
              ~^~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 256 KB Secret is incorrect!
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 348 KB Secret is incorrect!
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 256 KB Secret is incorrect!
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 256 KB Secret is incorrect!
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 256 KB Secret is incorrect!
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 2 ms 256 KB Secret is incorrect!
2 Halted 0 ms 0 KB -