题目描述
天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例,就越完美。
现在天使给了小杉N只翅膀,小杉想挑出一对最完美的。
格式

输入格式

每组测试数据的
第一行有一个数N(2<=N<=30000)
第二行有N个不超过1e5的正整数,表示N只翅膀的长度。
20%的数据N<=100
输出格式

对每组测试数据输出两个整数,表示小杉挑选出来的一对翅膀。
注意,比较短的在前,如果有多对翅膀的完美程度一样,请输出最小的一对。

分析
这题我就不懂了。
明明可以不用离散化的。
我直接朴素O(N)的搜索加剪枝就AC了
具体做法是,读入数据后,将其从小到大排序,这保证了剪枝的稳定性。
比例怎么求?当然是a:b=a/b
那么既然我们要a:b=黄金比例,那也可以移项:
a/黄金比例=b
那么首先一个循环枚举a
然后储存a:黄金比例的值
于是我们可以得出一个结论,|b-a/黄金比例|越小,那么a:b越接近黄金比例。
因为排序以后a<b,所以当b-a/黄金比例>0时,精度肯定会开始变粗糙,于是剪枝。
这个时间复杂度不稳定,非常不稳定,可以出一个b-a/黄金比例永远不大于0的数据,就能卡超时了。
还有注意一下,剪枝要加在判断后,谁知道大于零的值精度会不会比之前的好呢?
以及精度问题,请全部用双精度实数变量或在程序中用注释表明。

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
using namespace std;
double gold=0.6180339887498949,q,mx;
int n,a[30001];
int i,j,ass,stick;
bool cmp(int a,int b)
{return a<b;
}
int main()
{scanf("%d",&n);for (i=1;i<=n;i++)scanf("%d",&a[i]);sort(a+1,a+n+1,cmp);mx=2147483647.0;for (i=1;i<=n;i++){q=(double)a[i]/gold;for (j=i+1;j<=n;j++){if (mx>abs((double)a[j]-q)){mx=abs((double)a[j]-q);ass=i;stick=j;}if ((double)a[j]-q>0) break;}}printf("%d\n%d",a[ass],a[stick]);
}

[鬼畜的离散化]隐形的翅膀相关推荐

  1. .NET2.0隐形的翅膀,正则表达式搜魂者【月儿原创】

    .NET2.0隐形的翅膀,正则表达式搜魂者 作者:清清月儿 主页:http://blog.csdn.net/21aspnet/           时间:2007.4.14 本文实现了:只能输入1个数 ...

  2. 视频监控为校园安全插上“隐形的翅膀”

    随着公众社会安全防范意识的提高,安防系统慢慢在各种公共场合普及.而我国教育事业的发展,高校的规模越来越大,学生人数不断增多,校区开放程度和后勤服务社会化程度亦越来越高,学校的管理工作和安全保安工作面临 ...

  3. 知识管理:如何让“隐形的翅膀”飞起来?

    知识管理:如何让"隐形的翅膀"飞起来? 时间:2013-06-07 16:25:46 来源: 中国期刊网 作者:陈新红 知识具有垄断性,但许多企业把知识管理看作员工的额外工作,或寄 ...

  4. 隐形的翅膀怎么用计算机弹出来,《隐形的翅膀》原版吉他谱分享,用音阶指法弹简谱其实很简单 ... ......

    <隐形的翅膀>是张韶涵的一首流行经典老歌,我们很多学吉他的朋友,初学吉他的时候经常会弹唱的一首歌,弹得可能简单版或者是其他版本,这里分享一个原版的吉他伴奏,相对来说要难一点,不过对于弹吉他 ...

  5. 隐形的翅膀怎么用计算机弹出来,《隐形的翅膀》原版吉他谱分享,用音阶指法弹简谱其实很简单 … …-520吉他网...

    时间:2020-05-14     来源:网络资源 <隐形的翅膀>是张韶涵的一首流行经典老歌,我们很多学吉他的朋友,初学吉他的时候经常会弹唱的一首歌,弹得可能简单版或者是其他版本,这里分享 ...

  6. 歌曲:隐形的翅膀 歌手:张韶涵

    歌名:隐形的翅膀 歌手:张韶涵 每一次 都在徘徊孤单中坚强 每一次 就算很受伤也不闪泪光 我知道 我一直有双隐形的翅膀 带我飞 飞过绝望 不去想 他们拥有美丽的太阳 我看见 每天的夕阳也会有变化 我知 ...

  7. 引领数字经济时代,软件企业需要一对“隐形的翅膀”

    ‍ ‍数据智能产业创新服务媒体 --聚焦数智 · 改变商业 "报告局长,狙击手已经就位,随时准备强行进入解救人质."特警指挥官在现场向指挥中心的领导汇报道--在军警影视画面中,类似 ...

  8. 隐形的翅膀 北大校长 唱

    每一次 都在徘徊孤单中坚强 每一次 就算很受伤 也不闪泪光 我知道 我一直有双隐形的翅膀 带我飞 飞过绝望 不去想 他们拥有美丽的太阳 我看见 每天的夕阳 也会有变化 我知道 我一直有双隐形的翅膀 带 ...

  9. vijos 1237 隐形的翅膀

    隐形的翅膀 背景 小杉终于进入了天堂.他看到每个人都带着一双隐形翅膀,他也想要. (小杉是怎么看到的?--) 描述 天使告诉小杉,每只翅膀都有长度,两只翅膀的长度之比越接近黄金分割比例,就越完美. 现 ...

最新文章

  1. 技术图文:进一步完善自动化交易系统 - 02
  2. Ubuntu 安装简单samba
  3. 20220215-CTF-MISC-BUUCTF-爱因斯坦-binwalk分析图片-dd命令分离ZIP文件--图片属性中寻找密码
  4. 正则表达式 - 去掉乱码字符/提取字符串中的中文字符/提取字符串中的大小写字母 - Python代码
  5. git新建空白文件没有生效
  6. (26)计数器verilog与VHDL编码(学无止境)
  7. Linux下修改系统时间的简单方法
  8. python动态图形_利用matplotlib实现根据实时数据动态更新图形
  9. 微型计算机原理中ADC,微机原理实验-逐比较式ADC.doc
  10. 机器学习案例实战:Python文本数据分析新闻分类任务
  11. DevIL的学习笔记
  12. 黑马培训---分享点干货二 IOS面试非技术性问题
  13. 杭州市一医院李勇挂号指南
  14. 从“人、货、场”搭建数据指标体系,助力电商增长
  15. pytest中参数化方法,并且根据执行的命令进行动态参数化
  16. PythonOCC基础使用:基础建模指令(重要)
  17. 【用户运营】滴滴出行活动策划、用户成长体系、用户增长逻辑分析
  18. 在python中gevent monkey_patch 出现Monkey-patching may lead to errors解决
  19. Xcode12编译报错 “building for iOS,but linking in object file built for iOS Simulator”
  20. css filter blur 白边,如何解决CSS3毛玻璃效果blur有白边的问题

热门文章

  1. SAP Insurance Analyzer
  2. UVA 1339(古老的密码)
  3. Incorrect string value: ‘\xE6\x9D\x8E\xE8\x80\x81...‘ for column ‘name‘ at row 1
  4. 用数据驱动思想来设计游戏
  5. css 实现一个尖角_纯 CSS 实现三角形尖角箭头的实例
  6. 【JVM】优化参数+优化工具
  7. Docker的安全和日志管理
  8. 匹配中英文逗号将逗号分割为数组
  9. js,数组合并的方法+数组添加元素的方法
  10. 计算机在金属材料工程专业的应用,金属材料工程专业 毕业后 从事什么工作