题意:"最小点覆盖集"是个NP完全问题 有一个近似算法是说—每次选取度数最大的点(如果有多个这样的点,则选择最后一个) 让你构造一个图,使得其近似算法求出来点数是你给定的覆盖点数的至少3倍。

解法:

可以把左边的点编号1~n,将左边的点进行n次分块,第i次分块中每块的大小为i,对于每一块的点,都在右边创建一个新节点与这些点相连。

①右边的点的度数为n,n-1,n-2,...,n/2,n/2,n/3,n/3,n/3....共有nlogn个点;

②左边的点的度数都不会超过n且只有一个点的度数为n

那么根据贪心算法,会把右边的点都删去,(虽然左边的第一个点和右边的最后一个点的度数是一样的,但是取的是编号大的点,所以贪心算法里会删去右边的点)使得输出结果为nlogn,但正确的答案应该是取左边所有的点,只要n取个较大的数就可以使得nlogn>3n即可

#include <cstdio>
#include <iostream>
#include <string.h>
#include <ctime>
#include <algorithm>
using namespace std;
const int maxn = 3030;int main(){/*for(int n = 2;n <= 200;n++){int ans = 0;for(int i = 2;i <= n;i++){ans += n/i;}if(n*2 <= ans){printf("%d\n",n);}}*/int n = 15,m = 0;for(int i = 2;i <= 15;i++){m += n/i * i;}m += n;printf("60 %d\n",m);int jichu = 0;for(int i = 1;i <= n;i++){printf("%d %d\n",i,i+n);}int cnt = 1;for(int i = 2;i <= n;i++){for(int j = 1;j <= n;){if(n-j+1 < i) break;for(int k = 0;k < i;k++){printf("%d %d\n",n+j+k,n+n+cnt);}j += i;cnt++;}}printf("%d\n",n);for(int i = 1;i <= n;i++){printf("%d\n",n+i);}
}

2017 ccpc网络赛 1001 Vertex Cover(二分图 构造)HDU6150相关推荐

  1. Jumping Monkey(CCPC网络赛重赛)

    Jumping Monkey(CCPC网络赛重赛) 题意: n个点的树,每个点有一个不同的值aia_iai​.现在一个猴子在树上,这个猴子从点u跳到点v当且仅当ava_vav​是u到v最短路径上的最大 ...

  2. (四面体)CCPC网络赛 HDU5839 Special Tetrahedron

    1 CCPC网络赛 HDU5839 Special Tetrahedron 2 题意:n个点,选四个出来组成四面体,要符合四面体至少四条边相等,若四条边相等则剩下两条边不相邻,求个数 3 思路:枚举四 ...

  3. 2020 CCPC网络赛 赛后感

    第一次参加,做过去年19年网络赛的题,去年是四个水题稳做出,然后还有两个线段树和树状数组的题(好像是),所以本来对这次网络赛挺有信心的(去年好像四个题就能进,当然要手速快). 这次网络赛还是有四个水题 ...

  4. 2017乌鲁木齐网络赛 j 题

    题目连接 : https://nanti.jisuanke.com/t/A1256 Life is a journey, and the road we travel has twists and t ...

  5. CCPC 网络赛总结

    下午这场比赛一开始就没有给自己太大的压力,本着把水题全部 AC 的意愿 大学第一次网络赛就这样结束了,一开始跟着榜做,签到题很快就解决了,不过这次的比赛真的是刷新了我对题意的认识,各种数学公式交叉在一 ...

  6. HDU-6150 Vertex Cover(构造)

    传送门:HDU-6150 网络赛的时候不知道哪根筋搭错了,硬是想不出来,感觉一道全世界都会写的题目,自己就是写不出(导致挂机2个半小时)好想进第一页啊TAT 题意:有一个贪心算法求最小顶点覆盖是每次选 ...

  7. hdu6438 Buy and Resell 买卖物品 ccpc网络赛 贪心

    题目传送门 题目描述: 有n座城市,每座城市都可以对一个物品进行一次的买进或者卖出,可以同时拥有多个物品,计算利润最大值,并且交易次数要最少.(买入卖出算两次操作) 思路: 建立两个小根堆 优先队列, ...

  8. HDU 6889 Graph Theory Class(CCPC网络赛)

    hdu 6889 传说中的人均min25 题意: n个点的完全图,边权为lcm(i+1,j+1),求mst(最小生成树) 题解: 我一开始以为是推公式,毕竟数据范围这么大,但是自己画图来看看mst的情 ...

  9. HDU 5842—— Lweb and String CCPC 网络赛 1011

    题意: 按字母出现的顺序编号,问最长上升子序列. 思路: 最长为26,出现一个新的字母就加上,答案为字母的种数,无聊的题目. code: #include <cstdio> #includ ...

最新文章

  1. jQuery学习笔记(一)
  2. 线段树求矩形面积并 扫描线+离散化
  3. infor wms 项目启动_全一,企业物流定制专家——企业客户项目管理流程解析
  4. zabbix自动发现监控磁盘(iops和读写量)
  5. React开发(132):ant design学习指南之form中控制展开和关闭逻辑
  6. scala运算符_Scala的所有符号运算符是什么意思?
  7. 硬件基础知识--(10)三极管的工作原理
  8. RabbitMQ 开启WEB管理
  9. 如何控制局域网网速_科普 | 路由器网速突然变慢怎么办?
  10. 中国搪瓷板(VE+Panel)市场趋势报告、技术动态创新及市场预测
  11. 弹性布局(Flex)布局介绍
  12. 计算机管理无法输入密码,光大网银控件已安装但无法输入密码
  13. 分享一个WIN10可用的桌面图标栅栏管理插件Fences的破解版
  14. 系统性谈谈软件可靠性——第3讲:软件可靠性设计方法
  15. win10系统无法连接远程服务器,笔者修复win10系统无法连接远程服务器的图文教程...
  16. 基于STM32开发板I²C总线通信协议浅析
  17. 安装ESIM事件相机模拟器遇到的一些问题及解决方法
  18. SpringBoot国际化失败的原因,切换中英文无效
  19. 开源机器学习流水线(Pipeline)工具调研(MLOps)
  20. 火狐浏览器滚动条样式修改 css

热门文章

  1. 解决调用wx.downLoadFile下载的文件名乱码(长串英文字符)问题
  2. Transformer模型详解(图解最完整版)
  3. 基于JAVA中小学教师培训管理系统计算机毕业设计源码+系统+数据库+lw文档+部署
  4. Repeater控件动态变更列(Header,Item和Foot)信息
  5. Android常用RGB值以及中英文名称
  6. SVAC编解码技术标准:诞生、质疑与发展
  7. 腾讯“立知”被疑抄袭“即刻”
  8. 强不知以为知 怎能善其事
  9. 短视频搬运二次剪辑伪原创教程
  10. peewee的使用与异步peewee-async在tornado中的使用总结