BZOJ1483 [HNOI2009]梦幻布丁
来源:互联网 发布:重庆专业网络广告公司 编辑:程序博客网 时间:2024/04/27 23:38
因为是把所有颜色x都变成颜色y,所以把颜色y变成颜色x也是可以的
那么每次呢,就是要把两种颜色合并
记录一下每个颜色当前存在哪个链表里,启发式合并链表就好了
#include<iostream>#include<cstdio>#include<cstdlib>#include<cstring>#include<ctime>#include<cmath>#include<algorithm>#include<iomanip>#include<vector>#include<map>#include<set>#include<bitset>#include<queue>#include<stack>using namespace std;#define MAXN 100010#define MAXM 1000010#define INF 1000000000#define MOD 1000000007#define eps 1e-8#define ll long longint n,m;int a[MAXN];vector<int>ps[MAXM];int ans;int c[MAXM];int main(){int i;int o,x,y;scanf("%d%d",&n,&m);for(i=1;i<MAXM;i++){c[i]=i;}for(i=1;i<=n;i++){scanf("%d",&a[i]);if(a[i]!=a[i-1]){ans++;}ps[a[i]].push_back(i);}while(m--){scanf("%d",&o);if(o==1){scanf("%d%d",&x,&y);if(x==y){continue ;}if(ps[c[x]].size()>ps[c[y]].size()){swap(c[x],c[y]);}x=c[x];y=c[y];for(i=0;i<ps[x].size();i++){if(a[ps[x][i]-1]==y){ans--;}if(a[ps[x][i]+1]==y){ans--;}}for(i=0;i<ps[x].size();i++){a[ps[x][i]]=y;ps[y].push_back(ps[x][i]);}ps[x].clear();}if(o==2){printf("%d\n",ans);}}return 0;}/**/
0 0
- bzoj1483 [HNOI2009]梦幻布丁
- BZOJ1483: [HNOI2009]梦幻布丁
- BZOJ1483 [HNOI2009]梦幻布丁
- BZOJ1483: [HNOI2009]梦幻布丁
- bzoj1483 [HNOI2009]梦幻布丁
- bzoj1483: [HNOI2009]梦幻布丁
- bzoj1483 [HNOI2009]梦幻布丁
- 【BZOJ1483】【HNOI2009】梦幻布丁
- 【bzoj1483】【hnoi2009】【梦幻布丁】【链表+启发式合并】
- BZOJ1483——[HNOI2009]梦幻布丁
- 【BZOJ1483】[HNOI2009]梦幻布丁【启发式合并】【Set】
- bzoj1483[HNOI2009]梦幻布丁 链表+启发式合并
- bzoj1483[HNOI2009]梦幻布丁 链表启发式合并
- [BZOJ1483][HNOI2009]梦幻布丁(链表+启发式合并)
- [BZOJ1483] [HNOI2009]梦幻布丁 链表启发式合并
- bzoj1483 [HNOI2009]梦幻布丁 (启发式合并 + 链表 )
- 1483: [HNOI2009]梦幻布丁
- 1483: [HNOI2009]梦幻布丁
- TeamViewer 11 激活许可证 出现你的会话将在5分钟后终止 最佳解决办法
- ASP.NET 网站 禁止未登录用户查看及下载指定目录下的文件
- DOM解析报错com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 1 字节的 UTF-8 序列的字节
- Swift:邮箱网址手机号码等正则判断
- mybatis获取数据库数据
- BZOJ1483 [HNOI2009]梦幻布丁
- STM32L系列MDK5调试
- SparkNET: 用Spark训练深度神经网络
- 【NOIP 2014 Day2 T2】寻找道路(BFS)
- sdut oj3663 顺序表应用4-2:元素位置互换之逆置算法(数据改进)
- 医疗电生理信号处理 心电信号 脑电信号
- 【23.58%】【code forces 321E】Ciel and Gondolas
- 进程的优先级设置与获取,进程时间
- 中山极点3维(索菲亚控股)公共开发组招聘C语言工程师