POJ题目 1003Hangover(叠放纸牌)
2024-08-30 15:58:20
POJ 1003 叠放纸牌
描述
您可以将多张纸牌悬在桌子上多远?如果您有一张卡,则可以创建一个最大长度为卡长的一半。(我们假设这些卡片必须垂直于桌子。)使用两张卡片,您可以使最上面的卡片悬垂在底部的卡片长度的一半,而最下面的卡片悬垂在桌面的卡片长度的三分之一,总最大悬垂为1/2 + 1/3 = 5/6卡长度。通常,您可以使n张卡片的悬垂度为1/2 + 1/3 + 1/4 + ... + 1 /(n +1)牌的长度,其中顶牌在第二张牌上悬垂1/2,第二张牌在第三张悬垂1/3,第三张在第四张悬垂1/4,依此类推,而底牌在桌子上悬垂1 /。 (n + 1)。如下图所示。
输入
输入由一个或多个测试用例组成,其后一行包含表示输入结束的数字0.00。每个测试用例都是一条包含正浮点数c的单行,其浮点数c至少为0.01,最大为5.20;c将包含三位数字。
输出
对于每个测试用例,输出实现至少c个卡长度的突出所需的最小卡数。使用示例中显示的确切输出格式。
样本输入
1.00
3.71
0.04
5.19
0.00
样本输出
3 card(s)
61 card(s)
1 card(s)
273 card(s)
代码
用while循环,直到超过需要的长度
#include <iostream>
using namespace std;
int main()
{
float k,s=0;//定义输入和总和变量
int n;//定义纸牌个数变量
while(1){//循环输入
cin >> k;//输入需要达到的长度
s=0;//初始化
n=2;
if(k==0.00) break;//结束循环
while(s<k){//在s没到k是一直加
s+=1.0/n;//s加1/n
n++;//n加1
}
cout<<n-2<<" card(s)"<<endl;//输出需要纸牌个数
}
return 0;
}
最新文章
- XAF 如何将数据库中Byte array图片显示出来
- ACCESS --第一章
- IIS7.0配置网站时,提示“ISAPI 和 CGI 限制”
- Visual Studio 2015完全离线安装
- linux中deb怎样安装
- Android Source Code
- External file changes sync may be slow: Project files cannot be watched (are they under network mount?)
- Powershell 条件操作符
- DoNet开源项目-基于Amaze UI的点餐系统
- iOS开发——单例模式
- Dynamics CRM 2015Online Update1 new feature之 插件跟踪日志
- Zabbix4.0.3解决中文乱码
- 牛客国庆集训派对Day4 J-寻找复读机
- ELK学习笔记之Logstash和Filebeat解析对java异常堆栈下多行日志配置支持
- MySQL性能优化之char、varchar、text的区别
- MyEclipse web jsp 如何调试
- JavaScript 操作对象属性(设置属性, setter/getter, 序列化)
- 【2018.06.26NOIP模拟】T2号码bachelor 【数位DP】*
- angular先加载页面再执行事件,使用echarts渲染页面
- POJ3666 Making the Grade