Codeforces Round #426 (Div. 2)B. The Festive Evening

Posted 早知如此绊人心,何如当初莫相识。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Codeforces Round #426 (Div. 2)B. The Festive Evening相关的知识,希望对你有一定的参考价值。

题意:有26个城门,k个守卫,给出每个城门人进入的顺序,只有当这个城门进入的人是最后一个,该城门的守卫才能去别的城门,问是否有个时间段,守卫不够用

思路:记录起始,模拟下

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 
 4 int l[30],r[30];
 5 int b[30];
 6 
 7 int main(){
 8     int n,m; string s;
 9     cin>>n>>m;
10     cin>>s;
11     for(int i=s.size()-1;i>=0;i--){
12         if(r[s[i]-A]==0) {
13              r[s[i]-A]=i;
14         }
15 
16     }
17     memset(l,-1,sizeof(l));
18     for(int i=0;i<s.size();i++){
19         if(l[s[i]-A]==-1){
20             l[s[i]-A]=i;
21         }
22 
23     }
24 
25     int Max=0;
26     for(int i=0;i<s.size();i++){
27 
28         if(l[s[i]-A]==i){
29             Max++;
30             if(Max>m) {
31                 cout<<"YES"<<endl;return 0;
32             }
33         }
34         if(r[s[i]-A]==i){
35             Max--;
36         }
37         if(Max>m) {
38                 cout<<"YES"<<endl;return 0;
39             }
40 
41     }
42     cout<<"NO"<<endl;return 0;
43 }

 

以上是关于Codeforces Round #426 (Div. 2)B. The Festive Evening的主要内容,如果未能解决你的问题,请参考以下文章

codeforces round #426 div 2

Codeforces Round #426 A

Codeforces Round #426 (Div. 1) (ABCDE)

Codeforces Round #426 (Div. 2)A. The Useless Toy

Codeforces Round #426 (Div. 2) C. The Meaningless Game (二分 or pow函数)

Codeforces Round #426 (Div. 2)B. The Festive Evening