HDU 6019:MG loves gold(暴力set)
Posted Shadowdsp
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 6019:MG loves gold(暴力set)相关的知识,希望对你有一定的参考价值。
http://acm.hdu.edu.cn/showproblem.php?pid=6019
题意:给出n个颜色的物品,你每次取只能取连续的不同颜色的物品,问最少要取多少次。
思路:从头往后扫,用set存之前取了什么物品,然后每次重复就clear,ans++。
1 #include <bits/stdc++.h> 2 using namespace std; 3 #define N 100010 4 int c[N]; 5 set<int> se; 6 7 int main() { 8 int t; scanf("%d", &t); 9 while(t--) { 10 int n; scanf("%d", &n); se.clear(); 11 for(int i = 1; i <= n; i++) scanf("%d", &c[i]); 12 int ans = 0; 13 for(int i = 1; i <= n; i++) { 14 if(se.count(c[i])) 15 ans++, se.clear(); 16 se.insert(c[i]); 17 } 18 if(!se.empty()) ans++; 19 printf("%d\n", ans); 20 } 21 return 0; 22 }
以上是关于HDU 6019:MG loves gold(暴力set)的主要内容,如果未能解决你的问题,请参考以下文章
HDU 6021 MG loves string (枚举+容斥原理)