打重现赛时,一点思路也没有,然后又看到这题AC数那么少,就直接放弃了。今天重新看了看,借鉴了下别人的,发现此题应该算是一道可解题。

看上去,这题的ans是同时有两个点作为自变量的函数(然而n^2复杂度显然不对,这也应该早点想到)。其实,这道题可以先直接假设S中的两个点的坐标分别为B(x1,y1),B'(x2,y2),然后,利用高中学到的解析几何的知识,得到中点坐标的表达式,再结合两条直线的方程,得到A,A'的坐标表达式,有平行四边形四个顶点的坐标,面积也就可以求得了。以上过程全部在纸上完成。最后可以发现,B和B'的坐标完全是分开的2333,不会产生某种“莫名的耦合”来一起影响ans,具体的公式可以见代码。

所以,以后看到这样的题,不管结果怎样,先动手算一下,有时在草稿纸上暴力笔算就能得到公式了。

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5964

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 typedef long long LL;
 4
 5 LL a1,a2,b1,b2;
 6
 7 LL fun(LL x,LL y)
 8 {
 9     return a1*a2*x*x+b1*b2*y*y+(a1*b2+a2*b1)*x*y;
10 }
11
12 int main()
13 {
14
15     while(~scanf("%lld%lld%lld%lld",&a1,&b1,&a2,&b2))
16     {
17         LL n;
18         LL s1=-(1<<30),s2=1<<30;
19         scanf("%lld",&n);
20         while(n--)
21         {
22             LL x,y;
23             scanf("%lld%lld",&x,&y);
24             LL s=fun(x,y);
25             s1=max(s1,s);
26             s2=min(s2,s);
27         }
28         printf("%.0lf\n",fabs((double)(s1-s2)/(double)(a1*b2-b1*a2)));
29     }
30 }

转载于:https://www.cnblogs.com/Just--Do--It/p/6051661.html

hdu 5964:平行四边形 【计算几何】相关推荐

  1. HDU 5964 平行四边形/Pland 【平面几何】

    source: 题目链接 题意:这是CCPC2016合肥站的D题,给定两条直线L和L',给定n个待选的点,从这n个点中选出两个B和B',再在两条直线上分别确定A和A',使得满足AA'和BB'的中点重合 ...

  2. HDU 4386(计算几何+婆罗摩笈多公式一般形式)

    问题描述: One day the little Jack is playing a game with four crabsticks. The game is simple, he want to ...

  3. Hdu 1174 爆头 计算几何问题

    爆头 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  4. 三元一次方程组计算机解法,math 三元一次方程组的解法

    math & 三元一次方程组的解法 class 6 math 例题 问题: 1. 已经做好的与没有做好的比例是 5 比 7; 2 再做好51,完成总数的 70%; 3. 问,一共要做多少朵花? ...

  5. 2017大二上期末总结

    今天给学弟学妹们监考,本想补昨晚比赛的题,但是限制了外网,我就做一下期末总结吧. 回想一下这一学期,突然觉得好快,真的感觉还没有学到什么东西就过完了,看着学弟学妹们现在高昂的比赛劲头,突然感觉明天的比 ...

  6. hdu 1174:爆头(计算几何,三维叉积求点到线的距离)

    爆头 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submiss ...

  7. 计算几何(判断顺时针/逆时针) - Clockwise or Counterclockwise - HDU 6857

    计算几何(判断顺时针/逆时针) - Clockwise or Counterclockwise - HDU 6857 2020 Multi-University Training Contest 8 ...

  8. *HDU 2108 计算几何

    Shape of HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  9. hdu 4667 Building Fence 计算几何模板

    1 //大白p263 2 #include <cmath> 3 #include <cstdio> 4 #include <cstring> 5 #include ...

最新文章

  1. UI设计培训分享:UI设计师如何准备面试?
  2. 用rvest包来抓取Google学术搜索数据
  3. 我都不敢信了 东芝芯片“又”将最后决定
  4. 业务逻辑数据层SqlDataSourcesql的输入参数控件参数System.Web.UI.WebControls.GridView.SelectedValue...
  5. 论文 | 港中文自动驾驶点云上采样方法
  6. power bi 实时_Power BI中的实时流
  7. 剑指offer面试题[42]-反转单词顺序VS左旋转字符串
  8. matlab fbp fan arc,滤波反投影重建算法(FBP)实现及应用(matlab)
  9. Kindle Collection编辑器
  10. 人人开源项目搭建到服务器,人人开源系列项目介绍以及环境搭建
  11. html实训大作业《基于HTML+CSS+JavaScript红色文化传媒网站(20页)》
  12. kaptcha配置java_java之kaptcha验证码
  13. 计算机网络单向ping通,单向可Ping通的原因与原理
  14. 电感式dcdc原理(转)
  15. go每日新闻--2021-01-16
  16. 关于浮点运算和定点运算
  17. 如何理解 0.1+0.2
  18. Kettle闪退,以及Kettle资源库connect报错小解
  19. ipad批量删除图片
  20. Java 并发编程内部分享PPT分享

热门文章

  1. matlab 柱状图_MATLAB作图实例:24:条形图
  2. myftpadmin+proftpd+mysql架设ftp服务器_[教程]在CentOS7上配置 FTP服务器 Proftpd 支持 MySQL 虚拟用户加密认证以及磁盘限额(Quota)...
  3. vs2015项目导出为Qt项目
  4. 计算机三级网络技术上机题型,计算机三级网络技术上机操作的题型
  5. 安装ugjava安装在哪里_讨论!空调安装安全绳该挂哪里
  6. jquery加载完成后方法只执行一次_JavaScript的超级库--jQuery内容整理(3)
  7. linux实现内存共享,Linux共享内存实现
  8. mysql下载环境_windows下安装mysql需要什么环境
  9. 无法下载php怎办,php无法下载大文件怎么办
  10. SpringSecurity Filter顺序