嵊州D1T3 睡美人航班
嵊州D1T3
睡美人航班
不知不觉中,我对她的爱意已经达到了 n。
是这样子的,第 1 分钟,我对她的爱意值是 (1, 1)。
假如当第 x 分钟时我对她的爱意值是 (a, b),那么第 x + 1 分钟我对她的爱意值就是 (a + b, b) 或者 (a, a + b)。
在关注着她的时候,我已然忘记了时间。
现在我想知道,这时候航班已经至少起飞了多久?
爱意为 n,也就是说 a + b = n。
Input
一行一个整数 n。
Output
一行一个整数表示答案。
Examples
sleepingbeauty.in | sleepingbeauty.out |
5 | 3 |
Notes
对于所有数据,满足 2 ≤ n ≤ 106
Task1[30%]
n ≤ 20
Task2[50%]
n ≤ 103
Task3[70%]
n ≤ 104
Task4[100%]
无特殊限制
solve!
这道题题挺简单的(虽然我没做出来)
没事!这不是最后的考试,我也还有机会!
看一眼题,先定义个gcd(a,b)再说
第二,那个灵力值的大小不重要,重要的是:
1、起始值
2、每个梦都要做(才能知道最多的事情嘛)
(好贪心哟(^U^)ノ~YO)
#include<bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f;
int n,a=,b=,nowtime=,mintime=inf;
int ay(int a,int b)
{
if(b)
return ay(b,a%b)+a/b;
else
if(a>) return inf;
else return -; } int main()
{
//freopen("sleepingbeauty.in","r",stdin);
//freopen("sleepingbeauty.out","w",stdout);
scanf("%d",&n);
for(int i=;i<=n;i++)
mintime=min(mintime,ay(n,i));
printf("%d",mintime);
return ;
}
/*
另一种方法
ay(){
if(a+b>n) return;
nowtime++;
if(a+b==n) mintime=min(mintime,nowtime);
ay(a+b,b);
ay(a,a+b);
nowtime--;
*/
有一点我好傻:
if(b)
return ay(b,a%b)+a/b;
else
if(a>1) return inf;
else return -1;
其实可以很简单的用两个三目运算符的。。。
return b ? ay(b, a % b) + a / b : a > 1 ? inf : -1;
有的时候要相信自己嘛!
运行通过,再看看数据也没有什么特别大的。行吧!
嵊州D1T3 睡美人航班的更多相关文章
- CJOJ 免费航班
Description 小Z在MOI比赛中获得了大奖,奖品是一张特殊的机 票.使用这张机票,可以在任意一个国家内的任意城市之间的免费飞行,只有跨国飞行时才会有额外的费用.小Z获得了一张地图,地图上有城 ...
- C#实现航班查询及预订
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- 航班座位_hihocoder
题目2 : 航班座位 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi在给一个家庭旅游团订某次航班的机票.该航班的飞机一共有N排座位,每排座位有10个座位,从左到右 ...
- [Swift]LeetCode787. K 站中转内最便宜的航班 | Cheapest Flights Within K Stops
There are n cities connected by m flights. Each fight starts from city u and arrives at v with a pri ...
- [LeetCode] Cheapest Flights Within K Stops K次转机内的最便宜的航班
There are n cities connected by m flights. Each fight starts from city u and arrives at v with a pri ...
- [luogu P3953] [noip2017 d1t3] 逛公园
[luogu P3953] [noip2017 d1t3] 逛公园 题目描述 策策同学特别喜欢逛公园.公园可以看成一张$N$个点$M$条边构成的有向图,且没有 自环和重边.其中1号点是公园的入口,$N ...
- 【NOIP2017 D1T3】逛公园
NOIP2017 D1T3 逛公园 题意:给一个有向图,每条边有权值,问从\(1\)到\(N\)的长度不超过最短路长度\(+K\)的路径条数.如果有无数条则输出\(-1\). 思路:我们首先扔掉\(- ...
- 20171205xlVBA往返航班组合
'ClassPlan Public Org As String Public Des As String Public FlyNo As String Public StartDate As Vari ...
- [2018HN省队集训D1T3] Or
[2018HN省队集训D1T3] Or 题意 给定 \(n\) 和 \(k\), 求长度为 \(n\) 的满足下列条件的数列的数量模 \(998244353\) 的值: 所有值在 \([1,2^k)\ ...
随机推荐
- 在 Excel 中如何使用宏示例删除列表中的重复项
概要:在 Microsoft Excel 中,可以创建宏来删除列表中的重复项.也可以创建宏来比较两个列表,并删除第二个列表中那些也出现在第一个(主)列表中的项目.如果您想将两个列表合并在一起,或者如果 ...
- C#中??操作符的使用
为了实现Nullable数据类型转换成non-Nullable型数据,就有了一个这样的操作符”??(两个问号)“,双问号操作符意思是取所赋值??左边的,如果左边为null,取所赋值??右边的, 比如i ...
- Elevated privileges for Delphi applications
BY CRAIG CHAPMAN · PUBLISHED 2015-06-08 · UPDATED 2015-06-08 One of my customers recently asked th ...
- 为什么API多用C而不是C++,为什么C++程序大多不使用异常
读Defective C++随笔 不尽知用兵之害者,则不能尽知用兵之利也 ——<孙子兵法> 1.为什么API多用C而不是C++以前就一直很奇怪,为什么API大都用C的方式提供,即使有C++ ...
- Qt浅谈之二十七进程间通信之QtDBus good
一.简介 DBus的出现,使得Linux进程间通信更加便捷,不仅可以和用户空间应用程序进行通信,而且还可以和内核的程序进行通信,DBus使得Linux变得更加智能,更加具有交互性. DB ...
- MAC和PHY的区别(网线上传递的是模拟信号)
一块以太网网卡包括OSI(开方系统互联)模型的两个层.物理层和数据链路层.物理层定义了数据传送与接收所需要的电与光信号.线路状态.时钟基准.数据编码和电路等,并向数据链路层设备提供标准接口.数据链路层 ...
- linux dll hell--链接库real name, soname, link name
DLL hell 是指 Windows 系统上动态库的新版本覆盖旧版本,且新版本不能兼容旧版本的问题. 例如:装新软件,但原有的软件运行不起来了. Linux 系统下也同样面临着和 Windows ...
- 【Web前端Talk】无聊吗?写个【飞机大战】来玩吧(上篇)
01前言介绍 微信小游戏是基于微信客户端的游戏,它即点即玩,无需下载安装,体验轻便,可以和微信内的好友一起玩,比如PK.围观等,享受小游戏带来的乐趣.那如何开发一款属于自己的小游戏呢? 源码地址: h ...
- sublimetext插件安装
sublimetext 一.下载地址: https://www.sublimetext.com/ 二.安装Package Control 方式一: Ctrl + Shift + P , 输入insta ...
- js简单对象List自定义属性排序
简单对象List自定义属性排序 <script type="text/javascript"> var objectList = new Array(); functi ...