问题标题: 酷町堂:1030 景区观光

0
0
已解决
武建豪
武建豪
中级天翼
中级天翼

1030   景区观光

经验值:1200 时间限制:1000毫秒

题目描述 Description

一旅行团结束一天的观光,准备集合所有成员。有一观光车从景区门口出发,从不同的景点接人至门口集合。景点数量及景点所在人数由输入决定,求出所有人下车到达门口所用的时间。
设以景区门口为坐标原点,观光车每次从门口出发,接到人之后立即返程,将人送回门口。坐标系中的点代表不同的景点位置及所在的人数。观光车每次从门口出发,以5米/秒的速度驶向下一个景点,到达景点后,游客坐上车,每人上车花费10秒,车再原路返回,以同样的速度驶向门口,到达后游客以5秒每人的速度下车。假设原点与任意一个景点的连线不穿过其它景点。

输入描述 Input Description

输入n+1行,
第一行,一个整数,表示景点数n。(0 < n <= 10)
接下来依次有n 行输入,每一行上包含一个坐标点(x,y), x和y两个表示景点相对于景区门口的平面坐标位置的实数(单位是米), 和一个表示人数的整数,数之间以一个空格隔开。
如300 400 5

输出描述 Output Description

输出一行,表示游客集合需要的总时间,精确到秒 (向上取整,如3.1s则为4s)。

样例输入 Sample Input

1 300 400 5

样例输出 Sample Output

275

数据范围及提示 Data Size & Hint

(x,y)坐标点离原点的距离为sqrt(x*x+y*y)

武建豪在2021-09-13 20:39:57追加了内容

@吕梓瑜 

#include<iostream>
#include<fstream>
#include<algorithm>
#include<cmath>
#include<cstdio>
#include<cstring>
#include<string>
#include<iomanip>
#include<cstdlib>
#include<vector>
using namespace std;
double x,y,sum,rs,k;
int n;
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>x>>y>>rs;
        k=sqrt(x*x+y*y)/5+rs*10+sqrt(x*x+y*y)/5+rs*5;
        k+=sum;
    }
    printf("%d",int(sum+0.9));
    return 0;
}

武建豪在2021-09-13 20:50:01追加了内容

ding


0
已采纳
吕梓瑜
吕梓瑜
初级天翼
初级天翼
#include<iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main()
{
    小数型变量 x,y,sum赋值为0,rs,k赋值为0;
    整型变量 n;
    输入n;
    循环(从1到n){
        输入x和y和rs;
        k=根号(x*x+y*y)除以5加rs乘10加根号(x*x+y*y)除5加rs乘5;
        把k加到sum里面
    }
    printf("%d",int(sum+0.9));
    return 0;
}

 

我要回答