失忆药水(二分图结论)

失忆药水(二分图结论)

传送门

挺好的一个图论结论题,

n n 阶无向完全图,求最少删去多少边得到二分图。

也就是最多有多少边能组成二分图。

显然两边取一半顶点是最优的情况。

n n 是偶数是取两个 n 2 \dfrac{n}{2} ,当 n n 是奇数时取 n 2 ( n 1 ) 2 \dfrac{n}{2}和\dfrac{(n-1)}{2}

所以答案是 { n ( n 1 ) 2 n 2 × n 2 , n n ( n 1 ) 2 ( n 1 ) 2 × n 2 , n \begin{cases}\dfrac{n(n-1)}{2}-\dfrac{n}{2}\times \dfrac{n}{2},n为偶数\\\dfrac{n(n-1)}{2}-\dfrac{(n-1)}{2}\times\dfrac{n}{2},n为奇数\end{cases}

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5,M=1e6+5,inf=0x3f3f3f3f,mod=1e9+7;
#define mst(a) memset(a,0,sizeof a)
#define lx x<<1
#define rx x<<1|1
#define reg register
#define PII pair<int,int>
#define fi first 
#define se second
int main(){
    ll n;
    while(cin>>n){
        ll x;
       if(n&1) x=(n+1)/2*(n/2);
        else x=n/2*(n/2);
       cout<<n*(n-1)/2-x<<endl;
    }
	return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_45750972/article/details/106906465