[λ°±μ€/python] 2798λ² : λΈλμ
λ¬Έμ
μΉ΄μ§λ Έμμ μ μΌ μΈκΈ° μλ κ²μ λΈλμμ κ·μΉμ μλΉν μ½λ€. μΉ΄λμ ν©μ΄ 21μ λμ§ μλ νλ λ΄μμ, μΉ΄λμ ν©μ μ΅λν ν¬κ² λ§λλ κ²μμ΄λ€. λΈλμμ μΉ΄μ§λ Έλ§λ€ λ€μν κ·μ μ΄ μλ€.
νκ΅ μ΅κ³ μ λΈλμ κ³ μ κΉμ μΈμ μλ‘μ΄ λΈλμ κ·μΉμ λ§λ€μ΄ μκ·Ό, μ°½μμ΄μ κ²μνλ €κ³ νλ€.
κΉμ μΈ λ²μ μ λΈλμμμ κ° μΉ΄λμλ μμ μ μκ° μ°μ¬ μλ€. κ·Έ λ€μ, λλ¬λ Nμ₯μ μΉ΄λλ₯Ό λͺ¨λ μ«μκ° λ³΄μ΄λλ‘ λ°λ₯μ λλλ€. κ·Έλ° νμ λλ¬λ μ«μ Mμ ν¬κ² μΈμΉλ€.
μ΄μ νλ μ΄μ΄λ μ νλ μκ° μμ Nμ₯μ μΉ΄λ μ€μμ 3μ₯μ μΉ΄λλ₯Ό 골λΌμΌ νλ€. λΈλμ λ³ν κ²μμ΄κΈ° λλ¬Έμ, νλ μ΄μ΄κ° κ³ λ₯Έ μΉ΄λμ ν©μ Mμ λμ§ μμΌλ©΄μ Mκ³Ό μ΅λν κ°κΉκ² λ§λ€μ΄μΌ νλ€.
Nμ₯μ μΉ΄λμ μ¨μ Έ μλ μ«μκ° μ£Όμ΄μ‘μ λ, Mμ λμ§ μμΌλ©΄μ Mμ μ΅λν κ°κΉμ΄ μΉ΄λ 3μ₯μ ν©μ κ΅¬ν΄ μΆλ ₯νμμ€.
μ λ ₯
첫째 μ€μ μΉ΄λμ κ°μ N(3 ≤ N ≤ 100)κ³Ό M(10 ≤ M ≤ 300,000)μ΄ μ£Όμ΄μ§λ€. λμ§Έ μ€μλ μΉ΄λμ μ°μ¬ μλ μκ° μ£Όμ΄μ§λ©°, μ΄ κ°μ 100,000μ λμ§ μλ μμ μ μμ΄λ€.
ν©μ΄ Mμ λμ§ μλ μΉ΄λ 3μ₯μ μ°Ύμ μ μλ κ²½μ°λ§ μ λ ₯μΌλ‘ μ£Όμ΄μ§λ€.
μΆλ ₯
첫째 μ€μ Mμ λμ§ μμΌλ©΄μ Mμ μ΅λν κ°κΉμ΄ μΉ΄λ 3μ₯μ ν©μ μΆλ ₯νλ€.
μ λ΅
from itertools import combinations
import sys
input = sys.stdin.readline
N, M = map(int, input().split())
cards = list(map(int, input().split()))
answer = []
for i in combinations(cards, 3):
if sum(i) <= M:
answer.append(sum(i))
print(max(answer))
combinationsλ₯Ό μ΄μ©νμ¬ λͺ¨λ κ²½μ°μ μλ₯Ό κ΅¬ν΄ answerμ μ μ₯νκ³ κ·Έ μ€ κ°μ₯ ν° μλ₯Ό μΆλ ₯νλ€.
μλλ combinationsμ λν ν¬μ€ν μ΄λ€.
[νμ΄μ¬/python] μμ΄κ³Ό μ‘°ν© : itertools μ΄μ©νκΈ° (permutations, combinations)
itertoolsλ₯Ό μ΄μ©νμ¬ μμ΄κ³Ό μ‘°ν©μ ꡬννλ©΄ λμ± λΉ λ₯΄κ² μ²λ¦¬ν μ μλ€. 1. μμ΄ : permutations(N, r) Nμμ μ€λ³΅μ νμ©νμ§ μκ³ , rκ°λ₯Ό λ½μ μμλλ‘ λμ΄νλ€. μ€λ³΅μ νμ©νμ§ μκΈ° λλ¬Έμ, λ½
ye333.tistory.com
'πμκ³ λ¦¬μ¦ > λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[λ°±μ€/python] 2231λ² : λΆν΄ν© (0) | 2021.05.11 |
---|---|
[λ°±μ€/python] 1002λ² : ν°λ (0) | 2021.04.13 |
[λ°±μ€/python] 2579λ² : κ³λ¨ μ€λ₯΄κΈ° (0) | 2021.04.13 |
[λ°±μ€/python] 11054λ² : κ°μ₯ κΈ΄ λ°μ΄ν λ λΆλΆ μμ΄ (0) | 2021.04.13 |
[λ°±μ€/pypy3] 9663λ² : N-Queen (0) | 2021.04.12 |