zoukankan      html  css  js  c++  java
  • Codeforces Round #215 (Div. 2) C. Sereja and Algorithm

    #include <iostream>
    #include <vector>
    #include <algorithm>
    #include <string>
    
    using namespace std;
    
    int main(){
        string s ;
        cin >>s;
        int m;
        cin >>m;
        vector<int> l(m),r(m);
        for(int i = 0 ; i < m ; ++ i )
            cin >> l[i]>>r[i];
    
        int n = s.length();
        vector<int> x(n+1,0),y(n+1,0),z(n+1,0);
        for(int i = 0; i < n; ++ i){
            x[i+1] =x[i];
            y[i+1] = y[i];
            z[i+1] = z[i];
            if(s[i] == 'x')  x[i+1]++;
            else if(s[i] == 'y') y[i+1]++;
            else z[i+1]++;
        }
    
        for(int i = 0 ; i < m ; ++ i){
            if(r[i]-l[i]+1 < 3) cout<<"YES"<<endl;
            else{
                vector<int> num(3,0);
                num[0] = x[r[i]]-x[l[i]-1];
                num[1] = y[r[i]]-y[l[i]-1];
                num[2] = z[r[i]]-z[l[i]-1];
                sort(num.begin(),num.end());
                if((num[0] == num[1] && num[1] == num[2])||
                   (num[2]-num[1] == 1 && num[1] == num[0]) ||
                   (num[2]-num[1] == 0 && num[1] - num[0] == 1))
                    cout<<"YES"<<endl;
                else cout<<"NO"<<endl;
            }
        }
        return 0;
    }
  • 相关阅读:
    bash编程2
    bash简介1
    grep文本处理工具
    用户的环境变量
    用户,组,权限
    yum与rmp
    逻辑卷管理
    磁盘配额
    磁盘创建
    创建计划任务
  • 原文地址:https://www.cnblogs.com/xiongqiangcs/p/3448632.html
Copyright © 2011-2022 走看看