Problem description
Zadania na obozie sprawiają uczestnikom niemałą trudność. No po prostu nie jest łatwo, same schody…
No właśnie, tym razem zadanie będzie właśnie o nich. Rozważmy N stopni schodów prowadzących na piętro o wysokościach (kolejno od dołu do góry) T1, T2, …, TN. Tak, takie dziwne schody, w których każdy stopień może mieć różną wysokość.
Jest Q osób, które chcą się dostać na piętro. Wzrost kolejnych osób zadany jest ciągiem H1, H2, …, HQ. Niestety, każda osoba może pokonać jedynie stopnie, których maksymalna wysokość nie przekracza jej wzrostu. Jeśli na swojej drodze napotka stopień wyższy, zatrzymuje się i nie próbuje wejść wyżej.
Napisz program, który: wczyta wysokości stopni schodów oraz wzrost osób, dla każdej osoby wyznaczy ile stopni będzie w stanie pokonać i wypisze wynik na standardowe wyjście.
Wejście
W pierwszym wierszu wejścia znajduje się jedna liczba naturalna N, określająca liczbę stopni schodów. W drugim wierszu wejścia znajduje się ciąg N liczb naturalnych Ti, pooddzielanych pojedynczymi odstępami – ciąg opisujący wysokość kolejnych stopni. W trzecim wierszu wejścia znajduje się jedna liczba naturalna Q, określająca liczbę osób. W czwartym (ostatnim) wierszu wejścia znajduje się ciąg Q liczb naturalnych Hi, pooddzielanych pojedynczymi odstępami – ciąg opisujący wzrost kolejnych osób.
Wyjście
Twój program powinien wypisać na wyjście dokładnie Q wierszy. W i-tym wierszu powinna się znaleźć liczba stopni schodów, które pokona i-ta osoba z wejścia.
Ograniczenia
1 ≤ N, Q ≤ 500 000, 1 ≤ Ti ≤ 109, 1 ≤ Hi ≤ 109.
W testach wartych łącznie 10% maksymalnej punktacji: Q ≤ 10.
W testach wartych łącznie 50% maksymalnej punktacji ciąg Hi jest rosnący.
Przykład
Wejście | Wyjście | |
|
|