1. 题目

题目描述
有n名选手参加比赛,从1∼n编号。每场比赛由两位选手对决,失败的被淘汰。为了增加比赛的观赏性,举办方并不想比赛双方实力相差太大的,所以决定,每场比赛的两位选手,之前胜场次数之差不能超过1。同时,鸡贼的举办方又不想冠军选手比赛太少了(严重影响比赛收入),希望冠军选手比赛场次越多越好。作为选手的你,当然不希望夺冠路上比赛场次太多,请问在这个赛制下,冠军最多比赛多少场?
输入
存在不超过10000组样例。每行一个整数n(1≤n≤1018)。
输出
每行输出一个样例的结果,为一个整数。
样例输入
1
2
3
10
1000000000000000000
样例输出
0
1
2
4
85
样例解释
我们假定冠军是1号。
第3个样例,1号依次击败2和3号。
第4个样例,其中一种比赛路线是1击败2,3击败4,1击败3,5击败6,1击败5,7击败8,9击败10,7击败9,1击败7。

  1. 解法
    我们先来看一下1位选手、2位选手、3位选手和4位选手的比赛情况。




    可以发现选手都是叶子节点,且不是叶子节点的节点的度均为2。冠军选手的比赛场数就是树的高度假设h代表树的高度,g(h)代表树的叶子节点数,可以发现g(h) = g(h-1)+g(h-2)(斐波拉契数列)。然后我们就可以用斐波拉契数列来解决这道题了。我的代码如下。
#include <cstdio>
#include <iostream>
typedef unsigned long long ull;
ull arr[100];
using namespace std;
int main(int argc, char const **argv) {ull max = 1000000000000000000;ull n;ull f1 = 1, f2 = 2;arr[0] = f1;arr[1] = f2;int cnt = 2, i;//计算斐波那契数列 while(f2 <= max) {f1 = f1 + f2;arr[cnt++] = f1;f2 = f2 + f1;arr[cnt++] = f2;}while(cin >> n) {for(i = 0; arr[i] <= n; i++);cout << i-1 << endl;}return 0;
}

XTUOJ-1286-比赛相关推荐

  1. Paddle打比赛-古籍文档图像识别与分析算法比赛

    一.粤港澳大湾区(黄埔)国际算法算例大赛-古籍文档图像识别与分析算法比赛简介 1.背景及意义 中国几千年辉煌的华夏文明,留下了海量的古籍文献资料,这些文字记录承载着丰富的历史信息和文化传承.为响应古籍 ...

  2. xtuoj 模拟 1176 First Blood

    xtuoj 模拟 1176  First Blood 是个菜鸡,写的不好. 算法:边输入边运算(?) Description 题目描述 ICPC比赛中,某道题的第一次正确提交,被称为First Blo ...

  3. IROS 2019 比赛记录

    IROS 2019 比赛记录--题目更新了 2019-12-5 IROS比赛内容更新(2019-10-17) 目前准备进展 仍需准备的工作及问题 IROS 比赛准备(2019-09-27) 任务二:把 ...

  4. LeetCode简单题之棒球比赛

    题目 你现在是一场采用特殊赛制棒球比赛的记录员.这场比赛由若干回合组成,过去几回合的得分可能会影响以后几回合的得分. 比赛开始时,记录是空白的.你会得到一个记录操作的字符串列表 ops,其中 ops[ ...

  5. LeetCode简单题之比赛中的配对次数

    题目 给你一个整数 n ,表示比赛中的队伍数.比赛遵循一种独特的赛制: 如果当前队伍数是 偶数 ,那么每支队伍都会与另一支队伍配对.总共进行 n / 2 场比赛,且产生 n / 2 支队伍进入下一轮. ...

  6. 计算机图画大赛作品六年级,小学学生电脑绘画比赛活动方案

    <小学学生电脑绘画比赛活动方案>由会员分享,可在线阅读,更多相关<小学学生电脑绘画比赛活动方案(7页珍藏版)>请在人人文库网上搜索. 1.坊庄小学学生电脑绘画比赛活动方案为切实 ...

  7. 【AHOI 2016初中组】 自行车比赛 - 贪心

    题目描述 小雪非常关注自行车比赛,尤其是环滨湖自行车赛.一年一度的环滨湖自行车赛,需要选手们连续比赛数日,最终按照累计得分决出冠军.今年一共有 N 位参赛选手.每一天的比赛总会决出当日的排名,第一名的 ...

  8. BestCoder Round #92 比赛记录

    上午考完试后看到了晚上的BestCoder比赛,全机房都来参加 感觉压力好大啊QAQ,要被虐了. 7:00 比赛开始了,迅速点进了T1 大呼这好水啊!告诉了同桌怎么看中文题面 然后就开始码码码,4分1 ...

  9. 南大电子机器人入驻云南_云南大学外语协会 英文歌曲演唱比赛

    云南大学外语协会  英文歌曲演唱比赛顺利落幕 2020年11月8日14:30,云南大学外语协会英文歌曲演唱比赛在文汇楼2116顺利开展.比赛流程简洁明了:参赛同学完成抽签之后,在主持人的引导下,按照流 ...

  10. 关于python的比赛_【蓝桥杯】——python集团的比赛技巧,Python,组

    [蓝桥杯]-- Python组比赛技巧 蓝桥杯是大学生IT学科赛事,由工业和信息化部人才交流中心主办,所以对于大学生还说还是非常值得去参加的,2020年第十一届蓝桥杯新增了大学Python组,不分组别 ...

最新文章

  1. jwebsocket
  2. APM - 零侵入监控Service服务
  3. 机器学习数据挖掘笔记_14(GMM-HMM语音识别简单理解)
  4. java常用的发送http请求的工具方法
  5. 一、WPF 2个datagrid之间同步进度条
  6. dsoFramer 的原代码
  7. flink的checkpoint实验-scala版本
  8. DP(01背包) UESTC 1218 Pick The Sticks (15CCPC C)
  9. python图像处理opencv_使用Python+OpenCV进行图像处理(二)| 视觉入门
  10. java 同步块的锁是什么,java – 同步块 – 锁定多个对象
  11. .NET 二维码生成(ThoughtWorks.QRCode)
  12. cocos2d-x 调用java_cocos2d-x中通过Jni实现Java与C++的互相调用
  13. auto_ptr个人用
  14. SPSS主成分分析(PCA)
  15. ubuntu使用CNKI官方的caj浏览器
  16. PostgreSQL中创建空间拓展(创建空间数据库)并连接到空间数据库,导入数据表操作
  17. 三、动态构建GStreamer管道
  18. python求斜率_python – 在曲线上找到斜率变化的位置
  19. linux notifier的理解和应用
  20. 概率论-小记录(矩估计)

热门文章

  1. 犀牛脚本插件-获取选择对象长度-Python-几何对象长度-rhino脚本
  2. 一文了解python作图(matplotlib.pyplot)
  3. opencc php,宝塔面板安装opencc中文简繁转换工具和opencc4php扩展
  4. easyExcel导入表格
  5. “巴青虫草,雅魅天下 ”巴青县第三届冬虫夏草采挖体验活动盛大开幕
  6. android下usb框架系列文章---(2)Usb mass_storage turn on的过程
  7. 【Python 3.7】编写一个名为make_great() 的函数,对魔术师列表进行修改,在每个魔术师的名字中都加入字样“the Great”。
  8. CA服务器搭建网页出现HTTP 错误 500.19 - Internal Server Error错误代码0x80070003 无法读取配置文件
  9. php socket 函数介绍
  10. Windows8和Windows10系统改装Win7系统的问题和解决办法