8VC Venture Cup 2017 - Final Round |
---|

Finished |

Virtual contest is a way to take part in past contest, as close as possible to participation on time. It is supported only ICPC mode for virtual contests.
If you've seen these problems, a virtual contest is not for you - solve these problems in the archive.
If you just want to solve some problem from a contest, a virtual contest is not for you - solve this problem in the archive.
Never use someone else's code, read the tutorials or communicate with other person during a virtual contest.

binary search

dp

*1600

No tag edit access

The problem statement has recently been changed. View the changes.

×
B. Travel Card

time limit per test

2 secondsmemory limit per test

256 megabytesinput

standard inputoutput

standard outputA new innovative ticketing systems for public transport is introduced in Bytesburg. Now there is a single travel card for all transport. To make a trip a passenger scan his card and then he is charged according to the fare.

The fare is constructed in the following manner. There are three types of tickets:

- a ticket for one trip costs 20 byteland rubles,
- a ticket for 90 minutes costs 50 byteland rubles,
- a ticket for one day (1440 minutes) costs 120 byteland rubles.

Note that a ticket for *x* minutes activated at time *t* can be used for trips started in time range from *t* to *t* + *x* - 1, inclusive. Assume that all trips take exactly one minute.

To simplify the choice for the passenger, the system automatically chooses the optimal tickets. After each trip starts, the system analyses all the previous trips and the current trip and chooses a set of tickets for these trips with a minimum total cost. Let the minimum total cost of tickets to cover all trips from the first to the current is *a*, and the total sum charged before is *b*. Then the system charges the passenger the sum *a* - *b*.

You have to write a program that, for given trips made by a passenger, calculates the sum the passenger is charged after each trip.

Input

The first line of input contains integer number *n* (1 ≤ *n* ≤ 10^{5}) — the number of trips made by passenger.

Each of the following *n* lines contains the time of trip *t*_{i} (0 ≤ *t*_{i} ≤ 10^{9}), measured in minutes from the time of starting the system. All *t*_{i} are different, given in ascending order, i. e. *t*_{i + 1} > *t*_{i} holds for all 1 ≤ *i* < *n*.

Output

Output *n* integers. For each trip, print the sum the passenger is charged after it.

Examples

Input

3

10

20

30

Output

20

20

10

Input

10

13

45

46

60

103

115

126

150

256

516

Output

20

20

10

0

20

0

0

20

20

10

Note

In the first example, the system works as follows: for the first and second trips it is cheaper to pay for two one-trip tickets, so each time 20 rubles is charged, after the third trip the system understands that it would be cheaper to buy a ticket for 90 minutes. This ticket costs 50 rubles, and the passenger had already paid 40 rubles, so it is necessary to charge 10 rubles only.

Codeforces (c) Copyright 2010-2024 Mike Mirzayanov

The only programming contests Web 2.0 platform

Server time: Feb/28/2024 01:29:23 (l1).

Desktop version, switch to mobile version.

Supported by

User lists

Name |
---|