Description:
Petya loves football very much. One day, as he was watching a football match, he was writing the players' current positions on a piece of paper. To simplify the situation he depicted it as a string consisting of zeroes and ones. A zero corresponds to players of one team; a one corresponds to players of another team. If there are at least 7 players of some team standing one after another, then the situation is considered dangerous. For example, the situation 00100110111111101 is dangerous and 11110111011101 is not. You are given the current situation. Determine whether it is dangerous or not.
Input
The first input line contains a non-empty string consisting of characters "0" and "1", which represents players. The length of the string does not exceed 100 characters. There's at least one player from each team present on the field.
Output
Print "YES" if the situation is dangerous. Otherwise, print "NO".
Examples
Input
001001
Output
NO
Input
1000000001
Output
YES
题意:1和0分别代表两个球队的队员,如果存在一个球队的两个队员之间存在有至少7个另一个球队的队员,那么视这种情况为危险情况
思路:每两个同队的队员中间位置情况判断一次,看是否符合危险情况
代码:
#include<stdio.h>
#include<string.h>
int main()
{
int i,j,len,zero,one,flag;
char str[105];
while(~scanf("%s",str))
{
len=strlen(str);
if(len<=7)
{
printf("NO\n");
continue;
}
zero=one=0; flag=0;
for(i=7;i<len;i++)
{
if(str[i]=='0')
{
for(j=i-1;j>=0;j--)
{
if(str[j]=='1')
one++;
else
break;
}
if(one>=7)
flag=1;
else
one=0;
}
else
{
for(j=i-1;j>=0;j--)
{
if(str[j]=='0')
zero++;
else
break;
}
if(zero>=7)
flag=1;
else
zero=0;
}
if(flag==1)
break;
}
if(flag==1)
printf("YES\n");
else
printf("NO/n");
}
return 0;
}
本文介绍了一个简单的足球比赛场景分析程序,该程序通过输入由0和1组成的字符串来表示两支队伍球员的位置,并判断是否存在一方连续7名球员无间隔的情况,以此评估比赛的危险性。
1747

被折叠的 条评论
为什么被折叠?



