Submission #1151427

#TimeUsernameProblemLanguageResultExecution timeMemory
1151427irmuunGroup Photo (JOI21_ho_t3)C++20
12 / 100
299 ms436 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define pb push_back #define ff first #define ss second #define all(s) s.begin(),s.end() #define rall(s) s.rbegin(),s.rend() int main(){ ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n; cin>>n; int p[n+5]; for(int i=1;i<=n;i++){ cin>>p[i]; } int ans=1e9; for(int x=1;x<(1<<n);x++){ vector<int>v; for(int i=0;i<n;i++){ if(x&(1<<i)){ v.pb(i+1); } } if(v.back()!=n) continue; int b[n+5]; { int l=0; for(auto x:v){ l++; b[l]=x; for(int i=l+1;i<=x;i++){ b[i]=b[i-1]-1; } l=x; } } int a[n+5]; for(int i=1;i<=n;i++){ a[i]=p[i]; } int cur=0; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ if(a[j]==b[i]){ for(int k=j-1;k>=i;k--){ cur++; swap(a[k],a[k+1]); } break; } } } ans=min(ans,cur); } cout<<ans; }
#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...