嵊州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 睡美人航班的更多相关文章

  1. CJOJ 免费航班

    Description 小Z在MOI比赛中获得了大奖,奖品是一张特殊的机 票.使用这张机票,可以在任意一个国家内的任意城市之间的免费飞行,只有跨国飞行时才会有额外的费用.小Z获得了一张地图,地图上有城 ...

  2. C#实现航班查询及预订

    using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...

  3. 航班座位_hihocoder

    题目2 : 航班座位 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi在给一个家庭旅游团订某次航班的机票.该航班的飞机一共有N排座位,每排座位有10个座位,从左到右 ...

  4. [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 ...

  5. [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 ...

  6. [luogu P3953] [noip2017 d1t3] 逛公园

    [luogu P3953] [noip2017 d1t3] 逛公园 题目描述 策策同学特别喜欢逛公园.公园可以看成一张$N$个点$M$条边构成的有向图,且没有 自环和重边.其中1号点是公园的入口,$N ...

  7. 【NOIP2017 D1T3】逛公园

    NOIP2017 D1T3 逛公园 题意:给一个有向图,每条边有权值,问从\(1\)到\(N\)的长度不超过最短路长度\(+K\)的路径条数.如果有无数条则输出\(-1\). 思路:我们首先扔掉\(- ...

  8. 20171205xlVBA往返航班组合

    'ClassPlan Public Org As String Public Des As String Public FlyNo As String Public StartDate As Vari ...

  9. [2018HN省队集训D1T3] Or

    [2018HN省队集训D1T3] Or 题意 给定 \(n\) 和 \(k\), 求长度为 \(n\) 的满足下列条件的数列的数量模 \(998244353\) 的值: 所有值在 \([1,2^k)\ ...

随机推荐

  1. delphi 判断目录是否可写

    FUNCTION WritableDir(CONST Dir : STRING) : BOOLEAN; VAR FIL : FILE; N : STRING; I : Cardinal; BEGIN ...

  2. Android 查看Apk签名方式V1和V2

    Android 查看Apk签名方式V1和V2 java -jar apksigner.jar verify -v my.apk -- Verifies Verified using v1 scheme ...

  3. 零元学Expression Blend 4 - Chapter 34 啊~!!我不要毛毛的感觉!-使用布局修整「UseLayoutRounding」

    原文:零元学Expression Blend 4 - Chapter 34 啊~!!我不要毛毛的感觉!-使用布局修整「UseLayoutRounding」 本章将介绍UseLayoutRounding ...

  4. Qt https 用户认证authenticationRequired()

    用QNetworkAccessManager以POST方式访问https需要用户认证,所以用SIGNAL(authenticationRequired(QNetworkReply *, QAuthen ...

  5. 从Qt5开始只剩下setCodecForLocale这一个了,只是影响Qt对toLocal8Bit相关函数的编码方式(在源码里写非英文,官方推荐“\xE4\xBD...”这种)good

    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); QTextCodec::setCodecFo ...

  6. QT---基于WinPcap的局域网络管理工具(主机扫描、包过滤、ARP攻击、端口扫描)

    主要功能 本机适配器扫描 局域网各主机扫描 类似于WinShark的抓包工具,能够简单的过滤Tcp.Udp.Arp等包 ARP攻击功能,限制局域网内指定主机上网 流量统计,统计实时网速 多线程攻击,多 ...

  7. qt 自动重启(两种方法)

    所谓自动重启就是程序自动关闭后在重新打开: 一般一个qt程序main函数如下: int main(int argc, char* argv[]) { QApplication app(argc, ar ...

  8. 虚拟化代码博客 good

    推荐网站和博客地址 --------------------------------   虚拟化代码博客   QEMU大牛博客:qemu - 韋任的維基百科 http://people.cs.nctu ...

  9. 搜索栏+collectionView实现

      效果图如下:   1.h文件声明方法:   @interface IDSGameRoomSearchPage : UIView @property (nonatomic,weak) BaseVie ...

  10. java多线程之Lock/Condition简介

    在java多线程中,可以使用synchronized关键字实现线程之间的同步互斥,在jdk1.5中增加的ReentrantLock也能实现同样的效果,并且功能更加强大. 比如具有嗅探锁定,多路分支通知 ...