Algorithm
- nμ§μ κ²μ -
λ¬Έμ
νλΈκ° νλνλ μ½λ© λμ리μμλ μ ν΅μ μΌλ‘ ν΄μ€λ κ²μμ΄ μλ€.
μ΄ κ²μμ μ¬λ¬ μ¬λμ΄ λ₯κΈκ² μμμ μ«μλ₯Ό νλμ© μ°¨λ‘λλ‘ λ§νλ κ²μμΈλ°, κ·μΉμ λ€μκ³Ό κ°λ€.
1. μ«μλ₯Ό 0λΆν° μμν΄μ μ°¨λ‘λλ‘ λ§νλ€.
첫 λ²μ§Έ μ¬λμ 0, λ λ²μ§Έ μ¬λμ 1, ... μ΄λ²μ§Έ μ¬λμ 9λ₯Ό λ§νλ€.
2. 10 μ΄μμ μ«μλΆν°λ ν μλ¦¬μ© λμ΄μ λ§νλ€.
μ¦ μ΄ν λ²μ§Έ μ¬λμ 10μ 첫 μλ¦¬μΈ 1, μ΄λ λ²μ§Έ μ¬λμ λμ§Έ μλ¦¬μΈ 0μ λ§νλ€.
μ΄λ κ² κ²μμ μ§νν κ²½μ°,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, ... μμΌλ‘ μ«μλ₯Ό λ§νλ©΄ λλ€.
ννΈ μ½λ© λμ리 μΌμλ€μ μ»΄ν¨ν°λ₯Ό λ€λ£¨λ μ¬λλ΅κ² μ΄μ§μλ‘ μ΄ κ²μμ μ§ννκΈ°λ νλλ°, μ΄κ²½μ°μλ
0, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, ... μμΌλ‘ λ§νλ©΄ λλ€.
μ΄μ§μλ‘ μ§ννλ κ²μμ μ΅μν΄μ Έ μ§λ €κ°λ μ¬λλ€μ μ’ λ λμ΄λλ₯Ό λμ΄κΈ° μν΄ μ΄μ§λ²μμ μμ‘μ§λ²κΉμ§ λͺ¨λ μ§λ²μΌλ‘ κ²μμ μ§νν΄λ³΄κΈ°λ‘ νλ€.
μ«μ κ²μμ΄ μ΅μνμ§ μμ νλΈλ κ²μμ μ Έμ λ²μΉμ λ°λ κ΅΄μμ νΌνκΈ° μν΄, μμ μ΄ λ§ν΄μΌ νλ μ«μλ₯Ό μ€λ§νΈν°μ 미리 μΆλ ₯ν΄μ£Όλ νλ‘κ·Έλ¨μ λ§λ€λ €κ³ νλ€.
νλΈμ νλ‘κ·Έλ¨μ ꡬννλΌ.
- μ§λ² n, 미리 ꡬν μ«μμ κ°―μ t, κ²μμ μ°Έκ°νλ μΈμ m, νλΈμ μμ pκ° μ£Όμ΄μ§λ€.
μ μΆλ ₯ μμ
n | t | m | p | result |
2 | 4 | 2 | 1 | "0111" |
16 | 16 | 2 | 1 | "02468ACE11111111" |
λ¬Έμ νκΈ°
μ²μμ λ¬Έμ λ₯Ό νμΈνλλ° λ¬Έμ μ μμ΄ κΈΈμ΄μ μ½κ° λ©μΉ«νλλ° λ¬Έμ λ₯Ό μ μ΄ν΄νκ³ μ½λλ₯Ό μμ±νλ©΄ μμ² μ΄λ €μ΄κ±΄ μλκ² κ°λ€.
(μ... λ¬Όλ‘ λ΄ λ΅μ΄ μ΅κ³ λ μλμ§λ§ κ·Έλλ ν΅κ³Όλκ² μ΄λμΌ...γ γ γ )
μΌλ¨ λ¬Έμ μμ nμ§λ²λ κ°μ λ΄κ° λ§μ ν΄μΌνκΈ° λλ¬Έμ nμ§λ²λ κ°μ λ°λ‘ μ μ₯ν΄λλκ² μ’μ κ² κ°μμ whileλ¬Έμ μ¬μ©ν΄μ μ§μ ν΄λ λ²μκΉμ§ nμ§λ²λ κ°μ numberStrμ λ΄μλλλ‘ νμλ€.
μ΄λ λ²μλ₯Ό 't * m'μΌλ‘ ν΄λμλλ° ν° μ΄μ κ° μλ건 μλμκ³ mλͺ λΌλ¦¬ νλλ° λ΄κ° λ§ν΄μΌνλ μμ κ°μκ° tκ° μ΄κΈ° λλ¬Έμ μ΅μν tνμ μ λμμ κ²μμ΄ μ§νλκ² κ΅¬λ μκ°ν΄μ 't * m'μΌλ‘ λ²μλ₯Ό μ§μ ν΄λμλ€.
(λ§μ½ nμ§λ² λμμλ '10', '1111' μ΄λ°μμΌλ‘ κΈΈμ΄κ° 1κ°κ° μλλλΌλ λμ€μ μλ₯΄λ©΄ λλ€λΌκ³ μκ°ν΄μ λ²μλ₯Ό μ λ κ² μ€μ ν΄λμλ€.)
μ΄νμ μ΄μ λ΄ μμκ° λμμ λ λ§ν΄μΌ νλ κ°μ resultμ λ£μ΄μΌνλλ° μμκ° λ§μ½ 첫λ²μ§Έμ΄κ³ κ²μμ 2λͺ μ΄μ μ§νλλ©΄ μΈλ±μ€ 0, 2, 4, ... λ²μ§Έμ κ°μ λ§ν΄μΌνκΈ° λλ¬Έμ λ°λ³΅λ¬Έμμ iμμ κ²μμ μ§ννλ λͺ μλ₯Ό λλ μ μ¬κΈ°μ λμ€λ λλ¨Έμ§κ° λ΄μμμμ -1ν κ°κ³Ό κ°μ κ²½μ°μ κ°μ λ£λ κ²μΌλ‘ μ€μ μ ν΄μ£Όμλ€.
(-1μ ν건 μΈλ±μ€ κ°μ κ³ λ €ν΄ μ§νν΄μ£Όμλ€.)
μ΄ν mκ°λ₯Ό λ΄λ³΄λ΄μΌνκΈ° λλ¬Έμ sliceλ₯Ό μ¬μ©νκ³ μμ μμ λλ¬Έμλ‘ ννλλ κ²μ νμΈνκ³ toUpperCase()λ₯Ό μ¬μ©νλλ λ¬Έμ κ° ν΅κ³Όλλ κ²μ νμΈν μ μμλ€.
'κ°μΈκ³΅λΆ > Algorithm' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Level 2] μμΆ (0) | 2021.05.25 |
---|---|
[Level 2] μ¬λ°λ₯Έ κ΄νΈ (0) | 2021.05.24 |
[Level 2] λ€μ ν° μ«μ (0) | 2021.05.22 |
[Level 2] λ λ°λ¨ΉκΈ° (0) | 2021.05.21 |
[Level 2] μ«μμ νν (0) | 2021.05.20 |
λκΈ