https://school.programmers.co.kr/learn/courses/30/lessons/148653
λ¬Έμ μ€λͺ
λ§λ²μ μΈκ³μ μ¬λ λ―Όμλ μμ£Ό λμ νμ μ΄κ³ μμ΅λλ€. νμ΄ λ무 λμμ κ±Έμ΄ λ€λκΈ° νλ λ―Όμλ λ§λ²μ μλ¦¬λ² μ΄ν°λ₯Ό λ§λ€μμ΅λλ€. λ§λ²μ μλ¦¬λ² μ΄ν°μ λ²νΌμ νΉλ³ν©λλ€. λ§λ²μ μλ¦¬λ² μ΄ν°μλ -1, +1, -10, +10, -100, +100 λ±κ³Ό κ°μ΄ μ λκ°μ΄ 10c (c ≥ 0 μΈ μ μ) ννμΈ μ μλ€μ΄ μ ν λ²νΌμ΄ μμ΅λλ€. λ§λ²μ μλ¦¬λ² μ΄ν°μ λ²νΌμ λλ₯΄λ©΄ νμ¬ μΈ΅ μμ λ²νΌμ μ ν μλ κ°μ λν μΈ΅μΌλ‘ μ΄λνκ² λ©λλ€. λ¨, μλ¦¬λ² μ΄ν°κ° μμΉν΄ μλ μΈ΅κ³Ό λ²νΌμ κ°μ λν κ²°κ³Όκ° 0λ³΄λ€ μμΌλ©΄ μλ¦¬λ² μ΄ν°λ μμ§μ΄μ§ μμ΅λλ€. λ―Όμμ μΈκ³μμλ 0μΈ΅μ΄ κ°μ₯ μλμΈ΅μ΄λ©° μλ¦¬λ² μ΄ν°λ νμ¬ λ―Όμκ° μλ μΈ΅μ μμ΅λλ€.
λ§λ²μ μλ¦¬λ² μ΄ν°λ₯Ό μμ§μ΄κΈ° μν΄μ λ²νΌ ν λ²λΉ λ§λ²μ λ ν κ°λ₯Ό μ¬μ©νκ² λ©λλ€.μλ₯Ό λ€μ΄, 16μΈ΅μ μλ λ―Όμκ° 0μΈ΅μΌλ‘ κ°λ €λ©΄ -1μ΄ μ ν λ²νΌμ 6λ², -10μ΄ μ ν λ²νΌμ 1λ² λλ¬ λ§λ²μ λ 7κ°λ₯Ό μλͺ¨νμ¬ 0μΈ΅μΌλ‘ κ° μ μμ΅λλ€. νμ§λ§, +1μ΄ μ ν λ²νΌμ 4λ², -10μ΄ μ ν λ²νΌ 2λ²μ λλ₯΄λ©΄ λ§λ²μ λ 6κ°λ₯Ό μλͺ¨νμ¬ 0μΈ΅μΌλ‘ κ° μ μμ΅λλ€.
λ§λ²μ λμ μλΌκΈ° μν΄ λ―Όμλ νμ μ΅μνμ λ²νΌμ λλ¬μ μ΄λνλ €κ³ ν©λλ€. λ―Όμκ° μ΄λ€ μΈ΅μμ μλ¦¬λ² μ΄ν°λ₯Ό νκ³ 0μΈ΅μΌλ‘ λ΄λ €κ°λλ° νμν λ§λ²μ λμ μ΅μ κ°μλ₯Ό μκ³ μΆμ΅λλ€. λ―Όμμ λ§λ²μ μλ¦¬λ² μ΄ν°κ° μλ μΈ΅μ λνλ΄λ μ μ storey κ° μ£Όμ΄μ‘μ λ, 0μΈ΅μΌλ‘ κ°κΈ° μν΄ νμν λ§λ²μ λμ μ΅μκ°μ return νλλ‘ solution ν¨μλ₯Ό μμ±νμΈμ.
λ΄ νμ΄
μ²μμλ λ²νΌλλ‘ 100μΌλ‘ λλκ³ , 10μΌλ‘ λλλ©° λ¬Έμ λ₯Ό νμλλ° μ λμ§ μμλ€.
κ·Έλμ λ€λ₯Έ μ¬λμ νμ΄λ₯Ό μ°Έκ³ νμ¬ λ―Όμκ° μλ μΈ΅μ 10μ© λλ κ°λ©° 1μ μ리 μμ λν μ²λ¦¬λ₯Ό μ°¨κ·Όμ°¨κ·Ό ν΄λκ°λ λ¬Έμ κ° νλ Έλ€. 1μ μ리 μμ λν μ²λ¦¬λ μ½λμ μ£ΌμμΌλ‘ μ μ΄ λμλ€.
#include <string>
#include <vector>
using namespace std;
int solution(int storey) {
int answer = 0;
while(storey > 0)
{
int n = storey % 10; // 1μ μ리μ μ
storey /= 10; // μ리μ μ€λ₯Έμͺ½μΌλ‘ 1μΉΈμ© μ΄λ
// 1) 1μ μ리μκ° 5λ―Έλ§μΌ λ,
// nλ§νΌ λ²νΌ λλ₯΄κΈ°
if(n < 5)
{
answer += n;
}
// 2) 1μ μ리μκ° 5μ΄κ³ΌμΌ λ,
// ν μ리 μ μ λ²νΌ 1λ² λλ₯΄κ³ 10-nλ§νΌ λ²νΌ λλ₯΄κΈ°
else if(n > 5)
{
++storey;
answer += 10-n;
}
// 3) 1μ μ리μκ° 5μΌ λ,
// λ€μ μ리μκ° 5μ΄μμ΄λ©΄ 2λ²
// λ€μ μ리μκ° 5λ―Έλ§μ΄λ©΄ 1λ²
// ex- 65 : 1λ² -> 11λ², 2λ² 9λ²
// - 45 : 1λ² -> 9λ², 2λ² 10λ²
else
{
int test = storey % 10;
if(test >= 5)
{
++storey;
}
answer += n;
}
}
return answer;
}
'π₯οΈ Study Note > Coding Test' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[νλ‘κ·Έλλ¨Έμ€]level.2 - 124 λλΌμ μ«μ(C++) (0) | 2023.07.14 |
---|---|
[νλ‘κ·Έλλ¨Έμ€]level.2 - κ΄νΈ νμ νκΈ°(C++) (0) | 2023.07.12 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - λ°°λ¬(C++) (0) | 2023.07.10 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - λ ν ν© κ°κ² λ§λ€κΈ°(C++) (0) | 2023.07.04 |
[νλ‘κ·Έλλ¨Έμ€]level.2 - Nκ°μ μ΅μ곡배μ(C++) (0) | 2023.07.03 |