페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#9650
스페셜 저지
인터랙티브

미술 수집품 3초 512MB

문제

이 문제는 인터렉티브 문제이다.

 

당신은 파일의 첫 줄에 "art.h"를 include하여야 한다.

당신은 void solve(int n)을 작성하여야 한다.

길이 n의 1부터 n까지 중복 없이 이루어진 순열 하나가 숨겨져 있으며, 당신은 해당 순열을 정확하게 찾아내야 한다.

 

사용할 수 있는 함수는 다음과 같다 : 

 

int publish(vector<int>) : 길이 n의 1부터 n까지 중복 없이 이루어진 순열​을 인자로 보내야 한다. 해당 함수는 숨겨진 순열과 인자로 받은 순열을 비교한다. 수 i의 숨겨진 순열에서의 위치를 x[i], 인자로 받은 순열에서의 위치를 y[i]라고 하자. 이 때, 해당 함수는 x[i]<x[j]이며 y[i]>y[j]은 순서쌍 (i, j)의 총 개수를 리턴한다.

void answer(vector<int>) : 길이 n의 1부터 n까지 중복 없이 이루어진 순열​을 인자로 보내야 한다.​ 해당 함수를 호출하면, 그 즉시 프로그램이 종료된다. 인자로 받은 순열이 숨겨진 순열과 완전히 동일한 경우 정답을 받을 수 있다.

 

publish 함수는 최대 n번 호출할 수 있다.

 

 


입력

제출하는 코드는 입력과 출력을 받지 않아야 한다.

 

1 <= n <= 4000



출처

BOI 2022 Day 1

역링크