300610: CF117A. Elevator

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Elevator

题意翻译

**题意简述** 一栋楼共 $m$ 层,当中有一个神奇的电梯,它不受人控制,只会在所有楼层之间来回移动(即从 $1$ 楼一直向上到 $m$ 楼之后又从 $m$ 楼一直向下到 $1$ 楼,反复地无休止地运动),每移动一层需要 $1$ 单位时间。 现有 $n$ 个人,第 $i$ 个人在 $t_i$ 时到达电梯门口,要从 $s_i$ 楼到 $t_i$ 楼。求每个人到达应到楼层的最小时间。 **输入格式** 第一行包含两个整数 $n,m$($1\le n\le 10^5,2\le m\le 10^8$),意义如上所示。 接下来 $n$ 行,每行包含三个整数 $s_i,f_i,t_i$($1\le s_i,f_i\le m,0\le t_i\le 10^8$),意义同题意简述。 **输出格式** 输出共 $n$ 行,第 $i$ 行包含一个整数,表示第 $i$ 个人到达指定楼层的最短时间。

题目描述

And now the numerous qualifying tournaments for one of the most prestigious Russian contests Russian Codec Cup are over. All $ n $ participants who have made it to the finals found themselves in a huge $ m $ -floored $ 10^{8} $ -star hotel. Of course the first thought to come in a place like this is "How about checking out the elevator?". The hotel's elevator moves between floors according to one never changing scheme. Initially (at the moment of time $ 0 $ ) the elevator is located on the $ 1 $ -st floor, then it moves to the $ 2 $ -nd floor, then — to the $ 3 $ -rd floor and so on until it reaches the $ m $ -th floor. After that the elevator moves to floor $ m-1 $ , then to floor $ m-2 $ , and so on until it reaches the first floor. This process is repeated infinitely. We know that the elevator has infinite capacity; we also know that on every floor people get on the elevator immediately. Moving between the floors takes a unit of time. For each of the $ n $ participant you are given $ s_{i} $ , which represents the floor where the $ i $ -th participant starts, $ f_{i} $ , which represents the floor the $ i $ -th participant wants to reach, and $ t_{i} $ , which represents the time when the $ i $ -th participant starts on the floor $ s_{i} $ . For each participant print the minimum time of his/her arrival to the floor $ f_{i} $ . If the elevator stops on the floor $ s_{i} $ at the time $ t_{i} $ , then the $ i $ -th participant can enter the elevator immediately. If the participant starts on the floor $ s_{i} $ and that's the floor he wanted to reach initially ( $ s_{i}=f_{i} $ ), then the time of arrival to the floor $ f_{i} $ for this participant is considered equal to $ t_{i} $ .

输入输出格式

输入格式


The first line contains two space-separated integers $ n $ and $ m $ ( $ 1<=n<=10^{5},2<=m<=10^{8} $ ). Next $ n $ lines contain information about the participants in the form of three space-separated integers $ s_{i} $ $ f_{i} $ $ t_{i} $ ( $ 1<=s_{i},f_{i}<=m,0<=t_{i}<=10^{8} $ ), described in the problem statement.

输出格式


Print $ n $ lines each containing one integer — the time of the arrival for each participant to the required floor.

输入输出样例

输入样例 #1

7 4
2 4 3
1 2 0
2 2 0
1 2 1
4 3 5
1 2 2
4 2 0

输出样例 #1

9
1
0
7
10
7
5

输入样例 #2

5 5
1 5 4
1 3 1
1 3 4
3 1 5
4 2 5

输出样例 #2

12
10
10
8
7

说明

Let's consider the first sample. The first participant starts at floor $ s=2 $ by the time equal to $ t=3 $ . To get to the floor $ f=4 $ , he has to wait until the time equals $ 7 $ , that's the time when the elevator will go upwards for the second time. Then the first participant should get on the elevator and go two floors up. In this case the first participant gets to the floor $ f $ at time equal to $ 9 $ . The second participant starts at the time $ t=0 $ on the floor $ s=1 $ , enters the elevator immediately, and arrives to the floor $ f=2 $ . The third participant doesn't wait for the elevator, because he needs to arrive to the same floor where he starts.

Input

题意翻译

**题意简述** 一栋楼共 $m$ 层,当中有一个神奇的电梯,它不受人控制,只会在所有楼层之间来回移动(即从 $1$ 楼一直向上到 $m$ 楼之后又从 $m$ 楼一直向下到 $1$ 楼,反复地无休止地运动),每移动一层需要 $1$ 单位时间。 现有 $n$ 个人,第 $i$ 个人在 $t_i$ 时到达电梯门口,要从 $s_i$ 楼到 $t_i$ 楼。求每个人到达应到楼层的最小时间。 **输入格式** 第一行包含两个整数 $n,m$($1\le n\le 10^5,2\le m\le 10^8$),意义如上所示。 接下来 $n$ 行,每行包含三个整数 $s_i,f_i,t_i$($1\le s_i,f_i\le m,0\le t_i\le 10^8$),意义同题意简述。 **输出格式** 输出共 $n$ 行,第 $i$ 行包含一个整数,表示第 $i$ 个人到达指定楼层的最短时间。

加入题单

算法标签: