HDU 5037 Frog(模拟跳石头的过程)

来源:互联网 发布:淘宝图片大小分辨率 编辑:程序博客网 时间:2024/06/15 13:53

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5037


题意:青蛙跳石头,上帝放最少石头数情况下,青蛙跳最少的步数。


AC代码:

#include<iostream>#include<cstdio>#include<algorithm>using namespace std;int st[200005];int main(){int T,n,m,l,t=1,i,ans,now,s,g;scanf("%d",&T);while(T--){scanf("%d%d%d",&n,&m,&l);for(i=1;i<=n;i++)scanf("%d",&st[i]);printf("Case #%d: ",t++);st[++n]=m;ans=0;now=l;sort(st+1,st+n+1);for(i=1;i<=n;i++){s=(st[i]-st[i-1])%(l+1);g=(st[i]-st[i-1])/(l+1);if(now+s>l){now=s;ans+=g*2+1;}else{now+=s;ans+=g*2;}}printf("%d\n",ans);}return 0;}


0 0