1 条题解
-
0
#include<bits/stdc++.h> using namespace std; char s[100002]; int x[12],y[12]; int main() { int T; cin>>T; for(int i=1;i<=T;i++) { int n,ans=0; for(int i=0;i<=9;i++) { x[i]=0; } cin>>n; for(int i=1;i<=n;i++) { cin>>s[i]; } int a=0; for(int l=1;l<=min(n,100);l++) { if(x[s[l]-'0']==0) { a++; } x[s[l]-'0']++; int b=a; for(int i=0;i<=9;i++) { y[i]=x[i]; } for(int i=1;i<=max(n-l+1,n-99);i++) { if(i!=1) { y[s[i-1]-'0']--; if(y[s[i-1]-'0']==0) { b--; } if(y[s[i+l-1]-'0']==0) { b++; } y[s[i+l-1]-'0']++; } bool flag=1; for(int j=0;j<=9;j++) { if(y[j]>b) { flag=0; } } if(flag) { ans++; } } } cout<<ans<<endl; } return 0; }
信息
- ID
- 538
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 9
- 标签
- (无)
- 递交数
- 9
- 已通过
- 4
- 上传者