蜗牛!快爬!解题报告
2013-07-11 10:49
141 查看
描述:
很久以前有一只蚂蚁,某天在路上走着走着,突然看见了一只蜗牛,爬的很慢。心想自己虽然比它小,可是跑得比它快,于是蚂蚁想跟蜗牛进行一次马拉松比赛,想证明它的实力。蚂蚁跟蜗牛商量后决定在星期六下午进行马拉松比赛。
The day is coming….比赛跑道为一条直线,Unlucky!!跑道上有很多坑。注意哦,坑!蜗牛想知道它掉下坑底后,爬上来需要多少时间,你的任务是帮忙蜗牛算出它掉入每个坑后,从坑底爬上来的时间,蜗牛每爬半个小时,就得休息半个小时,休息的时候,蜗牛会往下掉一定的深度。坑的深度,往上爬的高度以及休息时往下掉的深度给定。
输入:
输入第一行包含一个整数N(0<=N<=1000),表示跑道上坑的数量。
接下来N行,代表N个坑的测试数据,每组测试数据占一行,包含三个整数H、i、j(用一个空格分开),代表坑的深度、往上爬的高度、休息时往下掉的深度。(0<=H、i、j<2^16)
输出:
对于每一个坑,输出蜗牛爬上岸所需要的时间(采用进一法,单位:小时)。不能爬上来则输出“Never see sun!”
输入样例:
2
10 10 0
10 0 0
输出样例:
1
Never see sun!
解题思路:先把看不到太阳的情况讨论下,主要分析j<i<H的情况。实际上蜗牛每次往上爬的高度为i-j,只要判断最后一次H-(i-j)是否大于i即可。不大于的话时间自加,否则输出。
代码:
#include<iostream>
using namespace std;
main()
{
intN;
intH[1000],i[1000],j[1000];
cin>>N;
for(inta=0;a<N;a++)
{
cin>>H[a]>>i[a]>>j[a];
}
for(intb=0;b<N;b++)
{
if(i>=H[b])
cout<<1<<endl;
else
if(j[b]>=i[b])
cout<<"Never seesun!"<<endl;
else
{
intcount=1;
for(;H[b]-i[b]>0;)
{
H[b]=H[b]-i[b]+j[b];
count++;
}
cout<<count<<endl;
}
}
return0;
}
[b]解题感想:感觉这题挺简单的……
很久以前有一只蚂蚁,某天在路上走着走着,突然看见了一只蜗牛,爬的很慢。心想自己虽然比它小,可是跑得比它快,于是蚂蚁想跟蜗牛进行一次马拉松比赛,想证明它的实力。蚂蚁跟蜗牛商量后决定在星期六下午进行马拉松比赛。
The day is coming….比赛跑道为一条直线,Unlucky!!跑道上有很多坑。注意哦,坑!蜗牛想知道它掉下坑底后,爬上来需要多少时间,你的任务是帮忙蜗牛算出它掉入每个坑后,从坑底爬上来的时间,蜗牛每爬半个小时,就得休息半个小时,休息的时候,蜗牛会往下掉一定的深度。坑的深度,往上爬的高度以及休息时往下掉的深度给定。
输入:
输入第一行包含一个整数N(0<=N<=1000),表示跑道上坑的数量。
接下来N行,代表N个坑的测试数据,每组测试数据占一行,包含三个整数H、i、j(用一个空格分开),代表坑的深度、往上爬的高度、休息时往下掉的深度。(0<=H、i、j<2^16)
输出:
对于每一个坑,输出蜗牛爬上岸所需要的时间(采用进一法,单位:小时)。不能爬上来则输出“Never see sun!”
输入样例:
2
10 10 0
10 0 0
输出样例:
1
Never see sun!
解题思路:先把看不到太阳的情况讨论下,主要分析j<i<H的情况。实际上蜗牛每次往上爬的高度为i-j,只要判断最后一次H-(i-j)是否大于i即可。不大于的话时间自加,否则输出。
代码:
#include<iostream>
using namespace std;
main()
{
intN;
intH[1000],i[1000],j[1000];
cin>>N;
for(inta=0;a<N;a++)
{
cin>>H[a]>>i[a]>>j[a];
}
for(intb=0;b<N;b++)
{
if(i>=H[b])
cout<<1<<endl;
else
if(j[b]>=i[b])
cout<<"Never seesun!"<<endl;
else
{
intcount=1;
for(;H[b]-i[b]>0;)
{
H[b]=H[b]-i[b]+j[b];
count++;
}
cout<<count<<endl;
}
}
return0;
}
[b]解题感想:感觉这题挺简单的……
相关文章推荐
- 【解题报告】NYOJ471 好多的树 -- 容斥原理
- (解题报告)HDU2021---发工资咯:)
- LeetCode 22. Generate Parentheses 解题报告
- codevs 1766 装果子 二分 解题报告
- HDU 4371 Minimum palindrome 解题报告(找规律)
- hdu 1002.A + B Problem II 解题报告
- 20161022 NOIP模拟赛 解题报告
- UVa 12100 printer queue 解题报告
- poj2312解题报告
- Sicily 4190. Prime Palindromes 解题报告
- POJ 1002 487-3279 [解题报告] Java
- 20161025模拟赛解题报告
- 解题报告:Prime Distance On Tree 点分治 + FFT
- POJ-3278___抓奶牛——解题报告 BFS
- 悼念512汶川大地震遇难同胞——老人是真饿了(杭电OJ2187)解题报告
- USACO_Broken Necklace解题报告
- 【解题报告】选课
- [leetcode] 5. Longest Palindromic Substring 解题报告
- [Leetcode] 715. Range Module 解题报告
- 1054. The Dominant Color (20)解题报告