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

ACM模版

描述

HDU-2017中国大学生程序设计竞赛-网络选拔赛-1001-Vertex Cover_第1张图片

题解

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

HDU-2017中国大学生程序设计竞赛-网络选拔赛-1001-Vertex Cover_第2张图片

代码

#include 
#include 

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

你可能感兴趣的:(贪心,图论)