您的位置:首页 > 理论基础 > 计算机网络

HDU-2017中国大学生程序设计竞赛-网络选拔赛-1001-Vertex Cover

2017-08-20 16:58 579 查看
ACM模版

描述



题解

构造题,思路不好想,题解还是十分容易理解的,也算是一种贪心的构造了。



代码

#include <iostream>
#include <cstring>

using namespace std;

const int MAXN = 1e4 + 5;

pair<int, int> pii[MAXN];

int a = 99, b = 111, c = 0;

void solve()
{
for (int i = a; i >= 2; i--)
{
int x = a / i;
for (int j = 0; j < x; j++)
{
int tmp = b++;
for (int k = 1; k <= i; k++)
{
pii[c].first = tmp;
pii[c].second = k + i * j;
c++;
}
}
}
}

void output()
{
printf("%d %d\n", b - 1, c);
for (int i = 0; i <= c - 1; i++)
{
printf("%d %d\n", pii[i].first, pii[i].second);
}
printf("%d\n", a);
for (int i = 1; i <= a; i++)
{
printf("%d\n", i);
}
}

int main(int argc, const char * argv[])
{
solve();

output();

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  构造 二分图
相关文章推荐