水一发

Posted shuoed

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了水一发相关的知识,希望对你有一定的参考价值。

http://codeforces.com/problemset/problem/602/B 最大的稳定子序列

技术分享
 1 #include<iostream>
 2 using namespace std;
 3 #define MAX 100002
 4 struct P
 5 {
 6     int v,t;
 7 } p[MAX];
 8 int main()
 9 {
10     int n,tem;
11     cin>>n;
12     for(int i=0; i<n; i++)
13     {
14         p[i].v=0;
15         p[i].t=0;
16     }
17     cin>>p[0].v;
18     p[0].t=1;
19     int l=1;/// 不同元素个数
20     for(int i=1; i<n; ++i)
21     {
22         cin>>tem;
23         if(tem==p[l-1].v)
24             p[l-1].t++;///次数++
25         else
26         {
27             p[l].v=tem;
28             p[l].t++;
29             l++;
30         }
31     }
32 
33     int maxx=0; ///结果
34     struct P tt=p[0];  ///第一数
35     for(int i=1; i<l; i++)
36     {
37         int ans=0;
38         if(abs(p[i].v-tt.v)<=1)
39         {
40             int f=p[i].v;
41             ans+=p[i].t;
42             ans+=tt.t;
43             int flag=0;
44             while(p[i+1].v==tt.v||f==p[i+1].v)
45             {
46                 ans+=p[i+1].t;
47                 i++;
48                 flag=1;
49             }
50             if(flag)i--;
51             tt=p[i];
52            //  cout<<"---"<<ans<<endl;
53             maxx=max(maxx,ans);
54 
55         }
56     }
57     if(maxx==0)cout<<p[0].t<<endl;
58     else
59     cout<<maxx<<endl;
60     return 0;
61 }
View Code

 http://codeforces.com/problemset/problem/554/B 扫垃圾(水)

技术分享
 1 #include<iostream>
 2 #include<map>
 3 using namespace std;
 4 map<string,int> mp;
 5 int main()
 6 {
 7     int n,maxx;
 8     string s;
 9     cin>>n;
10     maxx=0;
11     for(int i=0; i<n; i++)
12     {
13         cin>>s;
14         mp[s]++;
15         maxx=max(maxx,mp[s]);
16     }
17     cout<<maxx<<endl;
18     return 0;
19 }
View Code

 

以上是关于水一发的主要内容,如果未能解决你的问题,请参考以下文章

51nod 1307 绳子与重物(并查集水了一发)

[搬运] 将 Visual Studio 的代码片段导出到 VS Code

[ An Ac a Day ^_^ ] HDU 1257 基础dp 最长上升子序列

poj3615 Cow Hurdles

去经营企业吧

学术篇SPOJ COT 树上主席树