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

hdu 6019

时间:2017-06-06 22:14:56      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:序列   sum   n个元素   names   自己   using   pre   cout   span   

题意: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

标签:序列   sum   n个元素   names   自己   using   pre   cout   span   

原文地址:http://www.cnblogs.com/hhxj/p/6953476.html

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