COCI '23 Contest 2 #3 Dizalo
View as PDF
In a city there is a tall skyscraper with  floors. There are 
 people waiting
for an elevator on the ground floor. The 
-th person wants to go to floor 
.
There is no pair of people who want to go to the same floor.
The skyscraper has one elevator that is large enough for all people to fit in, but it is so narrow that two people cannot stand side by side; they must be one behind the other.
Everybody got in the elevator, but they had not thought about the order in which
they have to exit it! Initially, the -th person is at position 
, looking from the elevator door. If a person
wants to exit the elevator, everybody in front of them (closer to the door) must temporarily exit the
elevator too. When returning back in the elevator, they can reorder themselves as they wish. People
who are behind (further to the door) the person who wants to exit will not exit the elevator.
The illustration above shows the starting order of people in the elevator in the first example. The elevator
is on floor , and the person in position 
 wants to exit. For them to exit, persons at positions 
 and 
must exit too.
Mirko is viewing the situation they are in and contemplating. He wants to know how many exits from the elevator would there be if the people returning to the elevator always returned optimally. If a person exits the elevator multiple times, each time is counted separately.
Mirko is an experienced coder, and he can solve this problem quite easily. His happiness is short-lived,
because next to him is his friend Slavko. Slavko came up with  questions:
If the person at position
was not in the elevator, how many exits would there be then?
Mirko is interested in an answer before Slavko's first question and after every question. Note that for each question, all the people from previous questions are also not considered to be in the elevator. Mirko started solving the problem but soon realized that even for him, this would not be quite easy. Help him solve this problem!
Note: The elevator will always move from the first floor to the -th floor and stop at every floor on which
someone wants to exit.
Input Specificaton
The first line contains two non-negative integers  and 
 
, the number of people/floors
and the number of questions.
The second line contains  integers 
 (
, 
 for each 
), where 
 is the floor on which
the 
-th person wants to exit the elevator. The sequence 
 is a permutation of the integers 
.
The third line contains  integers 
 (
 for each 
), Slavko's questions.
Output Specification
In one line, print  numbers, where the 
-th is the number of exits after 
 questions.
Constraints
| Subtask | Points | Constraints | 
|---|---|---|
| 1 | 16 | |
| 2 | 19 | |
| 3 | 29 | |
| 4 | 46 | No additional constraints. | 
Sample Input 1
5 2
3 4 1 2 5
3 2
Sample Output 1
9 6 4
Explanation for Sample 1

The illustration shows the exits from the elevator before the first query.
The elevator is on the first floor, and the person at position  wants to
exit. But, for them to exit, persons at positions 
 and 
 must exit first,
and they return to the elevator at the same positions.
After that, on the second floor, the person at position  wants to exit.
Again, persons at positions 
 and 
 must exit first, and they return to
the elevator at the same positions.
After that, on the third floor, the person at position  exits the elevator,
without anyone else having to exit the elevator.
After that, on the fourth floor, the person at position  exits the elevator,
without anyone else having to exit the elevator.
And finally, on the fifth floor, the person at position  exits the elevator.
In total, there were 
 exits from the elevator.
Sample Input 2
7 0
4 5 2 1 6 3 7
Sample Output 2
13
Sample Input 3
3 2
3 1 2
1 2
Sample Output 3
5 2 1
                    
Comments