-
[λ°±μ€] 10025 κ²μΌλ₯Έ λ°±κ³° with PythonPS 2023. 4. 10. 14:07728x90λ°μν
π BOJ 10025 κ²μΌλ₯Έ λ°±κ³°
π‘ 쑰건
μ¨λ²νΈκ° κ°μ₯ μ μ κ±°λ¦¬λ§ μμ§μ΄κ³ λ μ΅λν λ§μ μΌμμΌλ‘ λμλ₯Ό μν μ μλλ‘ λμμ£Όμ.
μ°λ¦¬ μμ 1μ°¨μ λ°°μ΄λ‘ μκ°νλ©°, μ΄ Nκ°μ μΌμ μλμ΄λ€μ΄ xiμ’νλ§λ€ λμ¬ μκ³ κ° μλμ΄ μμλ giμ©μ μΌμμ΄ λ€μ΄ μλ€.
(1 β€ N β€ 100000)
(0 β€ xi β€ 1,000,000)
(1 β€ gi β€ 10,000)μ¨λ²νΈκ° μ리λ₯Ό μ‘μΌλ©΄ κ·Έλ‘λΆν° μ’μ°λ‘ K(1 β€ K β€ 2,000,000) λ§νΌ λ¨μ΄μ§ μλμ΄κΉμ§ λΏμ μ μλ€.
μ¨λ²νΈλ μλμ΄κ° λμ¬ μλ μ리μλ μ리μ‘μ μ μλ€.
λͺ¨λ μΌμ μλμ΄μ μμΉλ λ€λ₯΄λ€.μ¨λ²νΈκ° μ΅μ μ μ리λ₯Ό 골λμ λ μΌμμ ν©μ ꡬνλ λ¬Έμ . μ¦, μΌμλ€μ ν©μ μ΅λκ°μ ꡬν΄μΌ νλ€.
첫 μ€μ μ μ Nκ³Ό Kκ° λ€μ΄μ¨λ€.
λμ§Έ μ€λΆν° Nμ§Έ μ€κΉμ§, 곡백μ μ¬μ΄μ λκ³ κ° μλμ΄μ μΌμμ μμ λνλ΄λ giμ μλμ΄μ μ’νλ₯Ό λνλ΄λ xiκ° μ£Όμ΄μ§λ€.λμ ν©, μ¬λΌμ΄λ© μλμ° μ νμ λ¬Έμ
π μμ λ° μ€νκ²°κ³Ό
μμ 1
4 3 4 7 10 15 2 2 5 1
μ€νκ²°κ³Ό 1
11
β¨οΈ λ¬Έμ νμ΄
μ΄ λ¬Έμ λ λ κ°μ§ νμ΄λ₯Ό ν μ μλλ°, λλ μ¬λΌμ΄λ© μλμ°λ‘ νμ΄νλ€.
λμ ν© νμ΄λ μλμ λ§ν¬λ₯Ό μ°Έκ³ νλ©΄ μ’μ κ² κ°λ€.
10025 λμ ν© νμ΄μ¬λΌμ΄λ© μλμ°λ‘ λ¬Έμ λ₯Ό νμ΄νκΈ° μν΄μ μΌμμλμ΄λ€μ΄ λμ¬μ§ λ°°μ΄μ λ§λ€μ΄μ€λ€.
1,000,000 κ°μ λ°°μ΄μ λ§λ€μ΄λκ³ , Nκ°μ μΌμμλμ΄λ₯Ό Xμ μμΉμ Gλ₯Ό μ μ₯νλ€.(3)λ²μ μ§ννλ©΄μ, λΆνμν μ°μ°μ μ€μ΄κΈ° μν΄ μλμ΄κ° λμ¬μ§ 맨 λμ€ μ’νλ₯Ό ꡬνλ€.
νμ¬ μμΉλ‘λΆν° μ’μ°λ‘ K λ§νΌ λΏμ μ μκΈ° λλ¬Έμ 0 μ’νλ₯Ό κΈ°μ€μΌλ‘ μ λ€μ μμΉλ₯Ό κ³μ°νλ©΄ μλμ κ°λ€.
p = k * 2 + 1
μΌμλ€μ μ΅λκ°μ μ μ₯ν res μ μ΄κΈ°κ°μ 0~p κΉμ§μ κ°μ΄κ³ , (3)μμ ꡬν 맨 λμ€ μ’νκΉμ§ μννλ©΄μ resμ κ°μ
κ°±μ ν΄μ£Όλ©΄ λλ€.
π₯ μμ€ μ½λ
from sys import stdin n, k = map(int, stdin.readline().split()) length, ans = 0, 0 arr = [0 for _ in range(10000001)] for _ in range(n): g, x = map(int, stdin.readline().split()) length = max(length, x) arr[x] = g p = k * 2 + 1 res = sum(arr[:p]) ans = res for i in range(p, length + 1): # μ¬κΈ° p κ° μλ£κ³ μμ λ£μ λ κ΄νΈ μ λ£μ΄μ νλ Έμ res += (arr[i] - arr[i - p]) ans = max(ans, res) print(ans)
λ°μν'PS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 24480 μκ³ λ¦¬μ¦ μμ - κΉμ΄ μ°μ νμ 2 with Python (0) 2023.04.10 [λ°±μ€] 10707 μλμκΈ with Python (0) 2023.04.10 [λ°±μ€] 15792 A/B - 2 with Python (0) 2023.04.10 [λ°±μ€] 2455 μ§λ₯ν κΈ°μ°¨ with Python (0) 2023.04.10 [λ°±μ€] 1072 κ²μ with Python (0) 2023.04.07