Giter VIP home page Giter VIP logo

sogang-algorithm-study's Introduction

BEST-WINNING (최고이김)

🚀 서강대생들끼리 코딩테스트를 함께 준비하는 공간입니다. 🚀

Since 2022.05.26 ~ 2023.05.28


Collaborator


김동윤

이정모

최건

최어진


Study-Rule

  • 모임 시간 : 매주 일요일 10PM (2023.03.26 기준)
  • 분량 : 매주 4문제 (2023.03.26 기준)
  • 스터디 중에는 스터디원들이 각자 선정한 문제에 대한 솔루션 및 피드백 진행
  • 문제에 대해 설명해야 하는 알고리즘이 있을 시, 부가적인 설명 가능
  • 스터디 완료 후, 스터디원들은 다음날 정오까지 카톡방에 자신이 이번 주차 배정받은 주제에 대해서 백준 문제를 하나 선정해 번호 및 제목 공유
  • 각자 공부하는 과정에서 참고할 만한 좋은 자료가 있으면 소스(블로그) 공유

Late-fee

  • 지각 : 스터디 전(~ 10PM)까지 PR 만들기 -> 1문제 누락 당 500원
  • 결석 : 사전 사유 / 통보 없이 회의 참석하지 않을 시 -> 1회당 1000원
  • 총무 : 최고최건
  • 사용 방식 : 모인 벌금은 회식 때 사용

Repository-Rule

  • Branch naming convention
    • 자신의 이름으로 branch를 만듭시다!
    • (ex) git branch [자신의 Github Nickname]
  • Commit convention
    • Commit Message: 성명 : n주차 m번 풀이
    • (ex) 김동윤 : 1주차 103827번 풀이
  • Pull Request convention
    • PR 제목 : 김동윤 : n주차 문제풀이
    • (ex) 김동윤 1주차 문제풀이
    • PR 내용 : 빈 내용 혹은 자유

Table of Content

  • 문제 풀이 플랫폼은 백준(acmicpc.net)을 기준으로 선정

1차 알고리즘 문제풀이 순서 (기간: 11주)

  • 해당 주차에 공통으로 주어진 주제에 대해 1문제 혹은 2문제씩 선정
    • 2문제를 선정하는 사람은 돌아가면서 지정
    • 주차 당 6문제씩 풀이
  • 주차 별 공통 주제
    • 1주차. 스택 (6-2) ✅
    • 2주차. 큐 (6-9) ✅
    • 3주차. 힙 & 우선순위 큐 (6-16) ✅
    • 4주차. 그래프 탐색-1 완전탐색 (6-23) ✅
    • 5주차. 그래프 탐색-2 DFS (6-30) ✅
    • 6주차. 그래프 탐색-3 BFS (7-7) ✅
    • 7주차. 다이나믹 프로그래밍 (7-14) ✅
    • 8주차. 구현 & 시뮬레이션 (7-21) ✅
    • 9주차. 그리디 알고리즘 (7-28) ✅
    • 10주차. 이분탐색 (8-6) ✅
    • 11주차. 분할정복 (8-11) ✅

2차 알고리즘 문제풀이 (기간: 22주)

  • 해당 주차에 각자 주어진 주제에 대해 1문제씩 선정
    • 주차 당 4문제씩 풀이 (17주차부터 6문제 -> 4문제로 변경)

3차 알고리즘 문제풀이 (기간: 5주)

  • 1차, 2차 기간 동안 스터디원 개개인이 풀어보지 못하고 지나갔던 문제들에 대해서 매주 1문제씩 선정
    • 주차 당 4문제씩 풀이

주차 별 문제 선정 세부 기록

주차 주제 김동윤 이정모 최건 최어진
1주차 스택 2304번: 창고 다각형
2841번: 외계인의 기타연주
2800번: 괄호 제거
2493번: 탑
4889번: 안정적인 문자열
1935번: 후위표기식 2
2주차 5404번: 주차장
13335번: 트럭
3190번: 뱀
14713번: 앵무새
20923번: 숫자 할리갈리 게임
3주차 힙 & 우선순위 큐 11000번: 강의실 배정
19598번: 최소 회의실 개수
13975번: 파일 합치기 3
11286번: 절댓값 힙
15903번: 카드 합체 놀이
14235번: 크리스마스 선물
4주차 그래프 완전 탐색 2589번: 보물섬
15686번: 치킨 배달
2116번: 주사위 쌓기 1759번: 암호 만들기
3980번: 선발 명단
14225번: 부분수열의 합
5주차 DFS 13023번: ABCDE 1926번: 그림
2636번: 치즈
10026번: 적록색약 14267번: 회사 문화 1
15900번: 나무 탈출
6주차 BFS 4179번: 불! 7569번: 토마토 5014번: 스타트링크
1939번: 중량제한
18112번: 이진수 게임
12851번: 숨바꼭질 2
7주차 DP 12865번: 평범한 배낭
9251번: LCS
2056번: 작업 2294번: 동전 2
1309번: 동물원
20925번: 메이플스토리
8주차 구현 & 시뮬레이션 14499번: 주사위 굴리기 1091번: 카드 섞기
16509번: 장군
14503번: 로봇 청소기 2563번: 색종이
14890번: 경사로
9주차 그리디 1041번: 주사위 19539번: 사과나무 12904번: A와 B
1715번: 카드 정렬하기
1700번: 멀티탭 스케줄링
1202번: 보석 도둑
10주차 이분 탐색 3151번: 합이 0
1253번: 좋다
9024번: 두 수의 합 2470번: 두 용액
2022번: 사다리
8983번: 사냥꾼
11주차 분할 정복 2630번: 색종이 만들기 1074번: Z 18291번: 비요뜨의 징검다리 건너기 6549번: 히스토그램에서 가장 큰 직사각형
12주차 프로그래머스 2018 카카오 Blind Recruitment 추석 트래픽
뉴스 클러스터링
셔틀버스
프렌즈 4블록
캐시
비밀지도
13주차 백준 - 자유 3055번: 탈출
20924번: 트리의 기둥과 가지
17225번: 세훈이의 선물가게
1389번: 케빈 베이컨의 6단계 법칙
13904번: 과제 2887번: 행성 터널
14주차 백준 - 자유 16120번: PPAP 14575번: 뒤풀이 2565번: 전깃줄
2447번: 별 찍기 - 10
14891번: 톱니바퀴
9935번: 문자열 폭발
15주차 백준 - 자유 2206번: 벽 부수고 이동하기
16953번: A → B
15486번: 퇴사 2
19638번: 센티와 마법의 뿅망치
1707번: 이분 그래프 16929번: Two Dots
16주차 백준 - 자유 1477번: 휴게소 세우기 1992번: 쿼드트리 21610번: 마법사 상어와 비바라기
17298번: 오큰수
5430번: AC
21758번: 꿀 따기
17주차 백준 - 자유 23843번: 콘센트 1743번: 음식물 피하기 1405번: 미친 로봇 2412번: 암벽 등반
18주차 백준 - 자유 10844번: 쉬운 계단 수 14719번: 빗물 2212번: 센서 2866번: 문자열 잘라내기
19주차 백준 - 자유 1914번: 하노이 탑 1863번: 스카이라인 쉬운거 22234번: 가희와 은행 16236번: 아기 상어
20주차 백준 - 자유 16928번: 뱀과 사다리 게임 2564번: 경비원 16928번: 뱀과 사다리 게임 18353번: 병사 배치하기
21주차 백준 - 자유 16918번: 봄버맨 13164번: 행복 유치원 5904번: Moo 게임 2261번: 가장 가까운 두 점
22주차 백준 - 자유 1662번: 압축 3107번: IPv6 1374번: 강의실 11404번: 플로이드
23주차 백준 - 자유 1325번: 효율적인 해킹 16197번: 두 동전 14852번: 타일 채우기 3 8911번: 거북이
24주차 백준 - 자유 21608번: 상어 초등학교 14938번: 서강그라운드 14728번: 벼락치기 1194번: 달이 차오른다, 가자.
25주차 백준 - 자유 11509번: 풍선 맞추기 2002번: 추월 1987번: 알파벳 20055번: 컨베이어 벨트 위의 로봇
26주차 백준 - 자유 5972번: 택배 배송 11909번: 배열 탈출 2812번: 크게 만들기 1717번: 집합의 표현
27주차 백준 - 자유 1197번: 최소 스패닝 트리 2608번: 로마 숫자 2146번: 다리 만들기 2579번: 계단 오르기
28주차 백준 - 자유 1744번: 수 묶기 14500번: 테트로미노 7490번: 0 만들기 17144번: 미세먼지 안녕!
29주차 백준 - 자유 1504번: 특정한 최단 경로 2240번: 자두나무 2170번: 선 긋기 1764번: 듣보잡
30주차 백준 - 자유 15685번: 드래곤 커브 2468번: 안전 영역 2533번: 사회망 서비스(SNS) 2829번: 아름다운 행렬
31주차 백준 - 자유 2290번: LCD Test 1461번: 도서관 5052번: 전화번호 목록 17143번: 낚시왕
32주차 백준 - 자유 16234번: 인구 이동 2615번: 오목 12869번: 뮤탈리스크 1946번: 신입 사원
33주차 백준 - 자유 15927번: 회문은 회문아니야!! 14391번: 종이 조각 14891번: 톱니바퀴
34주차 백준 - 아쉬웠던 문제 돌아보기 1863번: 스카이라인 쉬운거 (19주차) 15927번: 회문은 회문아니야!! (33주차) 2493번: 탑 (1주차) 13023번: ABCDE (5주차)
35주차 백준 - 아쉬웠던 문제 돌아보기 17225번: 세훈이의 선물가게 (13주차) 1194번: 달이 차오른다, 가자. (24주차) 2206번: 벽 부수고 이동하기 (15주차)
21610번: 마법사 상어와 비바라기 (16주차)
36주차 백준 - 아쉬웠던 문제 돌아보기 1946번: 신입 사원 (32주차) 1759번: 암호 만들기 (4주차) 14500번: 테트로미노 (28주차) 21610번: 마법사 상어와 비바라기 (16주차)
37주차 백준 - 아쉬웠던 문제 돌아보기 2240번: 자두나무 (29주차) 1461번: 도서관 (31주차) 2887번: 행성 터널 (13주차)
38주차 (마지막) 백준 - 아쉬웠던 문제 돌아보기 1446번: 지름길 14728번: 벼락치기 (24주차) 1744번: 수 묶기 (28주차) 5430번: AC (16주차)

Github Tutorial

  1. 현재 Repository를 Clone합니다.
git clone https://github.com/SogangCodingTest/SogangCodingFighter.git [새로운 폴더 이름]
cd [새로운 폴더 이름]
  1. 자신의 Github Nickname으로 branch를 생성합니다.
git branch [자신의 Github Nickname]
  1. 자신이 풀이한 문제에 대한 코드는 Week00/본인 이름/문제번호.py에 저장합니다. 이후 아래 컨벤션에 따라 커밋합니다. 이후 원격 저장소 상의 본인의 닉네임 브랜치로 푸시합니다.
git add Week00/본인 이름/문제번호.py
git commit -m "1주차 9999번 풀이"
git push origin [자신의 Github Nickname]
  1. 해당 주차의 문제풀이는 하나의 Pull Request 단위로 제출하는 것을 원칙으로 합니다. PR의 내용은 필수가 아니며, 각자가 공부한 내용을 기록하기 편리하도록 활용합니다.

image

Pull Request 작성 예시

  1. 스터디를 진행하고 난 후엔 PR을 main 브랜치로 병합합니다. 각자의 브랜치는 삭제하지 않도록 주의하세요!


1차 작성자

김동윤
2차 편집자

최어진

sogang-algorithm-study's People

Contributors

myway00 avatar poodlepoodle avatar marsman13 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.