比赛 NOIP模拟赛1 评测结果 C
题目名称 叉叉 最终得分 0
用户昵称 君皓寒丶 运行时间 0.000 s
代码语言 C++ 内存使用 0.00 MiB
提交时间 2018-02-08 21:13:27
显示代码纯文本
#include<cstdio>
#include<cstring>
using namespace std;
char ci[100010];
int a[27][3];
//a[n][1]=0未查询到 =1已有一次
//a[n][2]第一次出现位置
int sum=0;
void doit(int l,int r)
         {for(int i=l+1;i<r;i++)
             {int n=ci[i]-96;
			  if(a[n][1]==1)
                sum++;
			 }
		 } 
int main()
{freopen("xxxx.in","r",stdin);
 freopen("xxxx.out","w",stdout);
 scanf("%s",ci);
 int l=strlen(ci);
 for(int i=0;i<l;i++)
    {int n=ci[i]-96;
     if(a[n][1]==0)
       {a[n][1]=1;
	    a[n][2]=i; 
	   }
	 else if(a[n][1]==1)
	        {doit(a[n][2],i);
	         a[n][1]=0;
			} 
	}
 printf("%d",sum);
 return 0;
}