답안 #590120

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
590120 2022-07-05T14:35:37 Z fabijan_cikac Art Collections (BOI22_art) C++17
컴파일 오류
0 ms 0 KB
#include <bits/stdc++.h>

using namespace std;

#include "art.h"

const int MAXN = 4010;

/*int publish(vector<int> v){
	cout << "u: ";
	for (int i = 0; i < v.size(); ++i)
		cout << v[i] << ' ';
	cout << endl;
	int x; cin >> x; return x;
}

void answer(vector<int> v){
	for (int i = 0; i < v.size(); ++i) cout << v[i] << ' ';
}*/

int l[MAXN]; int bio[MAXN] = { 0 };
void solve(int N){
	vector<int> sol; vector<int> v;
	for (int i = 1; i <= N; ++i)
		v.push_back(i);
	for (int i = 0; i < N; ++i){
		l[i] = publish(v); reverse(v.begin(), v.end());
		v.pop_back(); reverse(v.begin(), v.end()); v.push_back(i + 1);
	}
	int num = 0;
	for (int i = 0; i < N - 1; ++i){
		int x = 0; /*cout << "a: ";
		for (int j = 0; j < N; ++j){
			cout << l[j] << ' ';
		}
		cout << endl;*/
		while (l[(x + 1) % N] - l[x] != N - i - 1) ++x;
		//cout << ':' << x << endl;
		bio[x] = 1;
		sol.push_back(x + 1); int kx = (x - 1 + N) % N; int cnt = 1;
		while (kx != x){
			l[kx] -= (cnt - num); ++cnt; kx = (kx - 1 + N) % N;
		}
		++num;
	}
	for (int i = 0; i < N; ++i){
		if (!bio[i]) sol.push_back(i + 1);
	}
	answer(sol);
}

int main(){
	solve(3);
}

Compilation message

interface.cpp: In function 'int publish(std::vector<int>)':
interface.cpp:20:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   20 |     if(v.size() != N) {
      |        ~~~~~~~~~^~~~
interface.cpp: In function 'void answer(std::vector<int>)':
interface.cpp:36:17: warning: comparison of integer expressions of different signedness: 'std::vector<int>::size_type' {aka 'long unsigned int'} and 'int' [-Wsign-compare]
   36 |     if(v.size() != N) {
      |        ~~~~~~~~~^~~~
/usr/bin/ld: /tmp/ccrFQUsi.o: in function `main':
interface.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/ccuTO2ck.o:art.cpp:(.text.startup+0x0): first defined here
collect2: error: ld returned 1 exit status