码迷,mamicode.com
首页 > 其他好文 > 详细

平衡森林

时间:2016-08-22 19:46:00      阅读:217      评论:0      收藏:0      [点我收藏+]

标签:

T1 鬼子进村

【题目描述】

县城里有n个用地道相连的房子,第i个只与第i-1和第i+1个相连。有m个消息依次传来:

(1)消息为:D x,鬼子将x号房子摧毁了,地道被堵上;

(2)消息为:R,村民们将鬼子上一个摧毁的房子修复了;

(3)消息为:Q x,有一名士兵被围堵在x号房子中;

现在询问每一个被围堵的士兵能够到达的房子有几个。

【输入描述】

第一行2个整数n、m(n,m <= 50000);

接下来m行,有如题所述的三种信息共m条。

【输出描述】

对于每一个被围堵的士兵,输出该士兵能够到达的房子数。

【输入样例】

7 9

D 3

D 6

D 5

Q 4

Q 5

R

Q 4

R

Q 4

【输出样例】

1

0

2

4

T2 可怜的狗狗

【题目描述】

小卡家有n只狗,每一只狗都有一个不同的漂亮值。漂亮值越低越漂亮,吃饭时,狗狗们会按顺序站成一排等着主人给食物。

可小卡不肯喂这么多狗,于是他每次就只给第i只到第j只狗中第k漂亮的狗狗喂食。而且为了保证某一只狗狗不会被喂太多次,他喂的每个区间(i,j)不互相包含。

【输入描述】

第一行输入两个数n、m(n <= 300000,m <= 50000),m表示他喂了m次;

第二行n个整数,表示第i只狗的漂亮值为ai;

接下来m行,每行3个整数i、j、k表示这次喂食喂第i到第j只狗中第k漂亮的狗的漂亮值。

【输出描述】

输出m行,每行一个整数,表示每一次喂的那只狗漂亮值为多少。

【输入样例】

7 2

1 5 2 6 3 7 4

1 5 3

2 7 1

【输出样例】

3

2

T3 送花

【题目描述】

小明一开始有一个空的花束,每朵花有一个美丽值W,价格为C,他不断地向里面添加花。他有以下几种操作:

1 W C:添加一朵美丽值为W,价格为C的花;

3:删除最便宜的一朵花;

2:删除最贵的一朵花;

-1:完成添加与删除,开始包装花束;

若删除操作时没有花,则跳过删除操作。

如果加入的花朵价格已经与花束中已有花朵价格重复,则这一朵花不能加入花束。

请你帮小明写一个程序,计算出开始包装花束时,花束中所有花的美丽值的总和,以及小明需要为花束付出的总价格。

【输入描述】

输入若干行,每行一个操作,以-1结束。

【输出描述】

输出一行,两个空格隔开的正整数,表示开始包装花束时,花束中所有花的美丽值的总和,以及小明需要为花束付出的总价格。

【输入样例】

1 1 1

1 2 5

2

1 3 3

3

1 5 2

-1

【输出样例】

8 5

【数据范围及提示】

对于全部数据,操作数 <= 100000,1 <= W,C <= 1000000。

平衡森林

标签:

原文地址:http://www.cnblogs.com/Ackermann/p/5796569.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!