Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
33303 方巾予 【J】T4 C++ 通过 100 313 MS 744 KB 849 2024-10-04 21:12:59

Tests(20/20):


#include<bits/stdc++.h> using namespace std; #define int long long const int N=5e6+10; char s[N]; struct node{ int l,r; }qujian[30],qujian2[30]; int n,ind; int cur,ans,you; bool cmp(node x,node y){ if(x.l!=y.l) return x.l<y.l; return x.r<y.r; } signed main(){ scanf("%s",s+1); n=strlen(s+1); for(int i=1;i<=n;i++){ ind=s[i]-'a'; cur=qujian[ind].r; qujian[ind]=(node){cur,i}; for(int j=0;j<26;j++) qujian2[j]=qujian[j]; sort(qujian2,qujian2+26,cmp); you=0; for(int j=0;j<26;j++){ int x=qujian2[j].l,y=qujian2[j].r; if(x>you){ ans+=(y-x); }else if(y>you){ ans+=(y-you); } you=max(you,y); } } printf("%lld",ans); return 0; }


测评信息: