제출 #1215743

#제출 시각아이디문제언어결과실행 시간메모리
1215743horkaArranging Shoes (IOI19_shoes)C++20
0 / 100
0 ms324 KiB
#include <bits/stdc++.h>

using namespace std;
#include "shoes.h"
int n;
long long count_swaps(std::vector<int> s) {
	n=s.size()/2;
	//next permutation
	//es akkor megvan mibol kell mit
	vector<int> ert(n);
	int tart=0;
	for(int i=0; i<2*n; i++)
	{
		if(s[i]>0) ert[tart++]=s[i];
	}
	sort(ert.begin(),ert.end());
    int ans=1e9;
	do
	{
		vector<int> cel(2*n);
		for(int i=0; i<2*n; i+=2)
		{
            cel[i]=cel[i+1]=ert[i/2];
		}
        vector<int> curr=s;
        int tmp=0;
        for(int i=0; i<2*n; i++)
        {
            if(curr[i]==cel[i]) continue;
            int ind=n;
            for(int j=i+1; j<2*n; j++)
                if(curr[j]==cel[i] && cel[j]!=cel[i])
                {
                    ind=j;
                    break;
                }
            tmp++;
            swap(curr[i],curr[ind]);
        }
        ans=min(ans,tmp);
	}
    while(next_permutation(ert.begin(),ert.end()));
    return ans;
	return 1LL;
}
/*int main() {
	int n;
	assert(1 == scanf("%d", &n));
	vector<int> S(2 * n);
	for (int i = 0; i < 2 * n; i++)
		assert(1 == scanf("%d", &S[i]));
	fclose(stdin);

	long long result = count_swaps(S);

	printf("%lld\n", result);
	fclose(stdout);
	return 0;
}*/
#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...