题解 CF96A 【Football】
这道题,恶评!
怎么说都是道红题对不对?
好了把重心转移回题目上(都回过神来!)
刚开始思路是这样的,可以一个一个判断这是1还是0,然后想了半天脑子里全是废纸,所以就想到了现在这个方法:就是判断前后两个数字是否相同,再用一个计数器进行记录相同个数,若大于等于7了就是危险球队了。
好了代码如下。
#include<bits/stdc++.h> using namespace std; string s;//定义一个字符串 int ans=1;//计数器初值为一(计数器初值为1的原因是n个数之间的间隔为n-1,所以ans为1) int main() { cin>>s//将这个字符串输入 for(int i=0;i<s.size();i++){//从0号位开始扫(字符串本就讲究0开始,别说平时你都从1开始) if(s[i]==s[i-1])//如果前后两位数字相同 ans++;//计数器++ else ans=1;//否则赋为初值(别一不仔细看错了,是1不是0) if(ans>=7) {//根据题意输出 cout<<"YES"<<endl; return 0; } } cout<<"NO"<<endl;//否则就不危险了 return 0; }