题目名称 1591. [USACO Feb14]登机
输入输出 boarding.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 10
题目来源 Gravatarcqw 于2014-04-13加入
开放分组 全部用户
提交状态
分类标签
USACO
分享题解
通过:5, 提交:25, 通过率:20%
Gravatarcstdio 100 1.272 s 43.04 MiB C++
Gravatardigital-T 100 1.323 s 43.02 MiB C++
GravatarGDFRWMY 100 1.373 s 73.56 MiB C++
Gravatar(ˇˍˇ) ~耶稣 100 1.741 s 38.45 MiB C++
Gravatarhzoi 100 1.864 s 26.92 MiB C++
Gravatarzgyzhaoguangyang 20 1.054 s 5.17 MiB Pascal
Gravatardigital-T 20 1.352 s 43.02 MiB C++
GravatarChenyao2333 20 1.493 s 30.47 MiB C++
GravatarOI永别 20 7.021 s 4.13 MiB C++
Gravatarzjmfrank2012 10 0.257 s 1.84 MiB C++
本题关联比赛
20140414
关于 登机 的近10条评论(全部评论)
同上
GravatarFF_Sky||幻
2014-04-14 19:55 3楼
求神犇讲解。。。。。。
Gravatar◆半城烟沙灬為你打天下
2014-04-14 17:18 2楼
啊 少写头文件了
GravatarGDFRWMY
2014-04-14 11:46 1楼

1591. [USACO Feb14]登机

★   输入文件:boarding.in   输出文件:boarding.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】


FJ的牛已经决定去度假,并奇迹般地找到一个航空公司愿意出售他们的票。然而,当他们到达机场开始登机,面临的是一个有趣的问题 。

飞机有N个座位,我们叫位置x = 1到x = N,在一个数轴上。所有的奶牛 (1 <= N <= 200,000)正在排队在等待进入他们的座位。刚开始,奶牛N是在位置x = 0,奶牛N-1是在位置x = -1,等等。牛i被分配到牛座s_i,这里s_1,……,s_n是排列1,……,N.

在每一个时间步,每头奶牛需要走一步找到正确的座位如果她能。当奶牛i一到她的座位s_i,她将停下来,把她的行李放在上面的行李架上,用时t_i秒,然后坐下来。对于那些t_i秒时间,在她后面(如果有)的牛会被阻止向前。如果有一队牛在她身后,都将被阻止向前。

所有的牛坐好需要多久?

所有奶牛的t_i将少于1000000000。


【输入格式】


第1行为N;

接下来有N行(2--N+1),两个整数s_i和t_i;



【输出格式】


输出只有一行,即需要的时间。



【样例输入】

3
2 5
3 10
1 5

【样例输出】

19

【提示】


输入输出解释:
最初,牛是位于这样:
牛 -> 123 123<- 座椅

  -2 -1 0 1 2 3
1 2 3      
座椅       1 2 3

牛1试图去坐2,2只想坐3,和牛3要座1。

一步后,他们都会向前走1步,牛3将达到她的座位1.
  -2 -1 0 1 2 3
  1 2 3    
座椅       1 2 3
牛3用时5秒放行李,然后坐到座位上.
  -2 -1 0 1 2 3
  1 2      
座椅       1 2 3

3秒后奶牛1和奶牛2达到自己想要的座位:

 
 
 
  -2 -1 0 1 2 3
        1 2
座椅       1 2 3

需要5秒的奶牛1坐下来,10秒奶牛2坐下来,总共需要10秒

这一共花了1 + 5 + 3 + 10 = 19秒。

 


【来源】

在此键入。