시간 제한 | 메모리 제한 | 제출 | 정답 | 맞힌 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 128 MB | 0 | 0 | 0 | 0.000% |
Bajtoś dostał nową kolekcję sprężyn. Każda z nich została wyprodukowana w pewnych wymiarach, a każde jej rozciągnięcie, bądź ściśnięcie, wymaga dość sporego wysiłku.
Aby wydłużyć lub skrócić o 1 centymetr nieruszaną jeszcze sprężynę, potrzeba 1 jednostki wysiłku. Każde kolejne rozciągnięcie, bądź ściśnięcie, tej samej sprężyny wymaga dodatkowo zwiększenia wysiłku o 1. Dokładniej, jeśli Bajtoś chce wydłużyć sprężynę o d centymetrów, to będzie się wysilał o kolejno 1, 2, ..., d jednostek wysiłku.
Bajtoś zastanawia się, ile minimalnie wysiłku musi włożyć, aby k najkrótszych sprężyn było tej samej długości. Zakładamy, że wszystkie sprężyny Bajtosia nie były dotąd rozciągane ani ściskane.
Pierwszy wiersz standardowego wejścia zawiera dwie liczby całkowite n, m (1 ≤ n, m ≤ 106), oznaczające odpowiednio liczbę sprężyn oraz liczbę zapytań Bajtosia. Kolejny wiersz zawiera n liczb całkowitych s1, s2, ..., sn (1 ≤ si ≤ si+1 ≤ 109), gdzie si oznacza długość i-tej sprężyny. Następny wiersz zawiera m liczb całkowitych k1, k2, ..., km (1 ≤ kj ≤ n), gdzie kj oznacza j-te zapytanie Bajtosia, w którym wybiera kj najmniejszych sprężyn.
j-ty wiersz wyjścia powinien być odpowiedzią na j-te zapytanie (to jest ile minimalnie wysiłku kosztowałoby Bajtosia ustawienie kj najkrótszych sprężyn na tą samą długość) modulo 109 + 7.
4 4 1 3 4 10 1 2 3 4
0 2 4 28