PKU1003 Hangover(水题)
来源:互联网 发布:医院药房软件系统 编辑:程序博客网 时间:2024/06/08 09:59
PKU1003 Hangover(水题)
链接:http://poj.org/problem?id=1003
题目
Time Limit: 1000ms Memory Limit: 10000KB
How far can you make a stack of cards overhang a table? If you have one card, you can create a maximum overhang of half a card length. (We’re assuming that the cards must be perpendicular to the table.) With two cards you can make the top card overhang the bottom one by half a card length, and the bottom one overhang the table by a third of a card length, for a total maximum overhang of 1/2 + 1/3 = 5/6 card lengths. In general you can make n cards overhang by 1/2 + 1/3 + 1/4 + … + 1/(n + 1) card lengths, where the top card overhangs the second by 1/2, the second overhangs tha third by 1/3, the third overhangs the fourth by 1/4, etc., and the bottom card overhangs the table by 1/(n + 1). This is illustrated in the figure below.
Input
The input consists of one or more test cases, followed by a line containing the number 0.00 that signals the end of the input. Each test case is a single line containing a positive floating-point number c whose value is at least 0.01 and at most 5.20; c will contain exactly three digits.
Output
For each test case, output the minimum number of cards necessary to achieve an overhang of at least c card lengths. Use the exact output format shown in the examples.
Sample Input
1.00
3.71
0.04
5.19
0.00
Sample Output
3 card(s)
61 card(s)
1 card(s)
273 card(s)
题意
水题,层叠放置板子,从上到下每次超出边缘的面积是总面积的1/i。问超出的总面积不超过c的情况下最多能放多少板子
分析
水题直接上代码
源码
#include<cstdio>#include<cstring>#include<iostream>#include<queue>#include<vector>#include<algorithm>#include<string>#include<cmath>#include<set>#include<map>#include<vector>#include<stack>#include<utility>#include<sstream>#define mem0(x) memset(x,0,sizeof x)#define mem1(x) memset(x,1,sizeof x)#define mem11(x) memset(x,-1,sizeof x)using namespace std;typedef long long ll;typedef unsigned long long ull;const int INF = 0x7fffffff;const int MAXN = 1e6+10;const int MOD = 1000000007;int main(){ /*#ifdef LOCAL freopen("C:\\Users\\JuneLynn Bian\\Desktop\\in.txt","r",stdin); freopen(" C:\\Users\\JuneLynn Bian\\Desktop\\out.txt","w",stdout); #endif // LOCAL*/ double c; while(cin>>c && c){ double s = 0.0; for(int i = 2; ; i++){ s += 1.0/(double)i; if(s > c){ cout << i-1 << " card(s)" << endl; break; } } } return 0;}
- PKU1003 Hangover(水题)
- PKU1003
- POJ1003-Hangover(水题)
- POJ 1003 Hangover (水题)
- HDOJ 1056 HangOver(水题)
- Hangover(水题)
- Pku oj 1003 Hangover(水题)
- hdu 1056 HangOver 水题
- Hangover - POJ 1003 水题
- [1003]Hangover(水题)
- poj 1003 hangover 水题
- POJ 1003 Hangover 水题
- HDU1056 HangOver 水题
- (POJ 1003)Hangover
- poj 1003(Hangover)
- poj1003(Hangover)
- Hangover
- Hangover
- Linux kernel -- 内核对象kobject
- BZOJ3714 [PA2014]Kuglarz
- 二维背包问题 + 代码模板
- 安卓全屏设置
- MyEclipse集成Gradle
- PKU1003 Hangover(水题)
- 蓝桥杯——生物芯片
- 大整数加减法
- java中的SPI机制
- C++中图的简单表示法
- 块元素设置inline属性不能设置宽高的解决办法
- 为整个window添加背景遮罩
- Android MarginLeft与MarginStart的区别
- matlab和C混合编程实现脉冲压缩