Submission #957203

#TimeUsernameProblemLanguageResultExecution timeMemory
957203nextgenxingArt Collections (BOI22_art)C++17
100 / 100
1230 ms1852 KiB
#include <bits/stdc++.h>
#include "art.h"
using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
#define ff first
#define ss second
#define all(x) begin(x), end(x)
#define FOR(i, a, b) for(int i = (a); i < (b); i++)
#define F0R(i, x) FOR(i, 0, x)
#define FORd(i, a, b) for(int i = (b)-1; i >= (a); i--)
#define F0Rd(i, x) FORd(i, 0, x)

void solve(int n){
    vector<int> v; F0R(i, n) v.push_back(i+1);
    int x = publish(v); swap(v[0], v[1]); int y = publish(v);
    if(y > x) swap(v[0], v[1]);
    int curr = min(x, y);
    FOR(i, 2, n){
        int z = v[i]; F0Rd(j, i) v[j+1] = v[j];
        v[0] = z;
        int nxt = publish(v), pos = (nxt-curr+i)/2;
        F0R(j, pos) v[j] = v[j+1];
        v[pos] = z;
        curr = nxt-pos;
    }
    answer(v);
}

Compilation message (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...