Skip to content

isho-0/Programmers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Programmers C++ Solutions

이 레포지토리는 프로그래머스(Programmers) 문제들을 C++로 디버깅하며 풀고, 그 풀이와 생각 과정을 기록하는 개인 성장용 프로젝트입니다.
단순히 정답만 모아두는 것이 아니라, 디버깅 과정과 사고 흐름을 정리하는 것을 목표로 합니다.


개발 환경

  • 언어: C++17
  • IDE: Visual Studio 2026 (Windows)
  • 프로젝트 타입: 콘솔 애플리케이션
  • 빌드 설정: 기본 Debug/Release, Win32/x64 구성

풀이 워크플로우

1. main.cc에서 먼저 풀기

  1. 새로운 문제를 풀 때는 항상 main.cc에서 직접 코드 작성을 시작합니다.
  2. 디버거를 사용해 입력·출력, 중간 상태를 확인하면서 문제를 해결합니다.
  3. 원하는 출력/정답이 정확히 나올 때까지 main.cc에서만 수정·실험합니다.

이 단계는 “연습장 + 디버깅 전용 공간”입니다.
구조보다는 정답에 도달하는 과정이해에 집중합니다.


2. 정답이 나오면 라벨링: solution_문제번호

정답이 검증되면 main.cc 안의 풀이 코드를 함수로 감싸고, 아래 규칙으로 라벨링합니다.

  • 형식: solution_문제번호
    • 예: solution_12954, solution_118666
  • 목적
    • 문제별 검색을 쉽게 하기 위함
    • 한 파일 안에서 여러 문제 풀이를 함께 관리하기 위함

정리 시에는 다음을 함께 진행합니다.

  • 불필요한 디버그 출력 제거
  • 변수명, 들여쓰기 등 최소한의 코드 정리
  • 나중에 다른 파일로 옮겨도 바로 사용할 수 있는 형태로 정돈

3. 레벨별 분류 계획 (#pragma region + problems/ 폴더)

나중에는 문제들을 레벨(Level) 별로 정리할 예정입니다.

3-1. main.cc 내부 구조

  • main.cc 안에서 레벨별 문제 구간을 #pragma region 으로 감쌀 예정입니다.
    • 예시:
      • #pragma region LEVEL0
      • #pragma region LEVEL1
    • 각 region 안에 해당 레벨의 solution_문제번호들을 모아둡니다.
  • main()에서는 디버깅하고 싶은 solution_문제번호를 직접 호출하여 실행합니다.

3-2. 실제 파일 구조 (problems/levelX/)

실제 프로젝트 디렉터리 구조는 아래와 같이 구성합니다.

Programmers/
┣ main.cc
┗ problems/
    ┣ level0/
    ┣ level1/
    ┣ level2/
    ┗ level3/


새로운 문제를 추가하는 방법

  1. main.cc에 새 문제 풀이 코드를 작성합니다.
  2. 디버거로 충분히 확인해 정답이 맞는지 검증합니다.
  3. 풀이를 함수로 감싸고 solution_문제번호 형식으로 이름을 부여합니다.
  4. 필요하다면 해당 레벨에 맞는 #pragma region 안으로 이동시키거나, 추후 problems/levelX/ 폴더로 분리합니다.

목표

  • C++ 문법과 STL 활용 능력 향상
  • 디버깅 능력 및 문제 접근 방식 개선
  • 나중에 다시 봐도 이해할 수 있는 정리된 풀이 아카이브 만들기

About

프로그래머스(Programmers) C++ 문제 풀이 및 디버깅 기록 저장소

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages