题目链接:http://codeforces.com/contest/731/problem/C

题意:有n只袜子(1~n),k种颜色(1~k),在m天中,左脚穿下标为l,右脚穿下标为r的袜子,问最少修改几只袜子的颜色,可以使每天穿的袜子左右两只都同颜色。

好恶心的袜子,一会儿看成改袜子的颜色,一会儿看成改l,r的颜色,一会下标看混......不过,菜是原罪=_=

思路:先建图,在每个连通分支中,把所有袜子的颜色都改成出现颜色次数最多的那个颜色,即该分支节点个数 - 最多出现次数

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5 + 10;
int c[N];
bool vis[N];
vector <int> G[N];
map <int,int> num;
int cur,maxm;
void dfs(int x)
{
if(vis[x])
return;
cur++;
maxm = max(maxm,++num[c[x]]);
vis[x] = 1;
for(int i = 0; i < G[x].size(); i++)
dfs(G[x][i]);
}
int main()
{
int n,m,k,ans = 0;
scanf("%d %d %d",&n,&m,&k);
for(int i = 1; i <= n; i++)
scanf("%d",c+i);
for(int i = 1; i <= m; i++)
{
int l,r;
scanf("%d %d",&l,&r);
G[l].push_back(r);
G[r].push_back(l);
}
for(int i = 1; i <= n; i++)
{
cur = maxm = 0;
dfs(i);
ans += cur - maxm;
num.clear();
}
printf("%d\n",ans);
return 0;
}

codeforces 731C(DFS)的更多相关文章

  1. CodeForces - 95B(DFS)

    题目链接:http://codeforces.com/problemset/problem/95/B 题目大意:给你一个正整数n (1 ≤ n ≤ 10100000),求不大小于它的超级幸运数字(超级 ...

  2. CodeForces - 589J —(DFS)

    Masha has recently bought a cleaner robot, it can clean a floor without anybody's assistance. Schema ...

  3. codeforces 723D(DFS)

    题目链接:http://codeforces.com/problemset/problem/723/D 题意:n*m的矩阵中,'*'代表陆地,'.'代表水,连在一起且不沿海的水形成湖泊.问最少填多少块 ...

  4. CodeForces - 589J(DFS)

    题目链接:http://codeforces.com/problemset/problem/589/J 题目大意:一个机器人打扫一个密闭的房间,房间由一个矩形构成,'*'表示家具,'.'表示该位置为空 ...

  5. Codeforces 761E(DFS)

    E. Dasha and Puzzle time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  6. Codeforces 115A- Party(DFS)

    A. Party time limit per test 3 seconds memory limit per test 256 megabytes input standard input outp ...

  7. LeetCode Subsets II (DFS)

    题意: 给一个集合,有n个可能相同的元素,求出所有的子集(包括空集,但是不能重复). 思路: 看这个就差不多了.LEETCODE SUBSETS (DFS) class Solution { publ ...

  8. LeetCode Subsets (DFS)

    题意: 给一个集合,有n个互不相同的元素,求出所有的子集(包括空集,但是不能重复). 思路: DFS方法:由于集合中的元素是不可能出现相同的,所以不用解决相同的元素而导致重复统计. class Sol ...

  9. HDU 2553 N皇后问题(dfs)

    N皇后问题 Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u Description 在 ...

随机推荐

  1. [IOS 开发] 懒加载 (延迟加载) 的基本方式,好处,代码示例

    懒加载的好处: 1> 不必将创建对象的代码全部写在viewDidLoad方法中,代码的可读性更强 2> 每个属性的getter方法中分别负责各自的实例化处理,代码彼此之间的独立性强,松耦合 ...

  2. 本地hosts临时域名访问

    当刚购买了空间,域名和空间还未进行绑定,可以用临时域名访问主机调试网站.您可通过本地hosts指向访问网站,具体方法如下: 特别说明:设置以后,只有当前设置的电脑才能访问,其他电脑访问无效. 第一步: ...

  3. merge,join,concat

    merge交集 join并集 concat axis=0 竖着连 axis=1 横着连

  4. TortoiseGit流程安装使用手册

    end if

  5. 搭建apache http服务器

    异步: http://blog.csdn.net/lzhlzz/article/details/39496285

  6. ECMAScript6 面向对象 时钟效果

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  7. Tomcat服务器配置

    安装好jdk以后,首先到apache官网(http://tomcat.apache.org/)下载tomcat,安装到F盘,本人下载的版本为:apache-tomcat-7.0.55 修改环境变量 找 ...

  8. java.net.UnknownHostException: Unable to resolve host "api102.meishi.cc": No address associated with hostname

    有三个原因: 清单文件Mei加网络访问权限 在主线程中执行了耗操作 你没开wifi

  9. POJ 1061

    题意: 两只青蛙在同一条纬度上,它们各自朝西跳,问它们要跳多少步才能碰面(必须同时到达同一点). 分析: 假设它们跳了t步才相遇,青蛙a初始坐标为x,青蛙b初始坐标为y,则跳了t步相遇后a的坐标为 x ...

  10. SpringMVC-DispatcheServlet

    1 HandlerMapping->HandlerAdapter->ViewResolver ->HandlerExceptionResolver 2