传送

很多人质疑它是二分,但其实它就是二分(我会说我不会解方程吗)

据说有很多人没看懂题干在说些什么,那就不要管题干了。拿样例算一遍,我们看看样例的答案是怎么算出来的。

这是样例。看到这个数,我们很懵逼。众所周知,坐车比走路快。那么让谁先坐车,坐到哪,就是个问题。因为甲,乙两人要同时到终点,所以肯定不能坐车坐到终点。那么不妨假设让一个人坐车坐到一半(既然是假设,就随便蒙就好了),设这个过程为<1>,然后车再回去接第二个人,设这个过程为<2>,再追赶第一个人,这个过程为<3>。

设第一个人所处的位置为a1,第二个人所处的位置为a2。那么<1>是一个很一般的计算,a1=(s+a2)/2,   所用时间t=(a2-a1)/b,   ans先加上t,记得用double类型。<2>是相遇问题,此时t=(a1-a2)/(b+a)(人也在走路),ans加上t  ,a2+=a*t<3>是追击问题,t=(a1-a2)/(b-a) ,ans+=t,a2=a1(此时第二个人追上第一个人)。之后第一个人再坐车走。这就构成了循环。既然题目给出了精度为小数点后6位,那就循环直到 s-a1<0.000001,这样这个题就做完了,虽然代码会比解方程要长,但是思路好想。废话不多说,上代码

#include<iostream>
#include<cstdio>
using namespace std;
double s,a,b;
double t,ans;
double a1,a2;
void xc()
{
a2=(s+a1)/;
t=1.0*(a2-a1)/b;
a1+=1.0*a*t;ans+=t;
t=1.0*(a2-a1)/(b+a);
a2+=1.0*a*t;a1+=1.0*a*t;ans+=t;
t=1.0*(a2-a1)/(b-a);a2+=1.0*a*t;a1=a2;ans+=t;
//莫名其妙的把代码打成了三角...
}
int main()
{
cin>>s>>a>>b;
while(s-a1>0.000001)
{
xc(); }
ans=ans+(s-a1)/a*1.0;
printf("%.6lf",ans);
}

P1258小车问题的更多相关文章

  1. P1258 小车问题

    P1258 小车问题 蒟蒻精神自强不息蒟蒻精神永不言败加油加油ヾ(◍°∇°◍)ノ゙yeah yeah yeah 据说这是道小学奥数题抱歉蒟蒻的我没学过奥数,算了大概三大张演草纸,不得不说这题对于蒟蒻本 ...

  2. 洛谷——P1258 小车问题

    P1258 小车问题 题目描述 甲.乙两人同时从A地出发要尽快同时赶到B地.出发时A地有一辆小车,可是这辆小车除了驾驶员外只能带一人.已知甲.乙两人的步行速度一样,且小于车的速度.问:怎样利用小车才能 ...

  3. 洛谷P1258 小车问题(题解)

    https://www.luogu.org/problemnew/show/P1258(题目传送) 看题的第一眼就把题归为二分题,一直向着二分的方向走,却忽略了数学的推理.推理一番后(看了题解),发现 ...

  4. 洛谷P1258 小车问题

    题目描述 甲.乙两人同时从A地出发要尽快同时赶到B地.出发时A地有一辆小车,可是这辆小车除了驾驶员外只能带一人.已知甲.乙两人的步行速度一样,且小于车的速度.问:怎样利用小车才能使两人尽快同时到达. ...

  5. 洛谷 P1258 小车问题

    题目传送门 解题思路: 首先,每个人都要做一次车,而且两个人要同时到达,这样才能使总时间最短. 那么,我们设起点为A,终点为B,小车先带甲开到C点后甲下车走到B点,同时小车掉头与已经走到D点的乙相向而 ...

  6. 【洛谷p1258】小车问题

    (……吓人,心有余悸) 小车问题[传送门] 洛谷算法标签:: (行吧它居然是个二分[解方程的我抖抖发瑟]) 作为一个写了一页演草纸才解出来的方程,显然我要好好写一写(希望不会半途而废) 思路: 先把其 ...

  7. 基于pcDuino-V2的无线视频智能小车

    这段时间抽空做了个智能视频小车.包含了pid电机控制.socket网络编程.多线程编程.epoll机制.gtk图形界面编程. 这是界面: 小车的底层是用的stm32f405系列的单片机+电机驱动做的一 ...

  8. Java基础-继承-编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight。小车类Car是Vehicle的子类,其中包含的属性有载人数 loader。卡车类Truck是Car类的子类,其中包含的属性有载重量payload。每个 类都有构造方法和输出相关数据的方法。最后,写一个测试类来测试这些类的功 能。

    #29.编写一个Java应用程序,设计一个汽车类Vehicle,包含的属性有车轮个数 wheels和车重weight.小车类Car是Vehicle的子类,其中包含的属性有载人数 loader.卡车类T ...

  9. 两轮自平衡小车双闭环PID控制设计

                                                                                            两轮自平衡小车的研究意义 ...

随机推荐

  1. ATM-java

    通过学习JAVA,我的进步不是很多,了解了不多的编程知识,但是我一直在进步,我发现我有很大的进步空间,每天都有一点点的进步使我每天都很充实.还记得我编写的第一个 经典程序“hello Word”.从那 ...

  2. python django day 5 database 1

    from django.db import models class Blog(models.Model): name = models.CharField(max_length=) tagline ...

  3. queue 的基本用法

    queue 1.back() 返回一个引用,指向最后一个元素2.empty() 如果队列空则返回真3.front() 返回第一个元素4.pop() 删除第一个元素5.push() 在末尾加入一个元素6 ...

  4. ios-邮箱正则表达式判断

    - (void)loadData { NSMutableArray *array = [NSMutableArray arrayWithCapacity:10]; if ([self.title is ...

  5. 使用InternalsVisibleToAttribute给assembly添加“友元assembly”特性遭遇"强签名"

    一.如何让Intenal成员暴露给另一个程序集 我们知道Modifier为Internal的类型成员仅限于当前程序集能够访问,但是在某些情况下,我们希望将它们暴露给另一个程序集.比较典型的应用场景包括 ...

  6. linux下常见软件安装

    读者还可以参考文档:https://download.csdn.net/download/qq_27799563/10482900 Mysql的安装过程: 解压MySQL安装包: tar -xvf M ...

  7. [转]C# FTP操作类

      转自 http://www.cnblogs.com/Liyuting/p/7084718.html using System; using System.Collections.Generic; ...

  8. 混合pyqt和qtcreator

    目的:测试能否用qtcreator编辑ui资源,而用python编写代码逻辑 import sysfrom PyQt4 import QtGui, uic class MyWindow(QtGui.Q ...

  9. redis String结构

    1. 设置c的过期时间为100s 2. psetex的单位为毫秒 10000毫秒 3. getrange 获得字符的范围 4. getset 先获得旧的值,然后设置新的值 5. 设置多个值 6. 获得 ...

  10. 自然语言处理之:搭建基于HanLP的开发环境(转)

    环境搭建比FNLP的简单,具体参考:https://github.com/hankcs/HanLP 各个版本的下载:https://github.com/hankcs/HanLP/releases 完 ...