"혼자 빠르게 가는 것보다, 함께 멀리 깊게 가는 것을 지향합니다." 다양한 사람들과 매일 알고리즘 문제를 해결하고, 상호 코드 리뷰를 통해 최적의 해답을 찾아가는 학습 저장소입니다.
단순히 정답을 맞히는 것(Solved)에 그치지 않고, '왜(Why)' 그렇게 풀었는지 설명할 수 있어야 합니다.
- Consistency (지속성): 7일 5문제 이상 해결하며 감각을 유지합니다.
- Clean Code (가독성): 남이 읽기 쉬운 변수명과 로직을 고민합니다.
- Code Review (상호 피드백): PR을 통해 서로의 코드를 리뷰하며 시간/공간 복잡도를 최적화합니다.
GitHub Flow를 기반으로, 실제 현업과 유사한 협업 방식을 차용하여 학습합니다.
- Fork & Clone: 메인 저장소를 Fork하여 개인 리포지토리에서 작업합니다.
- Solve & Doc: 문제를 해결하고, 접근 방식과 시간 복잡도($O(n)$)등을 Github 또는 블로그에 정리합니다.
- Pull Request (PR): 해결한 코드를 메인 저장소로 PR을 보냅니다.
-
Code Review (Mandatory):
- 매일 동료의 PR을 최소 1개 이상 리뷰해야 합니다.
- 개선점이나 더 효율적인 알고리즘이 있다면 코멘트를 남깁니다.
- 리뷰가 완료된 PR만 Merge 될 수 있습니다.
- Merge: 코드 리뷰가 반영된 최종 코드를 메인 브랜치에 병합합니다.
가독성을 위해 커밋 메시지 컨벤션을 통일합니다.
[플랫폼] 문제이름 / 난이도 / 걸린시간- 예시:
[BOJ] 토마토 / 골드5 / 40분
- PR 제목:
[이름] 날짜 - 문제명 - 내용: 문제의 핵심 로직이나 트러블 슈팅 과정을 간략히 요약합니다.
우리는 비난이 아닌 비판과 제안을 합니다.
- 💡 : 로직에 대한 새로운 아이디어나 더 나은 접근 방식 제안
- ❓ : 코드가 이해되지 않아 설명이 필요한 경우
- 🐛 : 버그 가능성이 보이거나 예외 처리가 미흡한 경우
- 👍 : 깔끔하고 효율적인 코드에 대한 칭찬
체계적인 관리를 위해 폴더 구조를 통일합니다.
/
├── [User_Name]/
│ ├── [Problem_Name]/
│ │ ├── Name.py # 소스 코드
│ │ └── Name.md # 문제 풀이 및 접근법 서술 or 블로그에 서술
├── [User_Name]/
...