Codeforces Round #236 (Div. 2)__Searching for Graph
来源:互联网 发布:http load windows 编辑:程序博客网 时间:2024/04/30 20:23
题目链接
- 先分析一下之前思路的错误:
题意转化可以得到,每删除一个点,那么总的边数至少减去二。之前想成了每个点至少有两条边,这是不对的。。。最简单的反例:三个点三条边删去两个点,只减少了两个边,显然是不对的 - 分析:
每个点被删去的时候,总变数至少减少二,那么每个点至少有两个属于它的边(认为每个边只属于一个点)。这样,点被删去的时候,总边数至少减去二(因为可能当前点连接着很多边,但是思维上我们认为是不属于这个点的),所以在构造的时候应该按照这个思路。 - 接下来就说两种比较正常的思路:(构造中比较经常使用的方法)
(1)构造比较平均的图,即点与点之间没有区别。代码可以参见这里
1连接2,3;2连接3,4。。。。一直到2n条边,这个时候是一个正确的0-interestring图。之后只需要随意添加到足够的边即可
(2)构造极端不平均的图,也就是尽可能多的使边集中在一个点上
1先连接所有的点,然后是2,这个时候可以认为3之后的点都满足了,2只有一个边。既然1已经连接了所有的点,那么只有将有些边划归到1才能使1满足,1之后的所有点都可以这样操作,点2同理。我们继续按照不平均的策略来构造,对于点3,每连接一个点可以认为这个点多了一个边,又因为这个点一定和1,2连接,所以1或者2就可以多一个边。到此就可以构造出正确的0-interestring图。然后继续按照这个原则添加多余的边即可。
第二种构造法的解:思路麻烦,代码简单。。
int main(){// freopen("in.txt", "r", stdin); int kase; RI(kase); REP(tt, kase) { int npoint, p; RII(npoint, p); int cnt = npoint * 2 + p; FE(i, 1, npoint) FE(j, i + 1, npoint) { if (cnt-- > 0) cout << i << ' ' << j << endl; } } return 0;}
10 0
- Codeforces Round #236 (Div. 2)__Searching for Graph
- Codeforces Round #236 (Div. 2)C. Searching for Graph
- Codeforces Round #237 (Div. 2)__Restore Graph
- Codeforces Round #192 (Div. 2) E. Graph Reconstruction (随机算法)
- Codeforces Round #261 (Div. 2) E. Pashmak and Graph
- Codeforces Round #261 (Div. 2)——Pashmak and Graph
- Codeforces Round #261 (Div. 2) E. Pashmak and Graph【DP】
- Codeforces Round #261 (Div. 2) E. Pashmak and Graph DP
- Codeforces Round #237 (Div. 2)-C. Restore Graph
- Codeforces Round #161 (Div. 2)-D. Cycle in Graph
- Codeforces round #247 for Div. 2
- Codeforces Round #434 Div.1 D graph
- Codeforces Round #236 402C - Searching for Graph
- Codeforces Round #236 (Div. 2)
- Codeforces Round #236 (Div. 2)
- Codeforces Round #236 (Div. 2)
- Codeforces Round#289(DIV.2) + qualifying round for WCC
- 【Codeforces Round #351 Div. 2】 673B Problems for Round
- java中常用的工具类使用以及分析!
- javaSE 集合(一)
- 2014年去哪网研发测试笔试题目
- java选择排序和冒泡排序
- [学习笔记]顺序存储结构和单链表
- Codeforces Round #236 (Div. 2)__Searching for Graph
- MongoDB 用户权限与安全相关
- 关于excel中超链接失败
- Yii-数据库操作-多表关联
- Mysql net start mysql启动,提示发生系统错误 5 拒绝访问 解决之道
- linux su和sudo命令的区别
- ExtJs4 笔记(14) layout 布局
- UIImagePickerController详解之.
- [学习笔记]循环链表