#include<bits/stdc++.h>
using namespace std;
const int N=5e5+5;
int main(){
int n,m,a[N],b[N];
vector<int> t[N];
cin>>n>>m;
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
for(int i=1;i<=n;i++){
memset(b,0,sizeof(b));
if(t[a[i]].size()>0) t[a[i]].clear();
for(int j=1;j<=i;j++){
if(b[a[j]]==1) continue;
t[a[i]].push_back(a[j]);
b[a[j]]=1;
}
}
for(int i=1;i<=m;i++){
int ans=0;
for(int j=0;j<t[i].size();j++){
while(t[i][j]) t[i][j]/=10,ans++;
ans++;
}
printf("%d ",--ans);
}
return 0;
}
此代码就是时间复杂度太高,是n的平方,求调!!!必关