이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include "books.h"
#include <iostream>
using namespace std;
using ll = long long;
vector<pair<vector<int>, int>> x[4];
void calc() {
//n = 1, s=0
x[0].push_back( { { 0 } , 0 } );
//n = 2, s=0
x[1].push_back( { { 0, 1 } , 0 } );
x[1].push_back( { { 1, 0 } , 2 } );
//n = 3, s=0
x[2].push_back( { { 0, 1, 2 } , 0 } );
x[2].push_back( { { 0, 2, 1 } , 4 } );
x[2].push_back( { { 1, 0, 2 } , 2 } );
x[2].push_back( { { 2, 1, 0 } , 4 } );
x[2].push_back( { { 2, 0, 1 } , 4 } );
x[2].push_back( { { 1, 2, 0 } , 4 } );
//n = 4, s=0
x[3].push_back( { { 0, 1, 2, 3 } , 0 } );
x[3].push_back( { { 1, 0, 2, 3 } , 2 } );
x[3].push_back( { { 0, 1, 3, 2 } , 6 } );
x[3].push_back( { { 1, 0, 3, 2 } , 8 } );
x[3].push_back( { { 0, 2, 1, 3 } , 4 } );
x[3].push_back( { { 3, 2, 1, 0 } , 8 } );
x[3].push_back( { { 3, 1, 2, 0 } , 6 } );
x[3].push_back( { { 2, 1, 0, 3 } , 4 } );
x[3].push_back( { { 2, 3, 0, 1 } , 8 } );
x[3].push_back( { { 0, 2, 3, 1 } , 6 } );
x[3].push_back( { { 1, 2, 3, 0 } , 6 } );
x[3].push_back( { { 1, 3, 2, 0 } , 6 } );
x[3].push_back( { { 0, 3, 2, 1 } , 6 } );
x[3].push_back( { { 1, 3, 0, 2 } , 6 } );
x[3].push_back( { { 2, 3, 1, 0 } , 8 } );
x[3].push_back( { { 0, 3, 1, 2 } , 6 } );
x[3].push_back( { { 3, 2, 0, 1 } , 8 } );
x[3].push_back( { { 2, 1, 3, 0 } , 6 } );
x[3].push_back( { { 3, 1, 0, 2 } , 6 } );
x[3].push_back( { { 1, 2, 0, 3 } , 4 } );
x[3].push_back( { { 2, 0, 1, 3 } , 4 } );
x[3].push_back( { { 2, 0, 3, 1 } , 6 } );
x[3].push_back( { { 3, 0, 1, 2 } , 6 } );
x[3].push_back( { { 3, 0, 2, 1 } , 6 } );
}
ll minimum_walk(vector<int> p, int s) {
calc();
int n = (int)p.size();
for(int i=0; i<(int)x[n-1].size(); i++) {
bool can = true;
for(int j=0; j<n; j++) {
if(x[n-1][i].first[j] != p[j]) can = false;
}
if(can) return x[n-1][i].second;
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |