比赛 20151026 评测结果 AAAAAAAAAA
题目名称 摩托车游戏 最终得分 100
用户昵称 Satoshi 运行时间 0.013 s
代码语言 C++ 内存使用 0.37 MiB
提交时间 2015-10-26 21:56:31
显示代码纯文本
  1. #include <fstream>
  2. #include <algorithm>
  3. #include <iomanip>
  4. using namespace std;
  5. ifstream in("carz.in");
  6. ofstream out("carz.out");
  7. int S;
  8. double T;
  9. double f[4001]={0};
  10. double V[4001]={0};
  11. double ans=0;
  12. double INF=9999999;
  13. void read()
  14. {
  15. int i,j;
  16. in>>S>>T;
  17. S/=10;
  18. T/=60;
  19. for(i=0;i<=4000;i++)f[i]=INF;
  20. }
  21. void print(double a)
  22. {
  23. out<<setprecision(2)<<std::fixed<<a;
  24. }
  25. void work()
  26. {
  27. int i,j;
  28. f[0]=0;
  29. f[1]=0.1;
  30. for(i=5;i<=4000;i++)V[i]=7;
  31. V[0]=V[1]=10;
  32. V[2]=9;
  33. V[3]=8;
  34. V[4]=7.5;
  35. for(i=2;i<=S;i++)
  36. {
  37. for(j=0;j<i;j++)
  38. {
  39. if(j!=0)f[i]=min(f[i],f[j]+((i-j)/V[i-j])+T);
  40. else f[i]=min(f[i],f[j]+((i-j)/V[i-j]));
  41. }
  42. }
  43. //for(i=0;i<=S;i++)out<<f[i]<<endl;
  44. }
  45. int main()
  46. {
  47. read();
  48. work();
  49. print(f[S]);
  50. return 0;
  51. }