HDU 6090 Rikka with Graph (贪心+构造, 2017 Multi-Univ Training Contest 5)
来源:互联网 发布:centos 移除安装包 编辑:程序博客网 时间:2024/05/24 06:59
Problem
图上两点间距离被定义为
要求构造一个 n 点 m 条边的图 G ,使得
Limit
Idea
贪心地构造。
- 任意选择一点作为图中心点
- 当仍可以添边时,优先加入新的点并将其与中心点相连(如此使得任意新点到中心点距离为 1 ,任意两个连通点的距离为 2 )。
- 若边不足,则剩余未连通点到任意点的距离都为 n 。
- 若所有点都已经与中心点相连,且边仍有剩余,则任意连接两不直接相连的点,使得其距离由 2 变成 1 。
- 结束构造,统计结果。
Code
#include<bits/stdc++.h>using namespace std;int T, n;long long m;int main(){ scanf("%d", &T); while(T-- && scanf("%d %lld", &n, &m)) { if(m > (long long)n*(n-1) / 2) // n 点的图两两相连的边数最多只需要 n*(n-1)/2 ,多余的将干扰结果处理 m = (long long)n*(n-1) / 2; long long lnk = min((long long)n-1, m); // 与中心点相连的点数 long long ext = n - lnk - 1; // 孤立点数量 long long ans = lnk * (lnk-1) + lnk + ext * (ext - 1) / 2 * n + ext * (lnk+1) * n; if(m > lnk) ans -= (m-lnk); ans *= 2; printf("%lld\n", ans); }}
阅读全文
0 0
- HDU 6090 Rikka with Graph (贪心+构造, 2017 Multi-Univ Training Contest 5)
- HDU 6085 Rikka with Candies (bitset, 2017 Multi-Univ Training Contest 5)
- HDU 6086 Rikka with String (AC 自动机+状压 dp, 2017 Multi-Univ Training Contest 5)
- HDU 6093 Rikka with Number (2017 Multi-Univ Training Contest 5)
- 2017 Multi-University Training Contest 5 solutions 1006 Rikka with Graph
- HDU 6093 Rikka with Number (2017 Multi-University Training Contest
- 2017 Multi-University Training Contest 5 &&HDU 6085 Rikka with Candies 【bitset+思维】
- HDU 6090 Rikka with Graph(构造)
- HDU 6058 Kanade's sum (链表, 2017 Multi-Univ Training Contest 3)
- HDU 6065 RXD, tree and sequence (LCA, 2017 Multi-Univ Training Contest 3)
- HDU 6071 Lazy Running (Dijstra, 2017 Multi-Univ Training Contest 4)
- HDU 6078 Wavel Sequence (dp + 树状数组, 2017 Multi-Univ Training Contest 4)
- HDU 6069 Counting Divisors (2017 Multi-Univ Training Contest 4)
- HDU 6070 Dirt Ratio (二分+线段树, 2017 Multi-Univ Training Contest 4)
- HDU 6073 Matching In Multiplication (拓扑+DFS, 2017 Multi-Univ Training Contest 4)
- HDU 6046 hash (HASH, 2017 Multi-Univ Training Contest 2)
- HDU 6074 Phone Call (LCA+并查集, 2017 Multi-Univ Training Contest 4)
- HDU 6076 Security Check (DP, 2017 Multi-Univ Training Contest 4)
- 一条mysql语句查询出男女的人数
- gitk显示中文乱码
- iOS app调起微信支付后崩溃闪退的问题
- Ogre灯光
- 物联网时代制造企业对大数据的运用分析
- HDU 6090 Rikka with Graph (贪心+构造, 2017 Multi-Univ Training Contest 5)
- hdu1251统计难题-字典树模板题
- Android获取本机各种类型文件列表(音乐、视频、图片、文档等)
- 大数据学习路线
- VUE 学习笔记
- Springboot 集成kaptcha验证码 (图片转base64)
- 【坑】重置密码引起的mongodb无法访问
- svn 命令行下常用的几个命令
- 《Maven实战》学习笔记目录(转载)