POJ-1003 Hangover-纸牌叠放
2015-08-07 19:07
459 查看
Hangover
Description
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
Sample Output
Source
Mid-Central USA 2001
Time Limit: 1000MS | Memory Limit: 10000K | |
Total Submissions: 109788 | Accepted: 53577 |
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)
Source
Mid-Central USA 2001
#include <iostream> using namespace std; int main() { int i; double length,sum; while(1) { cin >> length; sum = 0; if(length == 0.00) break; for(i = 1; i < 300; i++) { sum += 1.0/(i+1); if(sum >= length) { cout << i << " card(s)\n"; break; } } } return 0; }
相关文章推荐
- Got an error reading communication packets
- Goto语句还是被认为是有害的吗?
- Codeforces Round #313 (Div. 2) Gerald's Hexagon
- com.google.gson.internal.StringMap cannot be cast to
- EGOImageLoader图片加载
- Google翻译是如何把深度学习“塞进”手机的?
- HDU 1533 Going Home 最小费用最大流
- HDU 3683 Gomoku 模拟 胜局判断
- uva 11292 Dragon of Loowater
- goroutine背后的系统知识
- GOROUTINE性能测试
- Good blog link
- Golang适合高并发场景的原因分析
- django开发bug记录
- django常见小问题
- django 学习笔记( 一)
- django学习笔记- 模板篇
- 田忌赛马
- Django的MEDIA_ROOT和STATIC_ROOT
- 某场CF B Octagons(模拟)