您的位置:首页 > 其它

微软笔试题《Beautiful String》

2015-08-09 14:37 176 查看
#include<iostream>

#include<cstdio>

#include<string.h>

#include<string>

#include<stack>

#include<set>

#include<algorithm>

#include<cmath>

#include<vector>

#include<map>

#include<sstream>

#include<queue>

#define ll __int64

#define lll unsigned long long

#define MAX 10000009

#define MAXN 2009

#define eps 1e-8

#define INF 0x7fffffff

#define mod 1000000007

#define clr(a) memset(a,0,sizeof(a))

#define clr1(a) memset(a,-1,sizeof(a))

#define lson l , m , rt << 1

#define rson m + 1 , r , rt << 1 | 1

using namespace std;

char str[MAX];

int c[MAX];

int n[MAX];

int main()

{

int len,T;

scanf("%d",&T);

while(T--)

{

clr(c);

clr(n);

scanf("%d",&len);

scanf("%s",str);

int t = 1;

c[t] = str[0] - 'a';

n[t] = 1;

for(int i = 1;i<len;i++)

{

if(str[i] - 'a' ==c[t])

{

n[t]++;

}

else

{

++t;

c[t] = str[i] - 'a';

n[t] = 1;

}

}

int ans = 0;

for(int i = 1;i<=t - 2;i++)

{

if(c[i]+1==c[i +1]&&c[i + 1] + 1==c[i +2]&&n[i]>=n[i+1]&&n[i+2]>=n[i+1])

{

ans = 1;

break;

}

}

if(ans)

puts("YES");

else

puts("NO");

}

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: