답안 #520073

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
520073 2022-01-28T09:43:55 Z drkarlicio2107 Minerals (JOI19_minerals) C++14
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>
#include "minerals.h"
using namespace std; vector <int> a, b;
int cnt=0;
int diff (int x){
	int a=Query (x);
	if (a!=cnt){
		cnt=a; return 1;
	}
	else{
		cnt=a; return 0;
	}
}
void solve (vector <int> a, vector <int> b, int x){
	random_shuffle (a.begin(), a.end());
	random_shuffle (b.begin(), b.end());
	if (a.size()==1){
		Answer (a[0], b[0]); return 0;
	}
	int mid=a.size()/2;
	vector <int> a1, a2, b1, b2;
	for(int i=0; i<a.size(); i++){
        if(i<mid) a1.push_back(a[i]);
        else a2.push_back(a[i]);
        if((i>=mid)^x) diff(a[i]);
    }
	for (int i=0; i<b.size(); i++){
		if (b1.size()==a1.size()) b2.push_back(b[i]);
		else if (b2.size()==a2.size()) b1.push_back(b[i]);
		else if (diff (b[i])) b1.push_back(b[i]);
		else b2.push_back(b[i]);
	}
	solve (a1, b1, 0);
	solve (a2, b2, 1);
}
void Solve(int n){
	for (int i=1; i<2*n+1; i++){
		if (diff (i)) b.push_back(i);
		else a.push_back(i);
	}
	solve (a,b,1);
}

Compilation message

minerals.cpp: In function 'void solve(std::vector<int>, std::vector<int>, int)':
minerals.cpp:18:31: error: return-statement with a value, in function returning 'void' [-fpermissive]
   18 |   Answer (a[0], b[0]); return 0;
      |                               ^
minerals.cpp:22:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |  for(int i=0; i<a.size(); i++){
      |               ~^~~~~~~~~
minerals.cpp:27:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   27 |  for (int i=0; i<b.size(); i++){
      |                ~^~~~~~~~~