제출 #584333

#제출 시각아이디문제언어결과실행 시간메모리
584333alireza_kavianiArt Collections (BOI22_art)C++17
100 / 100
1701 ms620 KiB
#include "art.h"
#include <bits/stdc++.h>
using namespace std;

#define SZ(x)   int((x).size())

const int MAXN = 4010;

int n , tot , inv[MAXN];

int query(int x){
    vector<int> vec = {x};
    for(int i = 1 ; i <= n ; i++){
        if(i != x){
            vec.push_back(i);
        }
    }
    return publish(vec);
}

void solve(int N) {
    n = N;
    tot = query(1);
    for(int i = 2 ; i <= n ; i++){
        inv[i] = (tot - query(i) + i - 1) / 2;
    }
    vector<int> res;
    for(int i = 1 ; i <= n ; i++){
        res.push_back(i);
        for(int j = 0 ; j < inv[i] ; j++){
            swap(res[SZ(res) - j - 1] , res[SZ(res) - j - 2]);
        }
    }
    answer(res);
}

컴파일 시 표준 에러 (stderr) 메시지

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) {
      |        ~~~~~~~~~^~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...