首页 > 代码库 > P1416 攻击火星

P1416 攻击火星

P1416 攻击火星

题目描述

一群外星人将要攻击火星。

火星的地图是一个n个点的无向图。这伙外星人将按照如下方法入侵,先攻击度为0的点(相当于从图中删除掉它),然后是度为1的点,依此类推直到度为n-1的点。

所有的点度统计是动态统计的。(一个点删掉后,与之相连的点的点度都会-1)。外星人攻击度为某个数的点时是同时攻击的。

你需要设计这个图的边的方案来使得未被攻击的点最多。

输入输出格式

输入格式:

 

输入文件包含一行一个整数n。

 

输出格式:

 

一行一个整数,表示最多的最后未被攻击的点。

 

输入输出样例

输入样例#1:
3
输出样例#1:
1

说明

【样例解释】

①-②-③,这样首先删掉度为1的①和③,此时②度数为0,不会被删去。

【数据范围】

对于20%的数据1<=n<=10

对于100%的数据1<=n<=50000

【题目来源】

tinylic改编

 

额......

1 #include<iostream>
2 #include<algorithm>
3 using namespace std;
4 int n;
5 int main(){
6     cin>>n;
7     cout<<max(0,n-2)<<endl;
8     return 0;
9 }

 

P1416 攻击火星