제출 #1355354

#제출 시각아이디문제언어결과실행 시간메모리
1355354Charizard2021Arranging Shoes (IOI19_shoes)C++20
10 / 100
0 ms344 KiB
#include "shoes.h"
#include<bits/stdc++.h>
using namespace std;
long long count_swaps(vector<int> s){
	map<int, set<int> > mp;
	int n = (int)s.size()/2;
	if(n == 1){
		vector<int> v;
		for(int i = 0; i < 2 * n; i++){
			mp[s[i]].insert(i);
			if(s[i] > 0){
				v.push_back(s[i]);
			}
		}
		sort(v.begin(), v.end());
		int ans = 1e9;
		do{
			map<int, set<int> > mp2 = mp;
			int sum = 0;
			for(int j = 0; j < (int)v.size(); j++){
				int idx = *mp2[-v[j]].begin();
				int idx2 = *mp2[v[j]].begin();
				int val1 = abs(idx - (2 * j));
				int val2 = abs(idx2 - (2 * j + 1));
				mp2[v[j]].erase(idx2);
				mp2[-v[j]].erase(idx);
				sum += val1 + val2;
			}
			sum /= 2;
			ans = min(ans, sum);
		} while(next_permutation(v.begin(), v.end()));
		return ans;
	}
	else{
		return (n * (n + 1))/2;
	}
}
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…
#결과 실행 시간메모리채점기 출력
결과를 불러오는 중입니다…