Logo
(追記) (追記ここまで)

26757번 - Optymalizacja mandatów 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
10 초 1024 MB33252177.778%

문제

Chyba nikt nie lubi być łapany na przekroczeniu prędkości – co gorsza, w Bajtocji kary są bardzo surowe, a system ich przydzielania dość skomplikowany.

Każde takie wykroczenie rejestrowane jest jako para (Ki, Ri), gdzie liczba Ki oznacza, o ile przekroczona została dopuszczalna prędkość, a Ri – numer służbowy policjanta, który nałożył mandat. Kwota mandatu to sklejenie cyfr liczb Ki oraz Ri. Na przykład: jeśli Ki = 12, a Ri = 5 432, to kwota wynosi aż 125 432.

Bajtazar otrzymał właśnie N mandatów do zapłacenia. Patrząc na łączną ich kwotę poprzysiągł sobie, że nigdy więcej nie dociśnie gazu w swoim Alfa Bitteo. Aby jednak móc zachować swój samochód i przez najbliższy rok jeść cokolwiek poza keczupem, będzie musiał dokonać pewnej optymalizacji.

Płacone mandaty są kontrolowane przez dwa różne wydziały skarbowe – Wydział Ewidencji Prędkości sprawdza tylko, czy wśród zapłaconych mandatów obecne są wszystkie wartości prędkości Ki, a Wydział Ewidencji Policjantów – czy zgadzają się numery służbowe Ri. Nikt jednak sprawdza, w jakiej kolejności (i w jakich parach) mandaty zostały zapłacone. To oczywiście może wpływać na sumaryczną kwotę do zapłacenia – uczciwy, lecz sprytny pirat drogowy (taki jak Bajtazar) może „posklejać” ze sobą liczby Ki oraz Ri inaczej niż oryginalnie, tak aby łączna kwota była jak najmniejsza. Czy możesz mu pomóc?

Napisz program, który wczyta wartości przekroczeń prędkości Ki oraz numery służbowe Ri, obliczy najmniejszą możliwą sumaryczną kwotę mandatów przy najlepszym przypisaniu jednych numerów do drugich, i wypisze wynik na standardowe wyjście.

입력

W pierwszym wierszu wejścia znajduje się jedna liczba naturalna N (1 ≤ N ≤ 1 000 000) określająca liczbę mandatów Bajtazara. W drugim wierszu wejścia znajduje się ciąg N liczb naturalnych Ki (1 ≤ Ki ≤ 100 000): wartości przekroczeń prędkości. W trzecim (ostatnim) wierszu wejścia znajduje się ciąg N liczb naturalnych Ri (1 ≤ Ri ≤ 100 000): numery służbowe policjantów, którzy przyłapali Bajtazara na nieostrożnej jeździe.

출력

W pierwszym (jedynym) wierszu wyjścia należy wypisać jedną liczbę naturalną – minimalna kwota do zapłacenia przy optymalnym przypisaniu wartości prędkości do numerów służbowych zgodnie z zasadami opisanymi powyżej.

제한

예제 입력 1

3
5 2 30
13 9 7

예제 출력 1

579

Wyjaśnienie do przykładu: Gdyby nie optymalizować nic i pozostawić mandaty tak jak były przypisane oryginalnie, kwota do zapłacenia wynosiłaby (513 +たす 29 +たす 307 = 849). Lepiej jednak pogrupować je w następujące pary: (2, 13), (30, 7), (5, 9), co spowoduje, że kwota wyniesie 213 +たす 307 +たす 59 = 579.

예제 입력 2

5
5 12 7 2 8
1 1 1 1 1

예제 출력 2

345

Wyjaśnienie do przykładu: Bez optymalizacji otrzymamy 51 +たす 121 +たす 71 +たす 21 +たす 81 = 345. Okazuje się też, że jest to optymalna kwota.

힌트

출처

Olympiad > Junior Polish Olympiad in Informatics > JPOI 2021 > Stage 1 7번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /