26 lines
555 B
C++
26 lines
555 B
C++
// lanqiao3712 接龙数列
|
|
#include<bits/stdc++.h>
|
|
using namespace std;
|
|
int dp[10];
|
|
/*
|
|
优化dp方案
|
|
状态 dp[i] 以数字i结尾的最长接龙序列的长度
|
|
状态转移方程 dp[bk]=max(dp[ft]+1, dp[bk])
|
|
*/
|
|
int main(){
|
|
int n; cin >> n;
|
|
string s;
|
|
int mx = 1;
|
|
for(int i = 0; i < n; i++){
|
|
cin >> s;
|
|
int ft = s.front() - '0', bk = s[s.size() - 1] - '0';
|
|
dp[bk] = max(dp[ft] + 1, dp[bk]);
|
|
mx = max(mx, dp[bk]);
|
|
}
|
|
cout << n - mx << endl;
|
|
return 0;
|
|
}
|
|
/* test samples -> 1
|
|
5
|
|
11 121 22 12 2023
|
|
*/ |