C/C++教程

Dance with a stick 题解(思维)

本文主要是介绍Dance with a stick 题解(思维),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

题目链接

题目思路

居然是个imo题目链接 感觉应该不会再有了吧。。。。

结论就是经过某个点的直线,使得左右两侧的点个数相同

向量取\((-1,1e9)\)

代码

#include<bits/stdc++.h>
#define fi first
#define se second
#define debug cout<<"I AM HERE"<<endl;
using namespace std;
typedef long long ll;
const int maxn=2e5+5,inf=0x3f3f3f3f,mod=998244353;
const double eps=1e-6;
int n;
pair<int,int> pa[maxn];
signed main(){
    scanf("%d",&n);
    for(int i=1;i<=n;i++){
        scanf("%d%d",&pa[i].fi,&pa[i].se);
    }
    sort(pa+1,pa+1+n);
    if(n%2==1){
        printf("Yes\n");
        printf("%d %d -1 1000000000\n",pa[n/2+1].fi,pa[n/2+1].se);
    }else{
        printf("No\n");
    }
    return 0;
}

这篇关于Dance with a stick 题解(思维)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!