Thanks to visit codestin.com
Credit goes to github.com

Skip to content

코딩 테스트 일일 학습 저장소 | 프로그래머스 문제 풀이 + 로컬 테스트 환경 (자동 시간/메모리 측정) + 다중 구현 비교 테스트

License

Notifications You must be signed in to change notification settings

homveloper/CoTe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CoTe: 코딩 테스트 문제 풀이 저장소

매일 코딩 테스트 문제를 풀고 학습 과정을 기록하는 저장소입니다.

어려울 때 마다 보기

  • 하나의 문제를 여러개의 논리적인 분석, 사고 단계로 나누어서 접근하자.

  • 문제를 푸는 과정을 게속해서 기록하자.

    • 내가 어디까지 문제 풀이 과정을 생각했고, 왜 그 이상으로 넘어가지 못했는지 파악할 수 있도록 기록해야 한다.
    • 문제를 보고 어떤 알고리즘을 사용하려 했는지, 그 근거와 과정을 코드로 어떻게 구현하려 했는지를 기록해야 한다.
  • 시험 치듯이 공부하자.

    • 실제 시험 시간 처럼 제한된 시간내에 생각하고 테스트 케이스를 만들고, 구현하고 해결하자.
  • 이해할 때 까지 게속하자.

    • 문제를 이해 하지 못했다면, 자료 조사를 하고 AI에게 물어보고, 왜 내가 이해하지 못했는지 등을 문서로 보관한다.
    • 필요에 따라서는 글 뿐만 아니라 시각적인 텍스트, 이미지로 기록한다.

고민 없이 풀는 방법은 없을까?

학습 목표

  • 다양한 알고리즘과 자료구조 이해 및 습득
  • 문제 해결 능력 및 사고 과정 정리
  • 시간과 공간 복잡도 분석 능력 개발
  • 꾸준한 학습과 성장 기록

문제 풀이 기록

번호 주제 문제명 난이도 플랫폼 상태
001
002
003

진행 상황에 따라 업데이트됩니다.

알고리즘별 분류

해시 (Hash)

  • #해시

스택/큐 (Stack/Queue)

  • #스택 #큐

정렬 (Sort)

  • #정렬

탐색 (Search)

  • #DFS #BFS #이진탐색

동적계획법 (Dynamic Programming)

  • #DP

그래프 (Graph)

  • #그래프 #최단경로

그리디 (Greedy)

  • #그리디

문자열 (String)

  • #문자열

구현 (Implementation)

  • #구현

수학 (Math)

  • #수학 #조합론

사용 방법

1. 새 문제 폴더 생성

# 템플릿 폴더 복사 (번호_주제_문제명으로 이름 변경)
cp -r _template 001_해시_두개뽑아서더하기
cd 001_해시_두개뽑아서더하기

2. 테스트 케이스 작성

# test.py에서 test_cases 배열을 채우기
test_cases = [
    # 여러 매개변수: 튜플 사용
    {"name": "...", "input": (1, 2, 3), "expected": 6},

    # 단일 매개변수: 리스트/문자열/숫자 등
    {"name": "...", "input": [1, 2, 3], "expected": [1, 2, 3]},
]

# 규칙: 튜플 = 언팩(여러 인자), 그 외 = 단일 인자

3. 로컬 테스트

# test.py 실행 (테스트 케이스 정의한 후)
python3 test.py

# 출력: 통과/실패, 시간, 메모리 측정
# test.py가 solution.py의 함수를 run_tests에 전달하여 실행

다른 구현으로 테스트 (선택):

# test.py에 추가로 작성
def my_solution(nums):
    return sorted(nums)

run_tests(my_solution, test_cases)  # 다른 구현 테스트

4. 풀이 작성

  • README.md: 문제명, 해시태그, 풀이 과정, 회고 작성
  • solution.py: 순수 풀이 코드만 작성 (프로그래머스 제출용)

5. 프로그래머스 제출

  • solution.pysolution 함수 코드를 프로그래머스에 복사해서 제출

6. 커밋

# 완료 후 메인 README.md 테이블에 추가하고 커밋
git add .
git commit -m "add(001_해시) : 두개뽑아서더하기 문제 풀이"

폴더명 예시

  • 001_해시_두개뽑아서더하기/
  • 002_해시_완주하지못한선수/
  • 003_스택_올바른괄호/
  • 004_정렬_가장큰수/

학습 통계

  • 총 풀이 문제 수: 0
  • 평균 풀이 시간: -
  • 가장 자주 사용한 알고리즘: -

각 문제별 상세한 풀이 과정은 해당 폴더의 README.md를 참고하세요.

About

코딩 테스트 일일 학습 저장소 | 프로그래머스 문제 풀이 + 로컬 테스트 환경 (자동 시간/메모리 측정) + 다중 구현 비교 테스트

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages