zoukankan      html  css  js  c++  java
  • CF978B File Name【数组操作/序列判断连续出现>=3次的‘x’个数】

    CF978B File Name
    【分析】:设置计数器cnt,计数x的个数;遇到非x,若cnt>=3的话累加多出的个数,计数器清零;若最后cnt>=3说明没遇到非x无法清零,那后部分就都是x,输出ans+=cnt-2
    【代码】:

    #include<bits/stdc++.h>
    using namespace std;
    const int  INF =  0x3f3f3f3f;
    #define ms(a,b) memset(a,b,sizeof(a))
    #define rep(i,a,b) for(int i=(a); i<(b); i++)
    //#define run(i,a,b) for(int i=(a); i<=(b); i++)
    const int N = 1e5+5;
    #define ll long long
    int n;
    
    int v[N];
    int b[N];
    int a[N];
    set<int> st;
    vector<int> vt;
    int main()
    {
        cin>>n;
        string s;
        int ans=0,cnt=0;
        cin>>s;
        for(int i=0;i<s.size();i++)
        {
            if(s[i]=='x') cnt++;
            else
            {
                if(cnt>=3)  //xxxxxiop
                {
                    ans+=cnt-2;
                }
                cnt=0;
            }
        }
        if(cnt>=3)//oooxxxxxxxx
        {
            ans+=cnt-2;
        }
        cout<<ans<<endl;
    }
    
  • 相关阅读:
    装饰者模式
    代理模式
    享元模式
    模板模式
    命令模式
    建造者模式
    单例模式
    观察者模式
    迭代器模式
    访问者模式
  • 原文地址:https://www.cnblogs.com/Roni-i/p/9124069.html
Copyright © 2011-2022 走看看