2059龟兔赛跑
来源:互联网 发布:python .如何使用 编辑:程序博客网 时间:2024/05/29 04:46
说这个是动态规划的经典题目,真是好难啊。想不通,还是参考了好多人的,哎,以后还要好好练练。
import java.util.Scanner;//找出乌龟每一次的最短时间 比每个都遍历一遍强很多public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);while(scanner.hasNext()){int l,n,c,t,vr,vt1,vt2,w=1;//vt1乌龟开电动车的速度,vt2乌龟脚蹬电动车的速度double rr=0.0;double tt=0.0;l=scanner.nextInt();n=scanner.nextInt();c=scanner.nextInt();t=scanner.nextInt();vr=scanner.nextInt();vt1=scanner.nextInt();vt2=scanner.nextInt();int ns[]=new int[n+2];double cs[]=new double[n+2];//装到充电点的时间,最短的包括起点,终点rr=l*1.0/vr;for(int i=1;ins[i]=scanner.nextInt();}ns[n+1]=l;//存储终点的距离for(int i=1;ics[i]=0xFFFFF;for(int j=0;jif(ns[i]-ns[j]>c){tt=c*1.0/ vt1+(ns[i]-ns[j]-c)*1.0/ vt2;}else{tt=(ns[i]-ns[j])*1.0/ vt1;}if(j>0){//从一个点到另一个点 表示充电出发了tt+=t;}tt+=cs[j];//cs是从起点到此充电点的总时间,之前点的最短时间已经记录了。cs[i]= cs[i] > tt ? tt : cs[i];//tt表示当前这种选择达到此充电点的时间}}//if(cs[n+1]System.out.println("What a pity rabbit!");}else{System.out.println("Good job,rabbit!");} }}}我有个坑了很久是因为int转doubleint a=3,b=5,c=9;double w=0.0;w=(a+b)/c*1.0; //0.0System.out.println(w);w=(a+b)*1.0/c; //0.88888888System.out.println(w);
1.0的位置会影响结果的。
0 0
- 2059龟兔赛跑
- 2059 龟兔赛跑
- 2059龟兔赛跑
- hdu 2059 龟兔赛跑
- HDU 2059 - 龟兔赛跑
- HDOJ--2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- HDU 2059 龟兔赛跑
- HDU 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- HDU 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- HDU 2059 龟兔赛跑
- hdu 2059 龟兔赛跑
- 2052picture
- iOS Swift _Nullable 与 Android 注解帮助编译时检查 - 两家好像步调开始一致一段时间了
- 2049不容易系列之(4)——考新郎
- stm32的两种固件下载模式:JTAG和SWD
- 2057A + B Again
- 2059龟兔赛跑
- 2060Snooker斯诺克
- java里面byte数组和String字符串怎么转换
- Maven executable 参数写法(Unrecognized option: -cp)
- 通信协议之序列化
- bzoj 1185: [HNOI2007]最小矩形覆盖 (旋转卡壳)
- 2017年1月4日晚间重要资讯 无人驾驶成最大亮点
- 操作Cassandra(4)-Bloom过滤器
- 8 Tactics to Combat Imbalanced Classes in Your Machine Learning Dataset