U4699 鸡蛋

U4699 鸡蛋

    • 0通过
    • 37提交
  • 题目提供者飞翔
  • 标签
  • 难度尚无评定

提交

最新讨论

  • 暂时没有讨论

题目背景

调皮的kkk准备恶搞他的同学兼朋友——你!

题目描述

kkk准备从楼上扔鸡蛋下来砸在lzn身上,让lzn变成“鸡蛋王子”。但是如果鸡蛋没有破裂,辣么就没有什么好玩的了,所以kkk必须知道鸡蛋最少在哪一层楼上扔下来会摔破。

kkk为了实验事先买了K个鸡蛋(这些鸡蛋的硬度一样),并来到了一个N层高楼上。每次kkk可以拿着一个鸡蛋从t楼扔下去,并观察鸡蛋有没有摔破。如果鸡蛋在第t层楼没有摔破,那么在1..t-1层楼都不会摔破,而且不论在1..t层楼摔多少次鸡蛋都不会破。

lzn马上就要过来了,所以你需要帮kkk求出,她最少要做多少次实验。

输入输出格式

输入格式:

有多组数据,每组数据包含两个整数K和N

输出格式:

对于每组数据输出最少实验次数,如果实验63次还不能成功,输出TLE

输入输出样例

输入样例#1:

2 100
1 100

输出样例#1:

14
TLE

说明

1<=K<=100

1<=N<2^64

题解:

数据范围太大,二分就拜拜了。

只能用考虑dp or递推。

然后自己软腿就推出来了。

f[i][j]表示i个鸡蛋扔j次恰好是f[i][j]层随

转移f[i][j]=f[i][j-1]+f[i-1][j-1]+1;

AC代码:

#include<iostream>
#include<cstdio>
using namespace std;
long long f[105][3001];
long long k,n;
int main(){
    for(int a=1;a<=101;a++)
        for(int b=1;b<=3000;b++)
            f[a][b]=f[a][b-1]+f[a-1][b-1]+1;
    while(cin>>k>>n){
        bool flag=0;
        for(int a=0;a<=63;a++) if(f[k][a]>=n){
            flag=1;
            printf("%d\n",a);
            break;
        }
        if(!flag) printf("TLE\n");
    }
    return 0;
}
时间: 2024-10-26 22:49:18

U4699 鸡蛋的相关文章

从“煎鸡蛋”到“孵小鸡”松下空调温暖呵护生命

从“空调煎鸡蛋”到“空调孵小鸡”,松下空调每一次新品发布都让人们惊呼:原来空调还可以这么“玩”! 在9月23日举办的2016年松下健康空调新商品发布会上,松下空调原装整机进口空调怡爵VE系列惊艳亮相,并以其全进口配件以及健康呵护功效吸引包括媒体.经销商等来自全国各地嘉宾的广泛关注.本次引进的是松下历经多年研发的新一代冷媒加热式空调,型号包括VE9KK1.VE22KK1在内的涵盖1匹到2.5匹机型,解决了松下空调以往壁挂机最高2匹的尴尬,也满足用户的多样化需求. 广州松下空调器有限公司总经理山口昌

鸡蛋的硬度

描述 最近XX公司举办了一个奇怪的比赛:鸡蛋硬度之王争霸赛.参赛者是来自世 界各地的母鸡,比赛的内容是看谁下的蛋最硬,更奇怪的是XX公司并不使用什么精密仪器来测量蛋的硬度,他们采用了一种最老土的办法--从高度扔鸡蛋--来 测试鸡蛋的硬度,如果一次母鸡下的蛋从高楼的第a层摔下来没摔破,但是从a+1层摔下来时摔破了,那么就说这只母鸡的鸡蛋的硬度是a.你当然可以找出各种 理由说明这种方法不科学,比如同一只母鸡下的蛋硬度可能不一样等等,但是这不影响XX公司的争霸赛,因为他们只是为了吸引大家的眼球,一个个

大楼扔鸡蛋问题(动态规划)

题目链接:poj 3783 题意分析: 经典题,小白书上的一道例题,4+2出了这道原题,我愣是以为是数学题,最后也没做出来.题意是这样的,给你N个鸡蛋(硬度一样),让你测鸡蛋的硬度,测量的方法就是从某栋M层的楼的某一层X上把鸡蛋扔下来,如果鸡蛋碎了,代表他的强度小于X:如果没碎,则强度大于等于X.我们要做的就是不断的从楼上把鸡蛋扔下来,直到找到某一层楼X,从这一层楼扔下来鸡蛋不碎掉,从X+1层扔下来鸡蛋碎掉,那么鸡蛋的强度就是X.如果在M层扔下来鸡蛋也不碎掉,那么鸡蛋的强度为M.问题是,用N个鸡

nyoj1117 鸡蛋队列 (双端队列,deque)

题目1117 题目信息 运行结果 本题排行 讨论区 鸡蛋队列 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 将两根筷子平行的放在一起,就构成了一个队列.将带有编号的鸡蛋放到两根筷子之间叫做入队(push),将筷子之间的鸡蛋拿出来叫做出队(pop).但这两种方式有特殊的定义,对于入队,只能将鸡蛋从队列的尾部向里放入:对于出队,只能将鸡蛋从队列的头部向外将鸡蛋拿出来. 将①.②入队: 头____________尾                         ___

荣经堂养生:吃完鸡蛋不能立即做七件事

鸡蛋是很好的营养品之一,富含多种人体必需的物质,但是在中医学中,任何事物都相生相克,鸡蛋也不例外,因为吃完鸡蛋后,有些事情不能立即做.以下是7件吃完鸡蛋不能立即做的事情. 1.吃完鸡蛋后不要立即吃糖 鸡蛋不可以跟味精一起煮,相信很多主妇都已经知晓.但是你可能不知道,鸡蛋不可以跟糖一起煮或者吃鸡蛋后吃糖也是不行的.很多地方有吃糖水荷包蛋的习惯,其实,那会使鸡蛋蛋白质中的氨基酸形成果糖基赖氨酸的结合物.而这种物质不易被人体吸收,所以会对健康会产生不良作用. 2.吃完鸡蛋后不要立即吃柿子 吃完鸡蛋后吃

跟鸡蛋有关的问题

还是一筐鸡蛋 1个1个拿完 2个2个拿剩1个 3个3个拿剩1个 4个4个拿剩1个 5个5个拿剩1个 6个6个拿剩1个 7个7个拿拿完 问有多少个鸡蛋 i=0while True: if (i%1==0) and (i%2==1) and (i%3==1) and (i%4==1) and (i%5==1) and (i%6==1) and (i%7==0): print(i) i=i+1 else: i = i + 1

openjudge7627 鸡蛋的硬度

描述 最近XX公司举办了一个奇怪的比赛:鸡蛋硬度之王争霸赛.参赛者是来自世 界各地的母鸡,比赛的内容是看谁下的蛋最硬,更奇怪的是XX公司并不使用什么精密仪器来测量蛋的硬度,他们采用了一种最老土的办法--从高度扔鸡蛋--来 测试鸡蛋的硬度,如果一次母鸡下的蛋从高楼的第a层摔下来没摔破,但是从a+1层摔下来时摔破了,那么就说这只母鸡的鸡蛋的硬度是a.你当然可以找出各种 理由说明这种方法不科学,比如同一只母鸡下的蛋硬度可能不一样等等,但是这不影响XX公司的争霸赛,因为他们只是为了吸引大家的眼球,一个个

100层楼2个鸡蛋

有一栋楼共100层,一个鸡蛋从第N层及以上的楼层落下来会摔破, 在第N层以下的楼层落下不会摔破.给你2个鸡蛋,设计方案找出N,并且保证在最坏情况下, 最小化鸡蛋下落的次数. 设最坏情况下的次数为K,如果第一个鸡蛋第一次就在x层摔坏,则第二个鸡蛋应该从第1层开始试到x-1层,最坏还要试x-1次,则总测试次数为1+(x-1)= K,x=k; 如果第一个鸡蛋第一次在x层没坏,第二次摔坏了,此时已经测试了2次了,则第二个鸡蛋最坏能够测试k-2次,设第二次摔坏的层数为y,则第二个鸡蛋应该从x+1层开始测试

【递归】 放鸡蛋

Sicily1006. 递归:放鸡蛋 Description 把M个同样的鸡蛋放在N个同样的篮子里,允许有的篮子空着不放,问共有多少种不同的放法?(用K表示)5,1,1和1,5,1是同一种分法. 输入:鸡蛋M,篮子N 输出:鸡蛋的放法(降序,不重复) Sample input: 1 7 3 Sample output: 700 610 520 511 430 421 331 322 解题思路: (参考sicily1004 整数划分:m表示鸡蛋, n表示篮子数(最深输出栈),depth表示当前放鸡