欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2022-06-07 08:48:19
...

ACM模版

描述

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

题解

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

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

代码

#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;
}