-
[λ°±μ€] 2535 μμμ μ 보μ¬λ¦ΌνΌμλ with PythonPS 2022. 2. 8. 02:20728x90λ°μν
π BOJ 2535 μμμ μ 보μ¬λ¦ΌνΌμλ
π‘ 쑰건
λνμ°Έκ° νμ μλ₯Ό λνλ΄λ N, 3 β€ N β€ 100.
Nκ°μ μ€μλ κ° μ€λ§λ€ ν νμμ μμ κ΅κ° λ²νΈ, νμ λ²νΈ, κ·Έλ¦¬κ³ μ±μ μ΄ νλμ λΉμΉΈμ μ¬μ΄μ λκ³ μ£Όμ΄μ§λ€.
κ΅κ° λ²νΈλ 1λΆν° μμλλ‘ νλμ μ μλ‘ μ£Όμ΄μ§λ©°, κ° νμλ²νΈλ κ° λλΌλ³λ‘ 1λΆν° μμλλ‘ νλμ μ μλ‘ μ£Όμ΄μ§λ€.
μ μλ 0 μ΄μ 1000 μ΄νμ μ μμ΄κ³ , λμ μλ μλ€κ³ κ°μ νλ€.
μ λ ¬, ꡬνμ νμ λ¬Έμ .
π₯ μμ€ μ½λ
from sys import stdin n = int(stdin.readline()) grade = [] for i in range(n): a,b,c = map(int, stdin.readline().split()) grade.append((c, a, b)) h = {} grade.sort(reverse=True) cnt = 0 for i in range(n): if cnt == 3: break if grade[i][1] not in h: print(*grade[i][1:]) cnt += 1 h[grade[i][1]] = 1 else: if h[grade[i][1]] < 2: print(*grade[i][1:]) h[grade[i][1]] += 1 cnt += 1 else: continue
π μμ λ° μ€νκ²°κ³Ό
μμ
9 1 1 230 1 2 210 1 3 205 2 1 100 2 2 150 3 1 175 3 2 190 3 3 180 3 4 195
μ€νκ²°κ³Ό
1 1 1 2 3 4
β¨οΈ λ¬Έμ νμ΄
μ λ ₯μ λ°μ 리μ€νΈμ μ μ₯ν λ, μ μ, μ°Έκ°κ΅, νμλ²νΈ μμΌλ‘ μ μ₯νλ€.
μ΄ν, sort λ₯Ό ν΄μ£Όλ©΄ μ μμμΌλ‘ μ λ ¬μ΄ λλ€.μμμ ν μ΄λ ₯μ λ΄μ h λμ λ리 λ³μλ₯Ό νλλ§λ€κ³ , μ λ ¬λ grade 리μ€νΈλ₯Ό μννλ€.
grade 리μ€νΈλ₯Ό μννλ©΄μ
λ§μ½ ν΄λΉ κ΅κ° (grade[i][1])κ° μμ μ΄λ ₯μ΄ μμΌλ©΄ μμν κ΅κ°μ μ cnt + 1
μμ μ΄λ ₯μ grade[i][1] λ₯Ό μΆκ°νκ³ κ°μ 1λ‘ νλ€.λ§μ½ ν΄λΉ κ΅κ° (grade[i][1])κ° μμ μ΄λ ₯μ΄ μκ³ , μμ μ΄λ ₯μ μκ° 2 λ―Έλ§μ΄λ©΄ μμν κ΅κ°μ μ cnt + 1
μμ μ΄λ ₯μ ν΄λΉ κ΅κ°μ + 1 νλ€.λ§μ½ μμν κ΅κ°κ° 3μ΄λΌλ©΄ λ°λ³΅λ¬Έμ λ©μΆλ€.
πΎ λλμ
- μ λ ¬μ νκ³ μ½κ°μ μ‘°κ±΄λ¬Έλ§ μΆκ°ν΄μ£Όλ©΄ μ½κ² ν μ μλ λ¬Έμ μμ΅λλ€.
λ°μν'PS' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€] 11655 ROT13 with Python (0) 2022.02.10 [λ°±μ€] 6603 λ‘λ with Python (0) 2022.02.10 [λ°±μ€] 1940 μ£Όλͺ½ with Python (0) 2022.02.07 [λ°±μ€] 1292 μ½κ² νΈλ λ¬Έμ with Python (0) 2022.02.03 [λ°±μ€] 16234 μΈκ΅¬ μ΄λ with Python (0) 2022.02.03