题解见:http://ecustacm.cn/contest/11/announcements

A

#include<bits/stdc++.h>
#define rep(i,a,b) for(int i=a;i<=b;i++)
using namespace std;
const int maxn=2000010;
int a[maxn],ans; char c[maxn];
int main()
{
    int T,N,A,B,C,D,Ca=0;
    scanf("%d",&T);
    while(T--){
        scanf("%s",c+1); N=strlen(c+1);
        A=B=C=D=0;
        rep(i,1,N){
             if(c[i]=='4') A++;
             if(c[i]=='7') B++;
             if(i<N&&c[i]=='4'&&c[i+1]=='7') C++;
             if(i<N&&c[i]=='7'&&c[i+1]=='4') D++;
        }
        printf("Case %d: %d %d %d %d\n",++Ca,A,B,C,D);
    }
    return 0;
}
View Code

相关文章: