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

BZOJ4236 JOIOJI(map)

时间:2018-03-14 23:41:10      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:app   str   AC   names   ==   clu   bit   class   cout   

前缀和,判定条件转化一下,就可以用map了,注意初始化

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int n;
 6     cin>>n;
 7     string s;
 8     cin>>s;
 9     int J=0,O=0,I=0;
10     map<pair<int,int>,int>mapp;
11     mapp[make_pair(0,0)]=-1;
12     int ans=0;
13     for(int i=0;i<n;i++){
14         if(s[i]==J) J++;
15         if(s[i]==O) O++;
16         if(s[i]==I) I++;
17         if(mapp.find(make_pair(J-O,O-I))==mapp.end()){
18             mapp[make_pair(J-O,O-I)]=i;
19         }
20         else{
21             ans=max(ans,i-mapp[make_pair(J-O,O-I)]);
22         }
23     }
24     cout<<ans<<endl;
25     return 0;
26 }

 

BZOJ4236 JOIOJI(map)

标签:app   str   AC   names   ==   clu   bit   class   cout   

原文地址:https://www.cnblogs.com/ghblw/p/8570709.html

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