题意:在一个三维空间中有一个轴,轴上有一个垂直于轴的半径为$R$的凸透镜(光心在轴上)和$n$个点光源,假设每个点光源发出的$1$单位光都刚好覆盖凸透镜,现在有一个半径为$r$的圆形光屏,问光屏最多能接收到多少单位光

首先当光屏与轴垂直且圆心在轴上时才能取到最优解

显然当$r\geq R$时答案是$n$

设光心的坐标为$0$,$n$个点光源的坐标为$x_{1\cdots n}(x_i\lt0)$,成像在$u_{1\cdots n}$处,光屏的坐标为$x(x\geq0)$,考虑每个点光源有多少光照到光屏上

对于第$i$个点光源,如果$x_i=-f$,那么$u_i=+\infty$,光线经过透镜后平行于轴,贡献为$\left(\dfrac rR\right)^2$

如果$x_i\ne-f$,那么$u_i=\dfrac1{\frac1f-\frac1{x_i}}$,贡献为$g_i(x)=\min\left(\left(\dfrac{u_ir}{(u_i-x)R}\right)^2,1\right)$,这玩意儿随$x$变化的图像大概长这样

(青蛙子???)

以所有红点为端点把$x$分段,那么所有$g_i(x)$在每一段的二阶导数都是连续且$\geq0$的,所以$\begin{align*}\sum\limits_{i=1}^ng_i(x)\end{align*}$在每一段都是凹的,也就是说最大值只可能在这些点上取到,直接枚举这些点,计算答案取最大值即可

最后还要和$x=0$的答案取$\max$,因为如果光线发散,光屏越靠近凸透镜答案越大

#include<stdio.h>
typedef double du;
const du eps=1e-7;
int x[1010],n,f,R,r;
du u[1010];
du min(du a,du b){return a<b?a:b;}
du max(du a,du b){return a>b?a:b;}
du abs(du x){return x>0?x:-x;}
du sqr(du x){return x*x;}
du calc(du t){int i;du res;res=0;for(i=1;i<=n;i++){if(x[i]==-f)res+=r*r/du(R*R);else if(abs(u[i]-t)>eps)res+=min(sqr(u[i]*r/du((u[i]-t)*R)),1);elseres+=1.;}return res;
}
int main(){int i;du ans;scanf("%d%d%d%d",&n,&f,&R,&r);if(r>=R){printf("%d",n);return 0;}for(i=1;i<=n;i++){scanf("%d",x+i);if(x[i]!=-f)u[i]=1./(1./du(f)+1./du(x[i]));}ans=calc(0);for(i=1;i<=n;i++){if(x[i]<-f)ans=max(ans,max(calc(u[i]*(R-r)/du(R)),calc(u[i]*(R+r)/du(R))));}printf("%.7lf",ans);
}

转载于:https://www.cnblogs.com/jefflyy/p/8875827.html

[Contest20180418]物理竞赛相关推荐

  1. 我校四名学生在全国中学生物理竞赛中勇夺一金三银并全部直保清华

    近日,在刚刚落幕的第27届全国中学生物理竞赛决赛中,我校张翔宇.张正.扈吉星.赵一轩四位同学奋勇拼博,从来自全国30个省.市.自治区的342名选手中脱颖而出,取得一金三银的好成绩.其中,张翔宇夺得金牌 ...

  2. 物理竞赛得奖学计算机,物理竞赛林紫琪带你探索清华学堂计算机科学实验班”(姚班)...

    林紫琪,34届全国中学生物理竞赛全国第22名,获得女生最高分,入选国家集训队,现就读于清华姚班. 这是一条小科普:"清华学堂计算机科学实验班"(姚班)由世界著名计算机科学家姚期智院 ...

  3. 角速度求积分能得到欧拉角吗_高中物理竞赛典型例题精讲——中垂平面内电荷圆周运动角速度...

    本期高中物理竞赛试题,我们共同来研究一下点电荷的受力情况,通常对于这类题目的解题方法而言,与同学们常见的力学类题目其实没有什么不同之处,就是在原本的力学题目常常考察的重力.摩擦力等外力作用的基础上,通 ...

  4. 大二物竞金牌转北大计算机,物理竞赛保送去北大还是清华?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 08年第25届全国物理决赛一等奖选手去向表 2008年第25届全国中学生物理竞赛决赛10月16--23日在北京举行,共评出一等奖36名,二等奖75名,三等 ...

  5. 学大伟业:如何利用课余时间学习物理竞赛,搞定自主招生?

    今天撇开能力超强的学生不谈,仅针对目标自主招生的学生,谨慎的给出一些物理竞赛的学习建议. 高一 高中物理竞赛中力学.电磁学模块占据了70%的考试内容,这两个模块也是最难的模块,热学.光学.近代物理内容 ...

  6. 学大伟业:2019年物理竞赛学习方法

    物理竞赛是什么 全国中学生物理竞赛是在中国科协领导下,由中国物理学会主办,各省.自治区.直辖市自愿参加的群众性的课外学科竞赛活动.这项活动得到教育部的同意和支持.竞赛的目的是促进中学生提高学习物理的主 ...

  7. 【ZZ】从入门到高阶,你需要刷哪些书?丨高中物理竞赛辅导书推荐

    无论你是初试牛刀的初学者,还是渐入佳境的潜力新星,亦或是经验丰富的竞赛老将,一份适合自己的书单总是奥赛学习的致胜法宝.本期推送,我们针对物理竞赛整理了一系列经典书目.希望大家可以结合自身经历.基础实力 ...

  8. Java+MySQL基于ssm的物理竞赛管理系统 开题 论文

    物理竞赛是对课堂上所学的理论知识的实践运用,加深所学知识的理解,锻炼团队协作能力.学生可以根据个人爱好,个人特长选择参与,不仅能培养学生的创新意思.提高专业技能,还能锻炼学生的组织能力和协作能力.物理 ...

  9. Java+MySQL基于ssm的物理竞赛管理系统

    物理竞赛是对课堂上所学的理论知识的实践运用,加深所学知识的理解,锻炼团队协作能力.学生可以根据个人爱好,个人特长选择参与,不仅能培养学生的创新意思.提高专业技能,还能锻炼学生的组织能力和协作能力.物理 ...

最新文章

  1. OpenCV~PS效果
  2. u盘被分区之后怎么合并linux,U盘格式化做启动盘后从16GB变成200MB的解决方法
  3. 新手小白Linux(Centos6.5)部署java web项目(mongodb4.0.2安装及相关操作)
  4. python 学习笔记(十二) 文件和序列化
  5. php 后台运行函数,php守护进程函数 后台执行脚本的实例详解
  6. 雨棚板弹性法计算简图_钢结构工程量计算4点注意事项,还不来看?
  7. js数字最多保留两位小数_8085微处理器中最多两个8位数字
  8. java中流_java 中流的使用
  9. 编译安装Nginx-1.0.1
  10. It is impossible to add a QtClass to the current project问题的解决
  11. C++ 版本 30:字符环
  12. 面向临床需求的CT图像降噪综述
  13. iOS 新浪微博-1.1框架升级
  14. als算法参数_ALS算法 (面试准备)
  15. Revel框架搭建的后台管理系统脚手架
  16. 飞马哥:正确推广模式框架的解析
  17. L1-4 拯救外星人
  18. 有度即时通系统安全技术原理
  19. 2021大厂Android面试经历,吐血整理
  20. 【ACP】复合材料铺层受压案例(附源文件)

热门文章

  1. mysql报错01427_ORA-01427问题的分析和解决
  2. android 监听 h5 window,H5嵌入APP后,通过window.WebViewJavascriptBridge原生APP与H5之间交互...
  3. 学python前要学c吗_目前python熟练 ,想再学golang 需要先学c吗?
  4. 20210322 :贪心思想力扣典型题目合集
  5. c 数组上限_高级I/O复用技术:Epoll的使用及一个完整的C实例含代码
  6. stream 上传插件 java_stream: 流式(包含断点续传)上传文件,包括前端和java后台...
  7. Linux 内核版本命名
  8. 为SSD加速 实战4KB对齐技巧1/3
  9. [转]vb高效编程(优化)
  10. 年总结(八):关于思考的重新认识