XTU 1159 soldier

来源:互联网 发布:北海市网络预约车 编辑:程序博客网 时间:2024/06/05 02:19

题目描述

队伍长度为L米,并匀速前进。传令兵以匀速,先从队尾跑到队头,再从队头跑回队尾,期间队伍行进了S米。请问传令兵一共跑了多少米? 

输入
有多个样例。每行输入两个整数L(1 ≤ L ≤ 10,000),S(1≤S≤10,000)。如果L和S都为0则表示输入结束,这个样例不需要处理。 
输出
每行输出一个样例的结果,保留2位小数。 
样例输入
300 400
100 100
0 0
样例输出
800.00

241.42

解题思路

列方程求解即可。

根据传令兵与队伍运动时间相等可列出方程。

AC代码:

#include<bits/stdc++.h>using namespace std;int main(){double l,s;double result;while(scanf("%lf%lf",&l,&s)&&(l+s)){result = l+sqrt(l*l+s*s);printf("%.2lf\n",result);}return 0;}