算法题练习系列之(三十七): 客似云来
-----------------------------------------------------------------------------------------------------------
时间限制:1秒 空间限制:32768K 代码长度限制 100 KB
-----------------------------------------------------------------------------------------------------------
题目描述:
NowCoder开了一家早餐店,这家店的客人都有个奇怪的癖好:他们只要来这家店吃过一次早餐,就会每天都过来;并且,所有人在这家店吃了两天早餐后,接下来每天都会带一位新朋友一起来品尝。 于是,这家店的客人从最初一个人发展成浩浩荡荡成百上千人:1、1、2、3、5…… 现在,NowCoder想请你帮忙统计一下,某一段时间范围那他总共卖出多少份早餐(假设每位客人只吃一份早餐)。。
输入描述:
测试数据包括多组。 每组数据包含两个整数from和to(1≤from≤to≤80),分别代表开店的第from天和第to天。
输出描述:
对应每一组输入,输出从from到to这些天里(包含from和to两天),需要做多少份早餐。
输入例子:
1 10 2 8 36 80
输出例子:
143 53 61305790697453774
-----------------------------------------------------------------------------------------------------------
实现思路:
(1).典型的斐波那契数列,写出递归求第N项的值; (2).循环从form到to,逐一加和即可; (3).需要注意的是,该题不能直接递归调用求结果,会超时,有两个方法处理,第一种是,先把结果算出来用数组保存,然后根据对应的N值,直接获取对应的兔子数;一种是用map记录哪些N是计算过的,直接保存下来,不反复去计算。
-----------------------------------------------------------------------------------------------------------
package com.biyao.algorithm.niuke.a2;
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Main_a2_004 {public static Map<Integer,Long> map = new HashMap<Integer,Long>();public static void main(String[] args) {Scanner scan = new Scanner(System.in);while(scan.hasNextInt()){int from = scan.nextInt();int to = scan.nextInt();long count = 0;for (int i = from; i <= to; i++) {count = count + getRabbitNum(i);}System.out.println(count);}}public static long getRabbitNum(int n){if(n == 1){return 1;}else if(n == 2){return 1;}else{if(map.containsKey(n)){return map.get(n);}else{map.put(n, getRabbitNum(n-1) + getRabbitNum(n-2));}return map.get(n);}}}
算法题练习系列之(三十七): 客似云来相关推荐
- 【SQL开发实战技巧】系列(三十七):数仓报表场景☞从表内始终只有近两年的数据,要求用两列分别显示其中一年的数据聊行转列隐含信息的重要性
系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...
- 牛客刷题篇:客似云来 和 剪花布条(Java)
目录 题目一:客似云来 输入描述 输出描述 解题思路 代码 题目二:剪花布条 输入描述 输出描述 解题思路 代码 题目一:客似云来 链接:客似云来 NowCoder开了一家早餐店,这家店的客人都有个奇 ...
- 【每日一题】客似云来(斐波那契数列)
[每日一题]客似云来(斐波那契数列) 文章目录 [每日一题]客似云来(斐波那契数列) 1.题目来源 2.题目描述 3.输入/出描述 4.解题思路 5.代码展示 1.题目来源 牛客网:客似云来 2. ...
- [每日一题] 66. 客似云来(fib数列公式)
1. 题目来源 链接:客似云来 来源:牛客网 2. 题目说明 NowCoder开了一家早餐店,这家店的客人都有个奇怪的癖好:他们只要来这家店吃过一次早餐,就会每天都过来:并且,所有人在这家店吃了两天早 ...
- 刷题_33:剪花布条 and 客似云来
一.剪花布条 题目链接: 剪花布条 题目描述: 一块花布条,里面有些图案,另有一块直接可用的小饰条,里面也有一些图案.对于给定的花布条和小饰条,计算一下能从花布条中尽可能剪出几块小饰条来呢? 输入描述 ...
- Day 33 剪花布条+客似云来
目录 1.剪花布条 2.客似云来 1.剪花布条 链接:剪花布条__牛客网 来源:牛客网 [编程题]剪花布条 热度指数:1327 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M, ...
- 客似云来_如何通过将本地文件卸载到云来节省驱动器空间
客似云来 If you're thinking about buying a new hard drive because you're running out of capacity, you ca ...
- (剪花布条、客似云来)笔试强训
博主简介:想进大厂的打工人 博主主页:@xyk: 所属专栏: JavaEE初阶 两道编程题~~~ 目录 文章目录 一.[编程题]客似云来 二.[编程题]剪花布条 一.[编程题]客似云来 链接:客似云来 ...
- 【Java版oj】day33剪花布条、客似云来
目录 一.剪花布条 (1)原题再现 (2)问题分析 (3)完整代码 二.客似云来 (1)原题再现 (2)问题分析 (3)完整代码 一.剪花布条 (1)原题再现 剪花布条__牛客网 一块 ...
- 笔试强训day33(客似云来,剪花布条)
目录 第一题-剪花布条 第二题-客似云来 第一题-剪花布条 思路: 遍历s,利用find函数在s中寻找t,找到了,计数++,同时将找到的字符串t在s中删除,直到遇到npos结束遍历 // write ...
最新文章
- RTT设备与驱动之PWM
- vsftpd实现的FTP服务
- C++中const——由一个例子想到的
- ubutnu16.04搭建LAMP环境(搭建wordpress博客)
- Android下ListView的分页(9.6)
- Apache伪静态学习
- 新闻发布项目——实体类(newsTb)
- 笔记-计算机软件技术基础(一)资源管理技术-操作系统
- 新人如何聪明的学习计算机网络
- 使用iMazing创建配置文件时的几个重要首选项组
- 利用socket.io构建一个聊天室
- 巧用RoboCopy工具
- ios开发 各种字体
- 数据结构课程设计——药店的药品销售统计系统(排序应用)
- 《计算机操作系统(慕课版)》(汤小丹著)课后习题答案
- 网站优化后如何降低阿里云国际版服务器成本
- 【io】io等待为什么引发cpu过高?
- win系统服务器白名单,win10系统如何添加白名单 windows10下添加白名单的方法
- 顺序表专题(1)——顺序表
- 普通人如何在网上能月入3000以上