假设直线L和L'相交于原点O。假设S ={s1,s2,...,sn}是平面上的n个点。你打 算找四个点满足如下条件:
1.   A ∈ L 而 A' ∈ L'。
2.   B,B'都属于S;即 B∈S 且B'∈S。
3.   A,A'的中点与B,B'的中点重叠。这意味着ABA'B'是一个平行四边形(或者退 化的平行四边形)。
4.  平行四边形ABA'B'的面积最大。

(中文题目,好评!)

题解来源:ICPCCamp

吐槽:

现场只有一组数据的,OJ上改成了多组。而且是超级多组

导致了卡输入。

没用快速读入的时候T,用了只跑了300ms

代码如下:

 //快速读入的板子就不贴啦!
LL a, b, c, d;
LL t1, t2, t3;
LL f(LL x, LL y)
{
return t1 * x * x + t2 * y * y + t3 * x * y;
}
int main()
{
LL n;
while (get_LL(a) == )
{
get_LL(b);
get_LL(c);
get_LL(d);
get_LL(n);
t1 = a * c;
t2 = b * d;
t3 = a * d + b * c;
LL minF = LINF, maxF = -LINF;
LL x, y;
for (int i = ; i < n; i++)
{
get_LL(x);
get_LL(y);
LL v = f(x, y);
minF = min(minF, v);
maxF = max(maxF, v);
}
printf("%.f\n", fabs(double(maxF - minF) / (a * d - b * c)));
}
return ;
}

HDU 5964 平行四边形的更多相关文章

  1. hdu 5964:平行四边形 【计算几何】

    打重现赛时,一点思路也没有,然后又看到这题AC数那么少,就直接放弃了.今天重新看了看,借鉴了下别人的,发现此题应该算是一道可解题. 看上去,这题的ans是同时有两个点作为自变量的函数(然而n^2复杂度 ...

  2. hdu_5964:平行四边形

    打重现赛时,一点思路也没有,然后又看到这题AC数那么少,就直接放弃了.今天重新看了看,借鉴了下别人的,发现此题应该算是一道可解题. 看上去,这题的ans是同时有两个点作为自变量的函数(然而n^2复杂度 ...

  3. 2018 HDU多校第三场赛后补题

    2018 HDU多校第三场赛后补题 从易到难来写吧,其中题意有些直接摘了Claris的,数据范围是就不标了. 如果需要可以去hdu题库里找.题号是6319 - 6331. L. Visual Cube ...

  4. HDU - 3506 Monkey Party

    HDU - 3506 思路: 平行四边形不等式优化dp 这不就是石子归并(雾 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma G ...

  5. HDOJ 2111. Saving HDU 贪心 结构体排序

    Saving HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  6. 【HDU 3037】Saving Beans Lucas定理模板

    http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...

  7. hdu 4859 海岸线 Bestcoder Round 1

    http://acm.hdu.edu.cn/showproblem.php?pid=4859 题目大意: 在一个矩形周围都是海,这个矩形中有陆地,深海和浅海.浅海是可以填成陆地的. 求最多有多少条方格 ...

  8. HDU 4569 Special equations(取模)

    Special equations Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64u S ...

  9. HDU 4006The kth great number(K大数 +小顶堆)

    The kth great number Time Limit:1000MS     Memory Limit:65768KB     64bit IO Format:%I64d & %I64 ...

随机推荐

  1. AngularJS时间轴指令

    是基于ion.rangeSlider.js,主要代码如下: <link rel="stylesheet" type="text/css" href=&qu ...

  2. 关于XML文档

    很多人觉得XML很简单,但我想说其实一点也不简单,特别是在当今被各种web文档充斥的世界里有必要对XML进行一定程度的研究.下面的几篇博客将对XML技术进行简短的说明.

  3. 2016年Q2《网络安全创新500强》榜单解读

    近日,美国投资咨询机构Cybersecurity Ventures发布了2016 Q2<网络安全创新500强>企业榜单,新兴安全公司root9B异军突起,国内4家企业上榜. 关于Cyber ...

  4. MySQL数据库4 - 查看数据表

    一. 查看表的基本结构 语法:DESCRIBE/DESC TABLE_NAME 查询结果含义: Field: 字段名 Type: 字段类型 Null: 是否可以为空 Key: 是否编制索引 defau ...

  5. Android深度探索--HAL与驱动开发----第七章读书笔记

    首先创建led驱动的设备文件,可以使用cdev_init,register_chrdev_region,cdev_add等建立主设备号的设备文件.步骤如下: 1使用cdev_init初始化cdev 2 ...

  6. django常见小问题收集(转)

    1.当我把 DEBUG = True设为False的时候运行 python manage.py runserver 的时候 报错 : CommandError: You must set settin ...

  7. Material Design使用记录

    出现过的问题记录: 1.Crash on Android 6.0 in RippleView.draw() 解决方法: This has very simple solution. Just down ...

  8. Best Coder Round#25 1001 依赖检测

    原题大致上就是检测一系列进程之间是否存在循环依赖的问题,形如: a->b->c->a,  a->a ,都行成了循环依赖,事实上可以视为“检测链表中是否存在环” AC代码: #i ...

  9. html5 请求的URL转成 OC可用属性字符串显示

    NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:helpUrlStr]]; NSString *string = [ ...

  10. HTML教程-各窗口间相互操作(Frame Target)

    由Frames分出来的几个窗口的内容并不是静止不变的,往往一个窗口的内容随着另一个窗口的要求而不断变化,这就提高了Frames的利用价值.为了完成各窗口之间的相互操作,我们必须为每一个窗口起一个名字, ...