λ¬Έμ μ€λͺ
λλ§μ μΉ΄μΉ΄μ€ μ±κ²© μ ν κ²μ¬μ§λ₯Ό λ§λ€λ €κ³ ν©λλ€.
μ±κ²© μ ν κ²μ¬λ λ€μκ³Ό κ°μ 4κ° μ§νλ‘ μ±κ²© μ νμ ꡬλΆν©λλ€. μ±κ²©μ κ° μ§νμμ λ μ ν μ€ νλλ‘ κ²°μ λ©λλ€.
μ§ν λ²νΈ | μ±κ²© μ ν |
1λ² μ§ν | λΌμ΄μΈν(R), νλΈν(T) |
2λ² μ§ν | μ½ν(C), νλ‘λν(F) |
3λ² μ§ν | μ μ΄μ§ν(J), 무μ§ν(M) |
4λ² μ§ν | μ΄νΌμΉν(A), λ€μ€ν(N) |
4κ°μ μ§νκ° μμΌλ―λ‘ μ±κ²© μ νμ μ΄ 16(=2 x 2 x 2 x 2)κ°μ§κ° λμ¬ μ μμ΅λλ€. μλ₯Ό λ€μ΄, "RFMN"μ΄λ "TCMA"μ κ°μ μ±κ²© μ νμ΄ μμ΅λλ€.
κ²μ¬μ§μλ μ΄ nκ°μ μ§λ¬Έμ΄ μκ³ , κ° μ§λ¬Έμλ μλμ κ°μ 7κ°μ μ νμ§κ° μμ΅λλ€.
- λ§€μ° λΉλμ
- λΉλμ
- μ½κ° λΉλμ
- λͺ¨λ₯΄κ² μ
- μ½κ° λμ
- λμ
- λ§€μ° λμ
κ° μ§λ¬Έμ 1κ°μ§ μ§νλ‘ μ±κ²© μ ν μ μλ₯Ό νλ¨ν©λλ€.
μλ₯Ό λ€μ΄, μ΄λ€ ν μ§λ¬Έμμ 4λ² μ§νλ‘ μλ νμ²λΌ μ μλ₯Ό 맀길 μ μμ΅λλ€.
μ νμ§ | μ±κ²© μ ν μ μ |
λ§€μ° λΉλμ | λ€μ€ν 3μ |
λΉλμ | λ€μ€ν 2μ |
μ½κ° λΉλμ | λ€μ€ν 1μ |
λͺ¨λ₯΄κ² μ | μ΄λ€ μ±κ²© μ νλ μ μλ₯Ό μ»μ§ μμ΅λλ€ |
μ½κ° λμ | μ΄νΌμΉν 1μ |
λμ | μ΄νΌμΉν 2μ |
λ§€μ° λμ | μ΄νΌμΉν 3μ |
μ΄λ κ²μ¬μκ° μ§λ¬Έμμ μ½κ° λμ μ νμ§λ₯Ό μ νν κ²½μ° μ΄νΌμΉν(A) μ±κ²© μ ν 1μ μ λ°κ² λ©λλ€. λ§μ½ κ²μ¬μκ° λ§€μ° λΉλμ μ νμ§λ₯Ό μ νν κ²½μ° λ€μ€ν(N) μ±κ²© μ ν 3μ μ λ°κ² λ©λλ€.
μ μμμ²λΌ λ€μ€νμ΄ λΉλμ, μ΄νΌμΉνμ΄ λμμΈ κ²½μ°λ§ μ£Όμ΄μ§μ§ μκ³ , μ§λ¬Έμ λ°λΌ λ€μ€νμ΄ λμ, μ΄νΌμΉνμ΄ λΉλμμΈ κ²½μ°λ μ£Όμ΄μ§ μ μμ΅λλ€.
νμ§λ§ κ° μ νμ§λ κ³ μ μ μΈ ν¬κΈ°μ μ μλ₯Ό κ°μ§κ³ μμ΅λλ€.
- λ§€μ° λμλ λ§€μ° λΉλμ μ νμ§λ₯Ό μ ννλ©΄ 3μ μ μ»μ΅λλ€.
- λμλ λΉλμ μ νμ§λ₯Ό μ ννλ©΄ 2μ μ μ»μ΅λλ€.
- μ½κ° λμλ μ½κ° λΉλμ μ νμ§λ₯Ό μ ννλ©΄ 1μ μ μ»μ΅λλ€.
- λͺ¨λ₯΄κ² μ μ νμ§λ₯Ό μ ννλ©΄ μ μλ₯Ό μ»μ§ μμ΅λλ€.
κ²μ¬ κ²°κ³Όλ λͺ¨λ μ§λ¬Έμ μ±κ²© μ ν μ μλ₯Ό λνμ¬ κ° μ§νμμ λ λμ μ μλ₯Ό λ°μ μ±κ²© μ νμ΄ κ²μ¬μμ μ±κ²© μ νμ΄λΌκ³ νλ¨ν©λλ€. λ¨, νλμ μ§νμμ κ° μ±κ²© μ ν μ μκ° κ°μΌλ©΄, λ μ±κ²© μ ν μ€ μ¬μ μμΌλ‘ λΉ λ₯Έ μ±κ²© μ νμ κ²μ¬μμ μ±κ²© μ νμ΄λΌκ³ νλ¨ν©λλ€.
μ§λ¬Έλ§λ€ νλ¨νλ μ§νλ₯Ό λ΄μ 1μ°¨μ λ¬Έμμ΄ λ°°μ΄ surveyμ κ²μ¬μκ° κ° μ§λ¬Έλ§λ€ μ νν μ νμ§λ₯Ό λ΄μ 1μ°¨μ μ μ λ°°μ΄ choicesκ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§λλ€. μ΄λ, κ²μ¬μμ μ±κ²© μ ν κ²μ¬ κ²°κ³Όλ₯Ό μ§ν λ²νΈ μμλλ‘ return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
μ ν μ¬ν
- 1 ≤ surveyμ κΈΈμ΄ ( = n) ≤ 1,000
- surveyμ μμλ "RT", "TR", "FC", "CF", "MJ", "JM", "AN", "NA" μ€ νλμ λλ€.
- survey[i]μ 첫 λ²μ§Έ μΊλ¦ν°λ i+1λ² μ§λ¬Έμ λΉλμ κ΄λ ¨ μ νμ§λ₯Ό μ ννλ©΄ λ°λ μ±κ²© μ νμ μλ―Έν©λλ€.
- survey[i]μ λ λ²μ§Έ μΊλ¦ν°λ i+1λ² μ§λ¬Έμ λμ κ΄λ ¨ μ νμ§λ₯Ό μ ννλ©΄ λ°λ μ±κ²© μ νμ μλ―Έν©λλ€.
-
- choices[i]λ κ²μ¬μκ° μ νν i+1λ²μ§Έ μ§λ¬Έμ μ νμ§λ₯Ό μλ―Έν©λλ€.
- 1 ≤ choicesμ μμ ≤ 7choicesμ κΈΈμ΄ = surveyμ κΈΈμ΄
choices λ» 1 λ§€μ° λΉλμ 2 λΉλμ 3 μ½κ° λΉλμ 4 λͺ¨λ₯΄κ² μ 5 μ½κ° λμ 6 λμ 7 λ§€μ° λμ
https://school.programmers.co.kr/learn/courses/30/lessons/118666
π‘ νμ΄ λ° μ½λ
def solution(survey, choices):
types = {'R': 0, 'T': 0, 'C': 0, 'F': 0, 'J': 0, 'M': 0, 'A': 0, 'N': 0}
for i in range(len(choices)):
if choices[i] < 4:
types[survey[i][0]] += (choices[i] * 3) % 4
if choices[i] > 4:
types[survey[i][1]] += choices[i] % 4
type_key = list(types.keys())
answer = ''
for i in range(0, len(type_key), 2):
if types[type_key[i]] > types[type_key[i+1]]:
answer += type_key[i]
elif types[type_key[i]] < types[type_key[i+1]]:
answer += type_key[i+1]
else:
answer += min(type_key[i], type_key[i+1])
return answer
μ±κ²© μ νμ λν μ μλ₯Ό dictionary ννλ‘ λ§λ€μ΄ μ μ₯νλ€. κ°κ°μ μ§ν λ³λ‘ λ λμ μ μμ μ±κ²© μ νμ μ±ννλ, μ μκ° κ°μ λμλ minν¨μλ₯Ό νμ©νμ¬ μνλ²³μ΄ μ¬μ μ λ λΉ λ₯Έ (μμ) μ νμ μ ννλ€.
'Algorithm > π Programmers' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Programmers] νλ‘κ·Έλλ¨Έμ€ LV.1 μ κ³ κ²°κ³Ό λ°κΈ° - νμ΄μ¬(Python) (0) | 2022.09.02 |
---|