p1416攻击火星

传送门

其实这就是一道大水题,可是我太菜了,根本不会做,于是想到了暴力,可还是不会,就抱着浪费评测资源的心态cout<<n-2,竟然奇迹般的得了90,下载数据后发现n=1,那就特判一下,于是过了。

那下面就解释一下为什么是n-2。

首先构造一个完全图,删去一条边,该边两个端点的度就会-2,其余点的度就会-1。所以我删去之后其余点的度-3,因此n-2即为最优解。

#include<iostream>
using namespace std;
int main()
{
    int n;
    cin>>n;
    if(n<2)
    {
        cout<<0;
        return 0;
    }
    cout<<n-2;
    return 0;
}
原文地址:https://www.cnblogs.com/lizhengde/p/13497342.html