P3819 松江1843路

题目描述

涞坊路是一条长L米的道路,道路上的坐标范围从0到L,路上有N座房子,第i座房子建在坐标为x[i]的地方,其中住了r[i]人。

松江1843路公交车要在这条路上建一个公交站,市政府希望让最多的人得到方便,因此希望所有的每一个的居民,从家到车站的距离的总和最短。

公交站应该建在哪里呢?

输入输出格式

输入格式:

第一行输入L、N。

接下来N行,每行两个整数x[i]和r[i]。

输出格式:

一个整数,最小的每个人从家到车站的距离的总和。

输入输出样例

输入样例#1:

100 3
20 3
50 2
70 1

输出样例#1:

110

输入样例#2:

100 2
0 1
100 10

输出样例#2:

100

输入样例#3:

10000000000 5
3282894320 391
4394338332 929
6932893249 181
7823822843 440
9322388365 623

输出样例#3:

5473201404068

说明

样例解释1

当建在坐标40的时候,所有人距离车站的距离总和为 |20−40|×3+|50−40|×2+|70−40|×1=110。

数据范围和约定

对于10%的数据,1≤N≤50,R[i]=1。

对于30%的数据,1≤N≤100,R[i]≤10,1≤L≤1000。

对于70%的数据,1≤N≤1000,R[i]≤100,1≤L≤10^6。

对于全部数据,1≤L≤10^10,1≤N≤10^5,0≤x[i]≤L,1≤r[i]≤1000

首先我们知道车站一定会建在所有人的中间,这样距离才可能最小,

这道题先把人数加起来,然后求中位数,相当于把n个人拆成n个点然后求中位数

 1 #include<cstdio>
 2 #include<algorithm>
 3 #include<cstdlib>
 4 #include<cmath>
 5 #define LL long long
 6 using namespace std;
 7
 8 struct node{
 9     LL pos,num;
10     bool operator < (const node &a) const
11     {
12         return pos < a.pos;
13     }
14 }t[100100];
15 LL l,n,sum,ans,s,p;
16
17 int main()
18 {
19     scanf("%lld%lld",&l,&n);
20     for (LL i=1; i<=n; ++i)
21     {
22         scanf("%lld%lld",&t[i].pos,&t[i].num);
23         sum += t[i].num;
24     }
25     sort(t+1,t+n+1);
26     sum = (sum+1)/2;
27     for (LL i=1; i<=n; ++i)
28     {
29         s += t[i].num;
30         if (s>=sum)
31         {
32             p = t[i].pos;
33             break;
34         }
35     }
36     for (LL i=1; i<=n; ++i)
37         ans += abs(t[i].pos-p)*t[i].num;
38     printf("%lld",ans);
39     return 0;
40 }

转载于:https://www.cnblogs.com/mjtcn/p/7107055.html

P3819 松江1843路(洛谷月赛)相关推荐

  1. P3819 松江1843路

    luogu 传送门 介绍一下我的做法: 对房子按照坐标排序,对每一个房子,记一下前缀和后缀和(前面/后面房子中的人到当前房子的路程和), 最后扫一遍取前缀和和后缀和的和的min就可以了. 但是好像跟样 ...

  2. 图论——最长路(洛谷 P1807)

    题目选自洛谷P1807 对于一个有向无环图,可以采取广搜将结点依次搜索,记录当前结点的最长路并在循环过程中不断更新. 题目描述 设 G 为有 n 个顶点的带权有向无环图,G 中各顶点的编号为 1 到  ...

  3. 洛谷月赛T2 P6858[深海少女与胖头鱼]题解

    目录 题面 前置知识 数学期望 快速幂 逆元 题解 分析 AC Code 题面 洛谷十月月赛II T2 深海少女与胖头鱼 总共有 nnn 条带 「圣盾」的「胖头鱼」和 mmm 条不带圣盾的胖头鱼,每次 ...

  4. 【洛谷月赛】洛谷三月月赛题解报告

    昨天就是洛谷三月月赛,小编考的并不好,才31分,隔壁大佬50分,于是小编决定改一改题,先看第一题: P5238 整数校验器 题目描述 有些时候需要解决这样一类问题:判断一个数 x 是否合法. x 合法 ...

  5. [洛谷月赛]终于结束的起点

    题目背景 终于结束的起点 终于写下句点 终于我们告别 终于我们又回到原点 -- 一个个 Oler 的竞赛生涯总是从一场 NOIp 开始,大多也在一场 NOIp 中结束,好似一次次轮回在不断上演. 如果 ...

  6. 【洛谷月赛】洛谷11月月赛·Day1

    洛谷2614 计算器弹琴 本题地址: http://www.luogu.org/problem/show?pid=2614 题目描述 总所周知,计算器可以拿来干很多它本不应该干的事情,比如写作文.(参 ...

  7. 洛谷月赛:最后的狂欢 汽车拉力比赛

    本题地址: http://www.luogu.org/problem/show?pid=2658 题目描述 博艾市将要举行一场汽车拉力比赛. 赛场凹凸不平,所以被描述为M*N的网格来表示海拔高度(1≤ ...

  8. 图论--最长路--洛谷P1807 最长路_NOI导刊2010提高(07)

    题目描述 设G为有n个顶点的有向无环图,G中各顶点的编号为1到n,且当为G中的一条边时有i < j.设w(i,j)为边的长度,请设计算法,计算图G中<1,n>间的最长路径. 输入格式 ...

  9. 洛谷月赛 P3406 海底高铁

    P3406 海底高铁 题目提供者kkksc03 标签 云端评测 难度 普及/提高- 题目背景 大东亚海底隧道连接着厦门.新北.博艾.那霸.鹿儿岛等城市,横穿东海,耗资1000亿博艾元,历时15年,于公 ...

最新文章

  1. Neutron — Hierarchical Port Binding(层次化端口绑定)
  2. VMWare安装Ubuntu18时卡住
  3. 安装VM及在VM下安装Ghost XP系统图文教程,附PQ分区及VM共享教程 z
  4. 计算机组成原理形考任务五答案,计算机组成原理形考任务5
  5. --4、实验室设备管理(表)
  6. python如何导入多个文件_在python中导入多个文件
  7. python 图灵 微信_Python使用微信接入图灵机器人
  8. react hook的setState后,不会重新render页面
  9. CRM系统之数据库设计
  10. 判断某个字符串是否为数字
  11. 用R语言对网络数据进行统计分析(四)
  12. 证明 可逆矩阵A的各列线性无关
  13. 企业利用进销存软件可优化库存管理
  14. SU几种偏移测试 转自[蠢树]
  15. webview性能优化—webview预创建
  16. Ubuntu运行多个命令
  17. 大年初一领红包,恭喜发财,大吉大利
  18. 车辆跟踪 matlab,汽车路径跟踪matlab程序
  19. php顺序结构例题,php顺序结构就象一条直线,按照语句出现的先后顺序依次执行...
  20. vue flv播放器报错Cannot read property ‘addEventListener‘ of null

热门文章

  1. 怎么能让宝贝快点入睡?
  2. 吃冻梨对人会有什么好处?
  3. 现在自驾旅游吃住有没有问题?
  4. 【小姨子】 基本信息(拼音,读音等)
  5. 踩了无数个坑,才写出稿费1000的文章
  6. 人工智能及其体系结构_一些复制体系结构错误及其解决方案
  7. sql always on_Always On可用性组中具有发布者数据库SQL复制
  8. SQL Server事务日志采访问题
  9. 如何使用SQL Server Reporting Services创建图像分类系统
  10. [转]impala操作hive数据实例