ZOJ 3194 Coverage【贪心】
来源:互联网 发布:美食纪录片 知乎 编辑:程序博客网 时间:2024/06/08 02:15
题目链接
题意:给n个点,x坐标不动,y坐标可以随便换,求按顺序从左到右把这些点连起来后和x轴围成的若干个梯形的面积之和。
说是贪心,但不是很裸的贪心。因为x坐标不动,先把每两个点x坐标之间的距离算出来,令dis[i]=x[i+1]-x[i],则最后的面积等于(y[1]+y[2])*dis[1]+(y[2]+y[3])*dis[2]+...+(y[n-1]+y[n])*dis[n-1]再除以2,把y[1]到y[n]都提出来,变成dis[1]*y[1]+(dis[1]+dis[2])*y[2]+(dis[2]+dis[3])*y[3]+...+(dis[n-2]+dis[n-1])*y[n-1]+dis[n-1]*y[n]除以2。把这看作是两个新的数组,两两相乘的和最大,那肯定是最大的乘以最大的,第二大的乘以第二大的。。
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <string>#include <cmath>#include <vector>#include <queue>#include <set>#include <map>using namespace std;#define ll long longint T;int n;double x[1010];double y[1010];double dis[1010];double d[1010];bool cmp(double a,double b){ return a>b;}int main(){ scanf("%d",&T); while (T--){ scanf("%d",&n); for (int i=1;i<=n;i++){ scanf("%lf %lf",&x[i],&y[i]); } sort(x+1,x+n+1); for (int i=1;i<=n-1;i++){ dis[i]=x[i+1]-x[i]; } d[1]=dis[1]; for (int i=2;i<=n-1;i++){ d[i]=dis[i]+dis[i-1]; } d[n]=dis[n-1]; sort(d+1,d+n+1); sort(y+1,y+n+1); // for (int i=1;i<=n;i++){ // printf("%.1f %.1f\n",d[i],y[i]); // } double ans=0; for (int i=n;i>=1;i--){ ans+=d[i]*y[i]/2.0; } printf("%.1f\n",ans); }}
阅读全文
0 0
- ZOJ 3194 Coverage【贪心】
- ZOJ 3194 Coverage【贪心】【思维题】
- [贪心]uva10020 Minimal coverage
- UVA10020 Minimal coverage 贪心
- ural 1303 Minimal Coverage【贪心】
- UVA Minimal coverage (贪心)
- Minimal coverage - UVa 10020 贪心
- URAL 1303. Minimal Coverage 贪心
- URAL 1303 Minimal Coverage (贪心)
- zoj 贪心
- 【贪心】ZOJ
- Minimal Coverage(ural1303,区间贪心)
- UVa 10020 Minimal coverage (贪心&区间覆盖)
- Minimal coverage -uva 覆盖线段,贪心
- Ural 1303 Minimal Coverage(贪心)
- UVA 10020 Minimal Coverage 排序+贪心
- uva 10020 Minimal coverage(贪心,区间覆盖)
- Ural 1303 Minimal Coverage(贪心)
- 网络管理
- FAT32文件系统之结构初探(一)
- Algorithm-Arrays-6 Kth pascal triangle
- Surrounded Regions问题及解法
- POSIX多线程程序设计学习篇之三(条件变量)
- ZOJ 3194 Coverage【贪心】
- Unity3D shader(12)——Fragment Shader(模型颜色变化)
- A. Arya and Bran
- 百度之星初赛(A) 1 数学 5 模拟 6 判连通(BFS)
- GNU计划的了解
- 《算法导论》第五章-第1节_练习(参考答案)
- ffmpeg android studio集成记录(我草)
- Hardening the media stack
- 设计模式-简单工厂模式