ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / λ‹€μŒ 큰 숫자(C++)

2023. 5. 1. 01:31Β·πŸ–₯️ Study Note/Coding Test

https://school.programmers.co.kr/learn/courses/30/lessons/12911

문제 μ„€λͺ…

μžμ—°μˆ˜ n이 μ£Όμ–΄μ‘Œμ„ λ•Œ, n의 λ‹€μŒ 큰 μˆ«μžλŠ” λ‹€μŒκ³Ό 같이 μ •μ˜ ν•©λ‹ˆλ‹€.

  • 쑰건 1. n의 λ‹€μŒ 큰 μˆ«μžλŠ” n보닀 큰 μžμ—°μˆ˜ μž…λ‹ˆλ‹€.
  • 쑰건 2. n의 λ‹€μŒ 큰 μˆ«μžμ™€ n은 2μ§„μˆ˜λ‘œ λ³€ν™˜ν–ˆμ„ λ•Œ 1의 κ°―μˆ˜κ°€ κ°™μŠ΅λ‹ˆλ‹€.
  • 쑰건 3. n의 λ‹€μŒ 큰 μˆ«μžλŠ” 쑰건 1, 2λ₯Ό λ§Œμ‘±ν•˜λŠ” 수 쀑 κ°€μž₯ μž‘μ€ 수 μž…λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄μ„œ 78(1001110)의 λ‹€μŒ 큰 μˆ«μžλŠ” 83(1010011)μž…λ‹ˆλ‹€.

μžμ—°μˆ˜ n이 λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ, n의 λ‹€μŒ 큰 숫자λ₯Ό return ν•˜λŠ” solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Όμ„Έμš”.

μ œν•œ 사항

  • n은 1,000,000 μ΄ν•˜μ˜ μžμ—°μˆ˜ μž…λ‹ˆλ‹€.

μž…μΆœλ ₯ 예

n result
78 83
15 23

μž…μΆœλ ₯ 예 μ„€λͺ…

μž…μΆœλ ₯ 예#1

문제 μ˜ˆμ‹œμ™€ κ°™μŠ΅λ‹ˆλ‹€.

μž…μΆœλ ₯ 예#2

15(1111)의 λ‹€μŒ 큰 μˆ«μžλŠ” 23(10111)μž…λ‹ˆλ‹€.

λ‚΄ ν•΄λ‹΅

#include <string>
#include <vector>
#include <iostream>

using namespace std;

string to_binary(int i)
{
    string s = "";
    while(i > 0)
    {
        if(i%2 == 1)
             s += "1";
        else
            s += "0";
        
        i = i/2;
    }
    return s;
}

int count_1(const string binary)
{
    int c = 0;
    for(const auto& s : binary)
    {
        if(s == '1')
            ++c;
    }
    return c;
}

int solution(int n) 
{
    int c = count_1(to_binary(n));
    int answer = n+1;
    while(true)
    {
        int i = count_1(to_binary(answer));
        if(i == c)
            break;
        
        ++answer;
    }
    
    return answer;
}

손가락이 λΆ€λŸ¬μ§€κ³  첫 μ½”ν…Œ;; ν•œ μ†μœΌλ‘œ 치기 λ„ˆλ¬΄ νž˜λ“€μ—ˆλ‹€.

μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€ (μƒˆμ°½μ—΄λ¦Ό)

'πŸ–₯️ Study Note > Coding Test' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.1 / λ‚˜λ¨Έμ§€κ°€ 1이 λ˜λŠ” 수 μ°ΎκΈ°(C++)  (0) 2023.05.06
ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / 짝지어 μ œκ±°ν•˜κΈ°(C++)  (0) 2023.05.06
ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / ν”Όλ³΄λ‚˜μΉ˜ 수(C++)  (0) 2023.04.25
[λ°±μ€€] 였λͺ©(C++)  (0) 2023.04.24
ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.1 / μžμ—°μˆ˜ λ’€μ§‘μ–΄ λ°°μ—΄λ‘œ λ§Œλ“€κΈ°(C++)  (1) 2023.04.23
'πŸ–₯️ Study Note/Coding Test' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.1 / λ‚˜λ¨Έμ§€κ°€ 1이 λ˜λŠ” 수 μ°ΎκΈ°(C++)
  • ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / 짝지어 μ œκ±°ν•˜κΈ°(C++)
  • ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / ν”Όλ³΄λ‚˜μΉ˜ 수(C++)
  • [λ°±μ€€] 였λͺ©(C++)
Beankong_
Beankong_
μ£Όλ‹ˆμ–΄ ν΄λΌμ΄μ–ΈνŠΈ ν”„λ‘œκ·Έλž˜λ¨Έ 곡뢀 기둝
  • Beankong_
    Beankong's Devlog
    Beankong_
  • 전체
    였늘
    μ–΄μ œ
    • 전체 κΈ€ (146)
      • β›… Daily (0)
      • πŸ–₯️ Study Note (2)
        • C++ (1)
        • Unreal Engine (5)
        • Coding Test (123)
        • Design Patteren (5)
        • VCS (Git..) (1)
        • Server (1)
      • 🧭 Devlog (8)
        • μ˜€λ‹΅λ…ΈνŠΈ (4)
        • UE5 GameLift Server Test Project (1)
        • TIL (3)
  • λΈ”λ‘œκ·Έ 메뉴

    • 링크

    • 곡지사항

    • 인기 κΈ€

    • νƒœκ·Έ

      UnrealEngine5
      ν—¬ν…Œμ΄μ»€
      ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€
      unrealengine module
      programmers
      μ΅œλ‹¨ 거리 μ•Œκ³ λ¦¬μ¦˜
      unrealengine build system
      κ²Œμž„ν”„λ‘œκ·Έλž˜λ°
      ν”„λ£Œκ·Έλž˜λ¨ΈμŠ€
      OnlineSubsystem
      UnrealEngine
      κ²Œμž„ λͺ¨μž‘
      μ•Œκ³ λ¦¬μ¦˜
      κ²Œμž„ ν”„λ‘œκ·Έλž˜λ°
      κ²Œμž„ 개발
      propertyaccess
      μ½”λ”©ν…ŒμŠ€νŠΈ
      그리디(greedy)
      cpp
      κ·Έλž˜ν”„ 순회
    • 졜근 λŒ“κΈ€

    • 졜근 κΈ€

    • hELLOΒ· Designed Byμ •μƒμš°.v4.10.3
    Beankong_
    ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ / level.2 / λ‹€μŒ 큰 숫자(C++)
    μƒλ‹¨μœΌλ‘œ

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”