Skip to content

Commit 5431cdb

Browse files
committed
[2022-10-09 채예진] 분류 완료
1 parent da2dd15 commit 5431cdb

36 files changed

+168
-86
lines changed

README.md

+130-11
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,160 @@
11
# algorithm
22

33
## 기초 문제
4-
알고리즘을 사용하지 않고 기본적인 자료구조를 통해 구현한 문제
4+
알고리즘을 사용하지 않고 기본적인 자료구조를 통해 구현한 문제 (스택, 큐, 리스트 포함)
55
|문제 출처|문제 번호|제목|
66
|---|---|---|
7-
|프로그래머스| |[타겟넘버](solved/src/A001_PRG_타겟넘버.java)|
8-
|내용 5|내용 6|내용 7|
7+
|SWEA|1289|[원재의 메모리 복구하기](solved/src/P001_SWEA1289_원재의메모리복구하기.java)|
8+
|백준|1244|[스위치 켜고 끄기](solved/src/P003_BJ1244_스위치켜고끄기.java)|
9+
|SWEA|1208|[Flatten](solved/src/P004_SWEA1208_Flatten.java)|
10+
|SWEA|2805|[농작물 수확하기](solved/src/P006_SWEA2805_농작물수확하기.java)|
11+
|SWEA|2001|[파리퇴치](solved/src/P011_SWEA2001_파리퇴치.java)|
12+
|SWEA|1218|[괄호짝짓기](solved/src/P012_SWEA1218_괄호짝짓기.java)|
13+
|SWEA|1225|[암호생성기](solved/src/P013_SWEA1225_암호생성기.java)|
14+
|백준|2164|[카드2](solved/src/P014_BJ2164_카드2.java)|
15+
|백준|12891|[DNA비밀번호](solved/src/P015_BJ12891_DNA비밀번호.java)|
16+
|백준|2493|[](solved/src/P017_BJ2493_탑.java)|
17+
|SWEA|1228|[암호문1](solved/src/P018_SWEA1228_암호문1.java)|
18+
|백준|1158|[요세푸스문제](solved/src/P019_BJ1158_요세푸스문제.java)|
19+
|SWEA|9229|[한빈이와 Spot Mart](solved/src/P020_SWEA9229_한빈이와SpotMart.java)|
20+
|SWEA|1233|[사칙연산 유효성 검사](solved/src/P021_SWEA1233_사칙연산유효성검사.java)|
21+
|백준|2563|[색종이](solved/src/P024_BJ2563_색종이.java)|
22+
|백준|2839|[설탕 배달](solved/src/P035_BJ2839_설탕배달.java)|
23+
|백준|1541|[잃어버린 괄호](solved/src/P039_BJ1541_잃어버린괄호.java)|
24+
25+
## 누적합
26+
|문제 출처|문제 번호|제목|
27+
|---|---|---|
28+
|백준|11659|[구간합구하기4](solved/src/P009_BJ11659_구간합구하기4.java)|
29+
|백준|11660|[구간합구하기5](solved/src/P010_BJ11660_구간합구하기5.java)|
30+
|백준|3040|[백설공주와 일곱난쟁이](solved/src/P031_BJ3040_백설공주와일곱난쟁이.java)|
931

1032
## 구현
1133
|문제 출처|문제 번호|제목|
1234
|---|---|---|
13-
|프로그래머스| |타겟넘버|
14-
|내용 1|내용 2|내용 3|
35+
|SWEA|1210|[Ladder1](solved/src/P005_SWEA1210_Ladder1.java)|
36+
|SWEA|1954|[달팽이숫자](solved/src/P007_SWEA1954_달팽이숫자.java)|
37+
|SWEA|1873|[상호의배틀필드](solved/src/P008_SWEA1873_상호의배틀필드.java)|
38+
|백준|16926|[배열돌리기1](solved/src/P025_BJ16926_배열돌리기1_시간초과.java)|
39+
|백준|16935|[배열돌리기3](solved/src/P026_BJ16935_배열돌리기3.java)|
40+
|SWEA|4013|[특이한자석](solved/src/P063_SWEA_4013_특이한자석.java)|
1541

1642
## 완전탐색
1743
|문제 출처|문제 번호|제목|
1844
|---|---|---|
19-
|백준|16463|13일의 금요일|
20-
|내용 1|내용 2|내용 3|
45+
|백준|16463|[13일의 금요일](solved/src/A003_BJ16463_13일의_금요일.java)|
46+
|백준|17144|[미세먼지 안녕](solved/src/P062_BJ17144_미세먼지안녕.java)|
2147

2248
## 순열
2349
|문제 출처|문제 번호|제목|
2450
|---|---|---|
25-
|SWEA|4008|숫자 만들기|
51+
|SWEA|4008|[숫자 만들기](solved/src/A005_SWEA4008_숫자_만들기.java)|
52+
|SWEA|6808|[규영이와 인영이의 카드게임](solved/src/P022_SWEA6808_규영이와인영이의카드게임.java)|
53+
|백준|17406|[배열돌리기4](solved/src/P028_BJ17406_배열돌리기4.java)|
54+
|SWEA|1247|[최적경로](solved/src/P043_SWEA1247_최적경로.java)|
55+
|백준|1987|[알파벳](solved/src/P044_BJ1987_알파벳.java)|
56+
|SWEA|3234|[준환이의 양팔저울](solved/src/P046_SWEA3234_준환이의양팔저울.java)|
57+
|백준|17135|[캐슬디펜스](solved/src/P047_BJ17135_캐슬디펜스.java)|
58+
59+
## 조합
60+
|문제 출처|문제 번호|제목|
61+
|---|---|---|
62+
|백준|15685|[치킨 배달](solved/src/P032_BJ15686치킨배달.java)|
63+
|SWEA|4012|[요리사](solved/src/P034_SWEA4012_요리사.java)|
64+
65+
|백준|17406|[배열돌리기4](solved/src/P028_BJ17406_배열돌리기4.java)|
66+
|SWEA|6808|[규영이와 인영이의 카드게임](solved/src/P022_SWEA6808_규영이와인영이의카드게임.java)|
67+
68+
## 우선순위 큐
69+
|문제 출처|문제 번호|제목|
70+
|---|---|---|
71+
|백준|11286|[절댓값 힙](solved/src/P033_BJ11286_절댓값힙.java)|
72+
|SWEA|5644|[무선충전](solved/src/P038_SWEA5644_무선충전.java)|
73+
74+
|백준|17406|[배열돌리기4](solved/src/P028_BJ17406_배열돌리기4.java)|
75+
76+
## 분할 정복
77+
|문제 출처|문제 번호|제목|
78+
|---|---|---|
79+
|백준|1074|[Z](solved/src/P036_BJ1074_Z.java)|
80+
|백준|1992|[쿼드트리](solved/src/P041_BJ1992_쿼드트리.java)|
81+
82+
## 정렬
83+
|문제 출처|문제 번호|제목|
84+
|---|---|---|
85+
|정올|1828|[냉장고](solved/src/P037_JO1828_냉장고.java)|
86+
87+
|SWEA|6808|[규영이와 인영이의 카드게임](solved/src/P022_SWEA6808_규영이와인영이의카드게임.java)|
88+
|백준|17406|[배열돌리기4](solved/src/P028_BJ17406_배열돌리기4.java)|
2689

2790
## bfs
2891
|문제 출처|문제 번호|제목|
2992
|---|---|---|
30-
|SWEA|7793|오 나의 여신님|
93+
|SWEA|7793|[오 나의 여신님](solved/src/A006_SWEA7793_오_나의_여신님.java)|
94+
|백준|1260|[DFS와 BFS](solved/src/P045_BJ1260_DFS와BFS.java)|
95+
|백준|17135|[캐슬디펜스](solved/src/P047_BJ17135_캐슬디펜스.java)|
96+
|백준|1697|[숨바꼭질](solved/src/P048_BJ1697_숨바꼭질.java)|
97+
|SWEA|1238|[Contact](solved/src/P049_SWEA1238_Contact.java)|
98+
|백준|13055|[탈출](solved/src/P054_BJ13055_탈출.java)|
99+
|백준|16236|[아기상어](solved/src/P055_BJ16236_아기상어.java)|
100+
|백준|7576|[토마토](solved/src/P056_BJ7576_토마토.java)|
101+
|백준|1600|[말이 되고픈 원숭이](solved/src/P067_BJ1600_말이되고픈원숭이.java)|
102+
|SWEA|1249|[보급로](solved/src/P068_SWEA1249_보급로.java)|
103+
|백준|2636|[치즈](solved/src/P075_BJ2636_치즈.java)|
104+
|백준|9205|[맥주 마시면서 걸어가기](solved/src/P078_BJ9205_맥주마시면서걸어가기.java)|
31105

32106
## dfs
33107
|문제 출처|문제 번호|제목|
34108
|---|---|---|
35109
|프로그래머스| |[타겟넘버](solved/src/A001_PRG_타겟넘버.java)|
36-
|내용 1|내용 2|내용 3|
110+
|백준|17478|[재귀함수가 뭔가요](solved/src/P002_BJ17478_재귀함수가뭔가요.java)|
111+
|백준|2023|[신기한 소수](solved/src/P016_BJ2023_신기한소수.java)|
112+
|SWEA|1861|[정사각형방](solved/src/P023_SWEA1861_정사각형방.java)|
113+
|백준|17478|[재귀함수가 뭔가요](solved/src/P002_BJ17478_재귀함수가뭔가요.java)|
114+
|SWEA|5215|[햄버거 다이어트](solved/src/P029_SWEA5215_햄버거다이어트.java)|
115+
|백준|2961|[도영이가 만든 맛있는 음식](solved/src/P030_BJ2961_도영이가만든맛있는음식.java)|
116+
|백준|15683|[감시](solved/src/P040_BJ15683_감시.java)|
117+
|백준|3109|[빵집](solved/src/P042_BJ3109_빵집.java)|
118+
|백준|1260|[DFS와 BFS](solved/src/P045_BJ1260_DFS와BFS.java)|
119+
|백준|13023|[ABCDE](solved/src/P050_BJ13023_ABCDE.java)|
120+
|백준|10026|[적록색약](solved/src/P057_BJ10026_적록색약.java)|
121+
|백준|10971|[외판원순회2](solved/src/P060_BJ10971_외판원순회2.java)|
122+
|백준|17070|[파이프옮기기1](solved/src/P066_BJ17070_파이프옮기기1.java)|
123+
|백준|14502|[연구소](solved/src/P071_BJ14502_연구소.java)|
124+
|백준|2239|[스도쿠](solved/src/P072_BJ2239_스도쿠.java)|
37125

38126
## 동적 프로그래밍 (dp)
39127
|문제 출처|문제 번호|제목|
40128
|---|---|---|
41-
|내용 1|내용 2|내용 3|
129+
|백준|1010|[다리놓기](solved/src/P027_BJ1010_다리놓기.java)|
130+
|백준|1463|[1로 만들기](solved/src/P064_BJ1463_1로만들기.java)|
131+
|백준|1149|[RGB거리](solved/src/P065_BJ1149_RGB거리.java)|
132+
133+
## 다익스트라
134+
|문제 출처|문제 번호|제목|
135+
|---|---|---|
136+
|백준|4485|[녹색 옷 입은 애가 젤다지](solved/src/P061_BJ4485_녹색옷입은애가젤다지_다익스트라.java)|
137+
138+
## 서로소 집합
139+
|문제 출처|문제 번호|제목|
140+
|---|---|---|
141+
|SWEA|3289|[서로소 집합](solved/src/P051_SWEA3289_서로소집합.java)|
142+
|SWEA|3124|[최소 스패닝 트리](solved/src/P052_SWEA3124_최소스패닝트리.java)|
143+
|SWEA|7465|[창용마을 무리의 개수](solved/src/P053_SWEA7465_창용마을무리의개수.java)|
144+
145+
## 프림 알고리즘
146+
|문제 출처|문제 번호|제목|
147+
|---|---|---|
148+
|SWEA|1251|[하나로_프림인접리스트](solved/src/P058_SWEA1251_하나로_프림인접리스트.java)|
149+
|SWEA|1251|[하나로_프림인접리스트2](solved/src/P058_SWEA1251_하나로_프림인접리스트2.java)|
150+
|SWEA|1251|[하나로_프림인접행렬](solved/src/P059_SWEA1251_하나로_프림인접행렬.java)|
151+
152+
## 최장 증가 수열 (LIS)
153+
|문제 출처|문제 번호|제목|
154+
|---|---|---|
155+
|SWEA|3307|[최장증가부분수열](solved/src/P076_SWEA3307_최장증가부분수열.java)|
156+
157+
## 플로이드 워셜
158+
|문제 출처|문제 번호|제목|
159+
|---|---|---|
160+
|SWEA|5643|[키 순서](solved/src/P081_SWEA5643_키순서.java)|

solved/src/P031_BJ3040_백설공주와일곱난쟁이.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
2-
31
import java.util.ArrayList;
42
import java.util.List;
53
import java.util.Scanner;
64

5+
// 누적합
76
public class P031_BJ3040_백설공주와일곱난쟁이 {
87

98
static List<Integer> function(int sum, List<Integer> arr) {

solved/src/P032_BJ15686치킨배달.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
2-
31
import java.util.List;
42
import java.io.BufferedReader;
53
import java.io.InputStreamReader;
64
import java.util.ArrayList;
75

6+
// 조합
87
public class P032_BJ15686치킨배달 {
98

109
static int M;

solved/src/P033_BJ11286_절댓값힙.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.PriorityQueue;
64

5+
// 우선순위 큐
76
public class P033_BJ11286_절댓값힙 {
87

98
public static void main(String[] args) throws Exception {

solved/src/P034_SWEA4012_요리사.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// 조합
65
public class P034_SWEA4012_요리사 {
76

87
static int N;

solved/src/P035_BJ2839_설탕배달.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
2-
31
import java.util.Scanner;
42

3+
// 기초문제
54
public class P035_BJ2839_설탕배달 {
65

76
public static void main(String[] args) {

solved/src/P036_BJ1074_Z.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
2-
31
import java.util.Scanner;
42

3+
// 분할정복
54
public class P036_BJ1074_Z {
65

76
public static void main(String[] args) {

solved/src/P037_JO1828_냉장고.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
2-
31
import java.util.*;
42

3+
// 정렬
54
public class P037_JO1828_냉장고 {
65

76
public static void main(String[] args) {

solved/src/P038_SWEA5644_무선충전.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.IOException;
53
import java.io.InputStreamReader;
64
import java.util.PriorityQueue;
75
import java.util.StringTokenizer;
86

7+
// 우선순위 큐
98
public class P038_SWEA5644_무선충전 {
109
public static class BC implements Comparable<BC> {
1110
int x, y;

solved/src/P038_SWEA5644_무선충전2.java

-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.PriorityQueue;

solved/src/P039_BJ1541_잃어버린괄호.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.ArrayDeque;
64

5+
// 기초 문제
76
public class P039_BJ1541_잃어버린괄호 {
87

98
public static void main(String[] args) throws Exception {

solved/src/P040_BJ15683_감시.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.ArrayList;
64

5+
// dfs
76
public class P040_BJ15683_감시 {
87

98
static int answer;

solved/src/P041_BJ1992_쿼드트리.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// 분할정복
65
public class P041_BJ1992_쿼드트리 {
76

87
static int[][] QT;

solved/src/P042_BJ3109_빵집.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// dfs
65
public class P042_BJ3109_빵집 {
76

87
static int[] dx = {-1, 0, 1}; // 오른쪽 위 대각선, 오른쪽, 오른쪽 아래 대각선

solved/src/P043_SWEA1247_최적경로.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// 순열
65
public class P043_SWEA1247_최적경로 {
76

87
static int[] house;

solved/src/P044_BJ1987_알파벳.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// 순열
65
public class P044_BJ1987_알파벳 {
76

87
static int[] dx = {-1, 1, 0, 0}; // 상 하 좌 우

solved/src/P045_BJ1260_DFS와BFS.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
2-
31
import java.util.ArrayDeque;
42
import java.util.Arrays;
53
import java.util.Queue;
64
import java.util.Scanner;
75

6+
// bfs, dfs
87
public class P045_BJ1260_DFS와BFS {
98

109
static int N, M;

solved/src/P046_SWEA3234_준환이의양팔저울.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53

4+
// 순열
65
public class P046_SWEA3234_준환이의양팔저울 {
76

87
static int[] weight;

solved/src/P047_BJ17135_캐슬디펜스.java

+2-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.ArrayDeque;
64
import java.util.ArrayList;
7-
import java.util.Arrays;
85
import java.util.Queue;
96

7+
// 순열, bfs
108
public class P047_BJ17135_캐슬디펜스 {
119

1210
static int max;
@@ -81,9 +79,7 @@ static void attack() {
8179
}
8280

8381
// cnt + 1번째 해당하는 조합에 포함될 수를 뽑기
84-
private static void find(int cnt, int start) { // cnt: 직전까지 뽑은 조합에 포함된 수의 개수, start: 시도할 수의 시작 위치 (반복을 돌 때 시작 위치만
85-
// 정함)
86-
82+
private static void find(int cnt, int start) { // cnt: 직전까지 뽑은 조합에 포함된 수의 개수, start: 시도할 수의 시작 위치 (반복을 돌 때 시작 위치만 정함)
8783
if (cnt == 3) {
8884
// 적 죽이기
8985
attack();

solved/src/P048_BJ1697_숨바꼭질.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
2-
31
import java.util.ArrayDeque;
42
import java.util.Queue;
53
import java.util.Scanner;
64

5+
6+
// bfs
77
public class P048_BJ1697_숨바꼭질 {
88

99
static int K;

solved/src/P049_SWEA1238_Contact.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
2-
31
import java.io.BufferedReader;
42
import java.io.InputStreamReader;
53
import java.util.Queue;
64
import java.util.ArrayDeque;
75

6+
7+
// bfs
88
public class P049_SWEA1238_Contact {
99

1010
static int[][] graph;

0 commit comments

Comments
 (0)