스터디 기간 내 solved.ac 의 클래스 5 까지의 모든 문제의 알고리즘을 이해하고 간단히 응용할 수 있다.
- 1주일에 2회 (월,금) 진행
- 회당 한 개의 알고리즘에 대하여 난이도 상,중,하 에 해당하는 문제를 각자 풀이한다.
- 풀이할 때 상대방이 이해할 수 있을 정도의 주석을 달아야 한다.
- 사용하는 언어에 제약은 없다. 권장하는 언어는 C++, Python3, Java 이다.
- 스터디 날짜에 매칭된 상대방과 카톡 또는 메일로 시간을 잡고, 해당 시간에 코드 설명 및 질문을 진행한다. (권장: 본인이 짠 코드를 설명하기 및 질문 답변 (15분 ~ 20분), 상대방이 짠 코드 설명 듣기 및 질문 (15분 ~ 20분)
- Zoom 또는 원격 회의 프로그램(예시)의 화면 공유를 통해 1인당 n명한테 설명을 해야 한다.(대부분 1:1 로 진행되지만, 불가피하게 한명이 참석하지 못하는 경우 최대 2명과 설명을 진행 할 수도 있음)
- 본인의 파트너가 Pull Request를 올린 후 본인이 파트너의 Pull Request에 코드 평가를 적고 Merge 한다.
- 활발한 질문이나 지적 지향
- 터미널에 git clone https://github.com/Algorithm-Passport/AlgorithmStudy.git <원하는폴더명> 을 입력한다.
- cd <원하는폴더명> 으로 클론한 폴더에 들어간다.
- master 브렌치에서 git checkout -b <브랜치명> 을 입력한다. (항상 브렌치 만들기전에 pull(git pull -a)하고 만들것!)
- cd src 로 src 폴더에 들어간다.
- src 폴더에 본인의 닉네임의 폴더를 만들고 그 폴더로 들어간다. (처음에 1번만 만들면 됨)
- 이제 본인의 닉네임의 폴더에 주차별로 폴더를 생성한 뒤 c나 파이썬 파일을 만들고 문제를 푼다.
- 문제를 다 풀었으면 깃허브에 푸쉬한다. (주의 : 항상 본인의 브랜치로 푸쉬해야함.!) (예) git add . -> git commit -m “test” -> git push origin <본인의브랜치명>
- 푸쉬했으면 깃허브로 돌아와서 본인의 브렌치를 master 브렌치로 pull request을 날리면 된다.(PR을 날릴때 본인 깃허브 아이디 <20xx.0x.xx> 형식으로 날릴것)
- 그 주차 파트너가 PR을 확인후 상대방 깃허브 아이디 <20xx.0x.xx> 형식으로 마스터 브렌치에 머지해주기
- 주차별로 3번과정으로 돌아가 반복하면 된다.
- 분할 정복
- 베낭 문제
- 해시맵
- 트리
- 다이내믹 프로그래밍
- 그리디 알고리즘
- 문자열
- 비트마스킹