Submission #1000993

#TimeUsernameProblemLanguageResultExecution timeMemory
1000993OtalpRope (JOI17_rope)C++14
80 / 100
186 ms119892 KiB
#include<bits/stdc++.h> using namespace std; #define ll long long #define pii pair<int, int> #define ff first #define ss second #define pb push_back int dp[2][5001][5001]; int cnt[5001]; int a[1001000]; void solve(){ int n, m; cin>>n>>m; for(int i=1; i<=n; i++){ cin>>a[i]; cnt[a[i]] ++; } int h[2]={0, 0}; for(int i=1; i+1<=n; i+=2){ int l=a[i], r=a[i + 1]; dp[1][l][r] ++; dp[1][r][l] ++; h[1] ++; } for(int i=2; i+1<=n; i+=2){ int l=a[i], r=a[i + 1]; dp[0][l][r] ++; dp[0][r][l] ++; h[0] ++; } for(int i=1; i<=m; i++){ int ans = n - cnt[i]; for(int j=1; j<=m; j++){ if(i == j) continue; for(int k=0; k<2; k++){ ans = min(ans, n - cnt[i] - cnt[j] + dp[k][i][j]); } } cout<<ans<<'\n'; } } signed main(){ solve(); }
#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...