hdu 6019

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

tags:

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

题意:MG是一个运气爆表的男孩子,他总能从地下挖掘出埋藏着的金克拉。 地下的金克拉宝藏可以看成n个元素组成的序列,每一种金克拉拥有自己的颜色C。 MG每次可以用掉一把铲子挖走连续一段,但是他不愿意使用同一把铲子挖到同一种颜色的金克拉。 MG作为一个十分贪心的人,他希望可以用最少的铲子挖走所有的金克拉。 我们规定,某一位置的土地只能被铲子挖掘一次。

思路:貌似for一遍就可以了,用map打个标记,之前有的颜色,就++,清空。

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long ll;
 4 map<ll ,int >a;
 5 int main(){
 6     int t;
 7     scanf("%d",&t);
 8     while(t--){
 9         a.clear();
10         int n;
11         scanf("%d",&n);
12         ll x,sum=0;
13         for(int i=1;i<=n;i++){
14             scanf("%lld",&x);
15             if(a[x]==1){
16                 sum++;a.clear();
17             }
18             a[x]++;
19         }
20         if(a.size()>0) sum++;
21         cout<<sum<<endl;
22     }
23 }

 

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

HDU_5532_Almost Sorted Array

loj 6019

HDU4057 Rescue the Rabbit(AC自动机+状压DP)

HDU3247 Resource Archiver(AC自动机+BFS+DP)

python pandas 对每列求和时少了一列

python pandas 对分组并对每列求和时少了一列