题意:给定一个凸包,现在让你连接凸包上两点,把凸包变为两个多边形,满足两个多边形的面积都是整数. 思路:我们知道整点的三角形面积S=叉积/2,则S要么是整数,要么是整数+0.5.那么多边形有多个三角形组成=So01+So12+So23+...(o是原点),也有这样的性质.因此,我们现在在算面积的时候不除2,通过奇偶来判定面积是否是整数. 首先得到整个凸包的面积,如果是奇数,那么不可能划分位为两个偶数,输出0: 如果是偶数,那么我们需要统计多少对(j,i),满足i点到j点组成的多边形面积是偶数.…
题目来源:http://codeforces.com/group/aUVPeyEnI2/contest/229510 时间限制:2s 空间限制:256MB 题目大意: 给定一个凸多边形,有一种连接两个顶点可以将多边形分成两个非空的面积为整数的图形,询问这种线有多少条. 数据范围: 4 ≤ n ≤ 200 000 −109 ≤ xi, yi ≤ 109 样例: 代码: #include <algorithm> #include <iostream> #include <cstr…
K - Cross SpiderTime Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=87794#problem/K Description The Bytean cross spider (Araneida baitoida) is known to have an amazing ability. Namely, it can instantly b…
题意: 每个人有两个积分CC和TF 第i个人能战胜第j个人的条件满足下面两个条件中的一个即可 1.CCi > CCj 或 TFi > TFj 2.i能战胜k,k能战胜j. 题解: 先按CCi的积分排序,然后连接相邻的两个人a->b,代表a能战胜b 再按TFi的积分排序,做同样的处理. 最后我们按TFi的排序做dfs,只需要dfs一遍就可以得到所有的答案 #include <algorithm> #include <iostream> #include <ve…
题意: 树的根节点为水源,编号为 1 .给定编号为 2, 3, 4, …, n 的点的父节点.已知只有叶子节点都是房子. 有 q 个操作,每个操作可以是下列两者之一: + v ,表示编号为 v 的房子被歹徒占领. - v ,表示歹徒退出编号为 v 的房子. 初始所有房子都没有歹徒.对于每次变化后,要求删除最少的边,使得所有有歹徒的房子均无法与水源连通:同时,在此基础上要求受影响的普通房子数量最少. 题解: 首先对树的根节点的子树分类,那么实际上最多删除的边就是子树个数. 对于每个子树,如果要求受…
题面 题意:给你一堆点,求一个最大面积的空凸包,里面没有点. 题解:红书板子,照抄完事,因为题目给的都是整点,所以最后答案一定是.5或者.0结尾,不用对答案多做处理 #include<bits/stdc++.h> #define N 55 using namespace std; struct rec { double x,y; }; rec operator -(rec a,rec b) { rec c; c.x=a.x-b.x; c.y=a.y-b.y; return c; } doubl…
题目链接 题意:给出第一象限的N个点,存在一直线x/a+y/b=1(a>0,y>0)使得所有点都在这条直线下面,求 min{sqrt(a^2+b^2)} 显然,这样的直线必然经过这N个点中的某一个(可用反证法证得),所以先对只有一个点的情况进行分析. 当只有一个点P(x0,y0)时,易得 此时设t=a/b,可知,a^2+b^2可写成两个凹函数相加的形式,故可用三分法求解. 所以N个点的情况就可解了.容易想到,只需要考虑凸包上位于右上侧的点(满足该点的左上方右下方都有点),那么该点就有成为“关键…
http://codeforces.com/gym/101142/attachments 题意:每个人在TC和CF上分别有两个排名,如果有一个人在任意一个网站上大于另一个人的排名,那么这个人可以打败另外一个人.还有就是如果 B 能打败 A, C 能打败 B,但是 C 直接从排名上看 C 并不能打败 A,但是因为 B -> A 并且 C -> B,所以 C -> B -> A, 即 C 也能(通过打败 B 来)打败 A. 如这个样例: A :5, 5 , B :1, 6,  C:2,…
A. Anniversary Cake 随便挑两个点切掉就好了. #include<bits/stdc++.h> using namespace std; const int Maxn=200020; typedef long long LL; typedef pair<int,int>pi; pi a[2]; int main() { freopen("anniversary.in","r",stdin); freopen("an…
J. Polygons Intersection time limit per test:2 seconds memory limit per test:64 megabytes input:standard input output:standard output We will not waste your time, it is a straightforward problem. Given multiple polygons, calculate the area of their i…