2014 北京区域赛题目
来源:互联网 发布:中国10月经济数据 编辑:程序博客网 时间:2024/06/06 16:28
A
按照时间排个序算个斜率。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<queue>#include<map>#include<vector>#include<set>#include<ctime>#include<bitset>#define LL long long#define db double#define EPS 1e-15#define inf 1e10#define pa pair<int,int>using namespace std;struct Point { int t,x;};int cmp(Point a,Point b){ return a.t<b.t;}Point p[10005];int main(){ int T,cas=1; scanf("%d",&T); while (T--){ int n; scanf("%d",&n); for (int i=0;i<n;i++){ scanf("%d%d",&p[i].t,&p[i].x); } sort(p,p+n,cmp); db max=-1,v; for (int i=1;i<n;i++){ v=db(1.0*abs(p[i].x-p[i-1].x)/(p[i].t-p[i-1].t*1.0)); if (v>max) max=v; } printf("Case #%d: %.2lf\n",cas++,max); } return 0;}
直接的题意是求逆序对数,但是线性的扫一下如果后面有比这个数小的就搞一下,O(n)搞定。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<queue>#include<map>#include<vector>#include<set>#include<ctime>#include<bitset>#define LL long long#define db double#define EPS 1e-15#define inf 1e10#define pa pair<int,int>using namespace std;int a[1000010];int main(){ int t,ii,n,i,Min,ans; scanf("%d",&t); for (ii=1;ii<=t;ii++) { scanf("%d",&n); for (i=1;i<=n;i++) scanf("%d",&a[i]); Min=a[n]; ans=0; for (i=n-1;i>=1;i--) { if (a[i]>Min) ans++; else Min=a[i]; } printf("Case #%d: %d\n",ii,ans); }}
I
求圆环面积交,画图推公式得面积为 大圆交-2*小圆大圆交+小圆交。
#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>#include<cmath>#include<algorithm>#define inf 0x7fffffff#define exp 1e-10#define PI 3.141592654using namespace std;typedef long long ll;struct Point{ double x,y; Point (double x=0,double y=0):x(x),y(y){}};double dist(Point a,Point b){ double x=(a.x-b.x)*(a.x-b.x); double y=(a.y-b.y)*(a.y-b.y); return sqrt(x+y);}double Area_of_overlap(Point c1,double r1,Point c2,double r2){ double d=dist(c1,c2); if (r1+r2<d+exp) return 0; if (d<fabs(r1-r2)+exp) { double r=min(r1,r2); return PI*r*r; } double x=(d*d+r1*r1-r2*r2)/(2*d); double t1=acos(x/r1); double t2=acos((d-x)/r2); return r1*r1*t1+r2*r2*t2-d*r1*sin(t1);}int main(){ int t,ncase=1; double r,R; Point a,b; scanf("%d",&t); while (t--) { scanf("%lf%lf",&r,&R); scanf("%lf%lf%lf%lf",&a.x,&a.y,&b.x,&b.y); double bb_area=Area_of_overlap(a,R,b,R); double bs_area=Area_of_overlap(a,R,b,r); double ss_area=Area_of_overlap(a,r,b,r); printf("Case #%d: %.6lf\n",ncase++,bb_area-2.0*bs_area+ss_area); } return 0;}
0 0
- 2014 北京区域赛题目
- 2014年 acmicpc北京区域赛题目(hdu5112 hdu5119 hdu5120 hdu5122)
- 2014年北京、广州区域赛总结
- HDU5119 2014北京区域赛H DP
- 2016北京区域赛E UVAlive 7672 题目:What a Ridiculous Election 带约束条件的BFS
- 2015acm区域赛北京
- acm2015北京区域赛游记
- 2014 ACM亚洲区域赛 - 北京现场赛
- 2014 acm亚洲区域赛(北京)总结
- 2014ACM亚洲区域赛北京赛区(赛后总结)
- 2014 北京区域赛 F Fluorescent HDU5117 (数学+状压+dp)
- 2014 北京区域赛 F Fluorescent HDU5117 (数学+状压+dp)
- 2011年北京区域赛A题
- 2011年北京区域赛I-Activation
- (2015)北京区域赛总结+回忆录
- hihocoder 1257 2015北京区域赛I
- UVALive 7269 (构造) 15北京区域赛。。
- 2017 北京区域赛 J题
- tomcat内存配置
- Remove Element
- Android本地视频播放器开发--ffmpeg解码视频文件中的音频(1)
- 文章标题
- DC综合简单总结
- 2014 北京区域赛题目
- php中cookie跨域的解决方案以及IE和safari浏览器中的坑
- iOS开发网络篇之文件下载、大文件下载、断点下载
- 大牛分析问题的能力
- android WIFI开发
- 安装完Oracle数据库,给scott账户解锁方法
- HDU - 2829 Lawrence(四边形优化)
- java23中设计模式之代理模式
- 浅析c++中的内联函数(关键字inline)