/SSAFY5th_13_4_Algo_Study

SSAFY 5기 - 서울 13반 알고리즘 스터디 4조 ✏

Primary LanguageJava

💡 알고리즘 스터디 💡

SSAFY 5기 서울 13반 알고리즘 스터디 기록

  • 서울 13반 4조 문성욱
  • 서울 13반 4조 조다운
  • 서울 13반 4조 조현민
  • 서울 13반 4조 최혜원

📌 Rule

각자 문제를 선정하여 매주 4~12문제를 풉니다. 매주 월요일 카카오톡 공지방에 댓글로 문제를 등록합니다.

  • ❗❗ 문제풀이 마감 : 매주 일요일 20:00 까지
  • ❕❕ 리뷰 마감 : 매주 월요일 23:59 까지

📌 Convention

1️⃣ Code Convention

각 코드 별 목적을 주석으로 작성합니다. 변수와 함수 이름 또한 역할을 알 수 있도록 간단한 주석을 덧붙입니다.


2️⃣ Project Convention

각 멤버별 프로젝트 구조는 다음과 같습니다 프로젝트이름/week번호/플랫폼_문제번호_레벨_문제이름/...

jodawoooon/week15/BOJ_1051_S3_숫자정사각형/...

3️⃣ Commit Convention

한번에 모든 파일을 add하지 않고 type별로 분리하여 commit 합니다.

docs : README.md 등 문서 작성 및 수정
code : 코드 작성
fix : 코드 수정
add : 기존에 푼 문제에 대한 추가
remove : 코드 및 문서 삭제
merge : pr(pull request)을 통해 자신의 repo에서 원본 repo로 merge하기

적용 예시 ::

  1. BOJ의 1051번 숫자 정사각형 (silver3) 문제를 풀었다면 해당 코드를 하나의 commit으로 분리합니다.
    이 때의 commit message는 다음과 같이 통일합니다

      git commit -m "code : BOJ 1051 S3 숫자정사각형"
    

    해당 코드를 수정할 때의 commit message는 다음과 같이 통일합니다.

      git commit -m "fix : BOJ 1051 S3 숫자정사각형"
    
  2. 코드에 대한 설명을 작성하고 해당 문서를 하나의 commit으로 분리합니다.
    이 때의 commit message는 다음과 같습니다.

     git commit -m "docs : BOJ 1051 S3 숫자정사각형"
    
  3. main README.md 파일을 수정할 때의 commit message는 다음과 같습니다.

      git commit -m "docs : main README update"
    
  4. 파일을 삭제할 경우 commit message는 다음과 같습니다

      git commit -m "remove : 삭제파일"
    

4️⃣ Review Convention

  1. Pull Request의 제목은 다음과 같이 통일합니다. 이름 : 문제플랫폼 문제번호 문제등급 문제제목

      DAUN JO : BOJ 1051 S3 숫자정사각형
    
  2. Pull Request의 comment에는 본인이 작성한 README.md의 내용을 추가합니다.

  3. 문제에 해당하는 유형을 선택하여 PR에 label을 attach하고,
    자신의 PR의 assignee에 자신을 추가 후 문제풀이 week에 해당하는 Milestones을 선택합니다.

  4. 기존에 PR을 작성 후 새로운 문제를 풀었을 경우, 새로운 문제에 대한 commit을 하기 전 다음 과정을 수행합니다.

    • ❓ 코드리뷰가 완료 되었을 경우
      자신의 PR에서 merge 버튼을 눌러 merge 합니다.

    • ❓ 리뷰 완료 전 새로운 문제를 풀 경우

      1. 자신의 local에서 새로 푼 문제에 대한 branch를 생성합니다.
        이 때 branch의 이름을 문제플랫폼-문제번호과 같이 생성하는 것을 권장합니다.

         boj-1051
        
      2. 새로운 문제에 대한 code와 README.md에 대한 commit을 추가 후 push합니다.
        이 때의 commit message는 2️⃣ Commit Convention에서 언급한 규칙에 맞게 설정합니다.

      3. 이 때 반드시 (a)에서 생성한 branch로 push 되는지 확인합니다.

      4. 본인 계정의 fork된 repo에서 Pull Request을 작성할 때,
        코드가 push된 브랜치(a에서 생성한 jodawoooon/boj-1051)에서
        organization repo의 main 브랜치로 Pull Request를 보냅니다.



📌 Solved Problems

🚩 week 1

Type 문제 제목 유형 rank
BOJ 13460 구슬 탈출 2 BFS gold2
BOJ 20055 컨베이어 벨트 위의 로봇 시뮬 silver1
BOJ 17142 연구소 3 BFS gold4
BOJ 14891 톱니바퀴 시뮬 silver1

🚩 week 2

Type 문제 제목 유형 rank
BOJ 2527 직사각형 기하학 silver1
BOJ 2304 창고 다각형 브루트포스 silver2
BOJ 2116 주사위 쌓기 브루트포스 gold5
BOJ 2564 경비원 시뮬 silver1

🚩 week 3

Type 문제 제목 유형 rank
BOJ 17281 브루트포스 gold4
BOJ 16953 A->B DFS silver1
BOJ 14503 로봇청소기 시뮬 gold5
BOJ 14888 연산자 끼워넣기 DFS silver1

🚩 week 4

Type 문제 제목 유형 rank
BOJ 16637 괄호 추가하기 DFS gold3
BOJ 17070 파이프 옮기기 1 DFS gold5
BOJ 17471 게리맨더링 BFS gold5
BOJ 17472 다리 만들기 2 BFS gold2

🚩 week 5

Type 문제 제목 유형 rank
BOJ 14889 스타트와 링크 comb silver3
BOJ 15685 드래곤 커브 시뮬 gold4
BOJ 16234 인구 이동 BFS gold5
BOJ 20056 마법사 상어와 파이어볼 시뮬 gold5

🚩 week 6

Type 문제 제목 유형 rank
BOJ 12763 지각하면 안 돼 플로이드 와샬 gold2
BOJ 6497 전력난 다익스트라 gold4
BOJ 1238 파티 크루스칼 gold3
BOJ 9694 무엇을 아느냐가 아니라 누구를 아느냐가 문제다 다익스트라 gold4

🚩 week 7

Type 문제 제목 유형 rank
BOJ 17071 숨바꼭질 5 BFS gold1
BOJ 1242 소풍 수학 gold2
BOJ 12904 A와 B 문자열 gold5
BOJ 16959 체스판 여행 1 BFS gold1

🚩 week 8

Type 문제 제목 유형 rank
BOJ 16197 두 동전 BFS gold4
BOJ 7579 DP gold3
BOJ 1062 가르침 문자열 gold4
BOJ 2156 포도주 시식 DP silver1

🚩 week 9

Type 문제 제목 유형 rank
BOJ 2234 성곽 BFS gold4
BOJ 14938 서강그라운드 그래프 gold4
BOJ 17822 원판 돌리기 시뮬 gold3
BOJ 2565 전깃줄 DP gold3

🚩 week 10

Type 문제 제목 유형 rank
BOJ 1030 프렉탈 평면 분할 정복 gold3
BOJ 8972 미친 아두이노 시뮬 gold4
BOJ 11967 불켜기 그래프 gold4
BOJ 14719 빗물 구현 gold5

🚩 week 11

Type 문제 제목 유형 rank
BOJ 1915 가장 큰 정사각형 dp silver1
BOJ 13335 트럭 시뮬 silver1
BOJ 3709 레이저빔은 어디로 dfs gold4
BOJ 6087 레이저통신 bfs gold4

🚩 week 12

Type 문제 제목 유형 rank
BOJ 12608 상어 초등학교 시뮬 silver1
BOJ 10836 여왕벌 시뮬 gold4
BOJ 1520 내리막길 dp gold4
BOJ 11559 Puyo Puyo 시뮬 gold5

🚩 week 13

Type 문제 제목 유형 rank
BOJ 14499 주사위 굴리기 시뮬 gold5
BOJ 15787 기차가 어둠을 헤치고 은하수를 비트마스킹 silver2
BOJ 19238 스타트택시 bfs gold4
BOJ 2878 캔디캔디 그리디 gold2

🚩 week 14

Type 문제 제목 유형 rank
BOJ 5014 스타트링크 bfs gold5
BOJ 9935 문자열 폭발 문자열 gold4

🚩 week 15

Type 문제 제목 유형 rank
BOJ 1051 숫자 정사각형 구현 silver3
BOJ 1292 쉽게 푸는 문제 구현 silver5
BOJ 1934 최소공배수 수학 silver5
BOJ 2960 에라토스테네스의 체 수학 silver4
BOJ 3085 사탕 게임 구현 silver4
BOJ 10773 제로 구현 silver4
BOJ 10870 피보나치 수 5 수학 bronze2
BOJ 11068 회문인 수 수학 silver5
BOJ 7568 덩치 구현 silver5
BOJ 1157 단어 공부 구현 bronze1
BOJ 2869 달팽이는 올라가고 싶다 수학 bronze1
BOJ 14646 욱제는 결정장애야!! 구현 silver4

🚩 week 16

Type 문제 제목 유형 rank
BOJ 10546 배부른 마라토너 자료구조 silver4
BOJ 1302 베스트셀러 자료구조 silver4
BOJ 1927 최소 힙 자료구조 silver1
BOJ 2164 카드2 자료구조 silver4
BOJ 2910 빈도 정렬 자료구조 silver3
BOJ 10799 쇠막대기 자료구조 silver3
BOJ 17479 정식당 자료구조 silver3
BOJ 20301 반전 요세푸스 자료구조 silver4
BOJ 1417 국회의원 선거 자료구조 silver5
BOJ 1764 듣보잡 자료구조 silver4
BOJ 7785 회사에 있는 사람 자료구조 silver5
BOJ 12019 Yonsei TOTO 자료구조 silver3

🚩 week 17

Type 문제 유형 rank
Programmers K번째수 정렬 level1
Programmers 가장 큰 수 정렬 level2
Programmers H-Index 정렬 level2
Programmers 모의고사 완탐 level1
Programmers 소수찾기 완탐 level2
Programmers 카펫 완탐 level2

🚩 week 18

Type 문제 유형 rank
Programmers 타겟 넘버 DFS/BFS level2
Programmers 네트워크 DFS/BFS level3
Programmers 단어 변환 DFS/BFS level3
Programmers 여행경로 DFS/BFS level3
Programmers 입국심사 이분탐색 level3
Programmers 징검다리 이분탐색 level4

🚩 week 19

Type 문제 유형 rank
Programmers 가장 먼 노드 그래프 level3
Programmers 순위 그래프 level3
Programmers 방의 개수 그래프 level5
Programmers 더 맵게 level2
Programmers 디스크 컨트롤러 level3
Programmers 이중우선순위큐 level3

🚩 week 20

Type 문제 유형 rank
Programmers 완주하지 못한 선수 해시 level1
Programmers 전화번호 목록 해시 level2
Programmers 위장 해시 level2
Programmers 베스트앨범 해시 level3
Programmers N 으로표현 DP level3
Programmers 정수 삼각형 DP level3

🚩 week 21

Type 문제 유형 rank
Programmers 기능개발 스택/큐 level2
Programmers 프린터 스택/큐 level2
Programmers 다리를 지나는 트럭 스택/큐 level2
Programmers 주식가격 스택/큐 level2
Programmers 등굣길 DP level3
Programmers 도둑질 DP level4

🚩 week 22

Type 문제 유형 rank
BOJ 랜선 자르기 이분 탐색 silver3
BOJ 나무 자르기 이분 탐색 silver3
BOJ 가장 긴 증가하는 부분 수열 2 이분 탐색 gold2
BOJ 공유기 설치 이분 탐색 silver1

🚩 week 23

Type 문제 유형 rank
BOJ 트리 트리 gold5
BOJ 전화번호 목록 트리 gold4
BOJ 이진 검색 트리 트리 silver1
BOJ 사촌 트리 gold4

🚩 week 24

Type 문제 유형 rank
BOJ 문자 해독 슬라이딩 윈도우 gold4
BOJ N번째 큰 수 슬라이딩 윈도우 gold5
BOJ 내려가기 슬라이딩 윈도우 gold4
BOJ 표절 슬라이딩 윈도우 silver3

🚩 week 25

Type 문제 유형 rank
BOJ 최소 스패닝 트리 MST gold4
BOJ 도시 분할 계획 MST gold4
BOJ 행성 연결 MST gold4
BOJ 네트워크 연결 MST gold4

🚩 week 26

Type 문제 유형 rank
Programmers 경주로 건설 최단경로 -
BOJ 특정한 최단 경로 최단경로 gold4
Programmers 합승 택시 요금 최단경로 Lv3
Programmers 배달 최단경로 -

🚩 week 27

Type 문제 유형 rank
BOJ 마법사상어와 비바라기 구현 gold5
BOJ 구현 gold5
BOJ 게리맨더링 2 구현 gold4
BOJ 통나무 옮기기 구현

🚩 week 28

Type 문제 유형 rank
BOJ 감소하는 수 백트래킹 gold5
BOJ 좋은수열 백트래킹 gold4
BOJ 합 구하기 누적합 silver3
BOJ 나머지 합 누적합 gold3

🚩 week 29

Type 문제 유형 rank
BOJ 야근 지수
BOJ 벽 부수고 이동하기 BFS gold4
BOJ 색종이 만들기 분할정복 silver3
BOJ 캠프가는 영식 브루트포스 silver1

🚩 week 30

Type 문제 유형 rank
BOJ 어른 상어 시뮬 gold3
BOJ 등차수열의 개수 수학 gold2
BOJ 마법사 상어와 파이어스톰 시뮬 gold4
BOJ 테트로미노 구현,브루트포스 gold5

🚩 week 31

Type 문제 유형 rank
BOJ 틱택토 백트래킹 gold5
BOJ 이차원 배열과 연산 정렬,시뮬 gold4
BOJ 미친 로봇 백트래킹 gold5
BOJ 새로운 게임 2 시뮬레이션 gold2

🚩 week 32

Type 문제 유형 rank
BOJ 청소년 상어 백트래킹 gold2
BOJ N-Queen 백트래킹 gold5
BOJ 운동 플로이드–와샬 gold4
BOJ 회의준비 플로이드–와샬 gold2

🚩 week 33

Type 문제 유형 rank
BOJ 트리 트리,분할정복 gold3
BOJ 저울 플로이드-와샬 gold3
BOJ 아기 상어2 BFS silver2
BOJ 감시 피하기 백트래킹 silver1

🚩 week 34

Type 문제 유형 rank
Programmers 헤비 유저가 소유한 장소 SQL LV3
Programmers 행렬 테두리 회전하기 - LV2
Programmers 로또의 최고 순위와 최저 순위 - LV1
Programmers 다단계 칫솔 판매 - LV3