제출 #1344129

#제출 시각아이디문제언어결과실행 시간메모리
1344129Jakub_WozniakThe Collection Game (BOI21_swaps)C++20
50 / 100
21 ms552 KiB
//
// --- Sample implementation for the task swaps ---
//
// To compile this program with the sample grader, place:
//     swaps.h swaps_sample.cpp sample_grader.cpp
// in a single folder and run:
//     g++ swaps_sample.cpp sample_grader.cpp
// in this folder.
//
#include "swaps.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
#define st first
#define nd second

void solve(int N, int V) 
{
    vector <int> temp;
    vector <pii> Via;
    vector <int> rc;
    for(int i = 0 ; i <= N; i++)rc.push_back(i);


    for(int j = 1 ; j <= N ; j++)
    {
        Via.clear();
        if(j%2)
        {
            for(int i = 1; i+1 <= N ; i += 2)
            {
                Via.push_back({i,i+1});
                schedule(rc[i],rc[i+1]);
            }
            temp = visit();
            for(int i =0 ; i < temp.size() ; i++)
            {
                if(temp[i])swap(rc[Via[i].st],rc[Via[i].nd]);
            }
        }
        else
        {
            for(int i = 2; i+1 <= N ; i += 2)
            {
                Via.push_back({i,i+1});
                schedule(rc[i],rc[i+1]);
            }
            temp = visit();
            for(int i =0 ; i < temp.size() ; i++)
            {
                if(temp[i])swap(rc[Via[i].st],rc[Via[i].nd]);
            }
        }

    }

    vector <int> Fi;
    for(int i = N ; i >= 1 ; i--)Fi.push_back(rc[i]);
    answer(Fi);
}
#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...
#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...