码迷,mamicode.com
首页 > 其他好文 > 详细

Cow and Message

时间:2020-03-03 12:52:12      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:下标   ++   mes   pre   sage   ios   long   its   ORC   

C - Cow and Message

对于字符串问题,如果对于下标进行操作复杂度很大的话,可以考虑对字母进行操作,这样计算复杂度的时候就是对26进行计算了。

// Created by CAD on 2020/3/3.
#include <bits/stdc++.h>
#define ll long long
using namespace std;

queue<int> q[30];
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    string s;cin>>s;
    int len=s.length();
    for(int i=0; i<len; ++i){
        q[s[i]-'a'+1].push(i);
    }
    ll ans=0;
    for(int i=1;i<=26;++i){
        ans=max(ans,(ll)q[i].size());
        for(int j=1;j<=26;++j){
            queue<int> a=q[i],b=q[j];
            ll sum=0;
            while(!a.empty()){
                while(!b.empty()&&b.front()<=a.front()) b.pop();
                sum+=b.size();
                a.pop();
            }
            ans=max(ans,sum);
        }
    }
    cout<<ans<<"\n";
    return 0;
}

Cow and Message

标签:下标   ++   mes   pre   sage   ios   long   its   ORC   

原文地址:https://www.cnblogs.com/CADCADCAD/p/12401431.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!