From 7188590d49380f971cad3e080035fce3df530d39 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Sat, 5 Aug 2023 22:33:18 +0900 Subject: [PATCH 01/27] =?UTF-8?q?FEAT=20:=20DFS=EC=99=80=20BFS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/classes/KSY/S1260.class | Bin 0 -> 3060 bytes src/KSY/S1260.java | 65 ++++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 build/classes/KSY/S1260.class create mode 100644 src/KSY/S1260.java diff --git a/build/classes/KSY/S1260.class b/build/classes/KSY/S1260.class new file mode 100644 index 0000000000000000000000000000000000000000..90d6a366b71c8d4a492307057570deed9bd1e942 GIT binary patch literal 3060 zcmbVOS#J|p7(Le>dmLwg1aQERu!SX#fv_f!K*~}mDIq{j4Ix08B!d~^*v3mrTG9pR z1}!b!p?zp2B&5EuN6sj%3qzBGwX$>ZlZ`R13MR9dC&An2CgyF2gJYbj+TVZDcT$wfYTI zVUB=HIt}Dq+R28tL@Jl1SIg{g@uLDknfW|{xph;jgrZWZ+CU8!29M zn0hgb@d9;ip%Pf~_233pp+U#$31pNP=4ZvMw1G8P%ajMqc+T2?N&-8{g`-9v>#Z@=eO7P2 z47+3*+GH7?CpU{a2Xj`AycK9Sun!%~rdy`He2TR5399WXEAE$InCTexXHCIWCYH%l zlj|kM4qpk8U_8;rXCEIr^Tg6->NE*lqOFkSvdzcj(=7{WXY8y+&bYdc((0_-0}Eeb zl~0iHPd;;lsflyfRH7_HY?=ChDUDiM`6DzXnktNA`k1P~v`E(M>DyEP(KopjsQw|(LjMzo$muP9 z#E_I-ASE^O`z-O!g8PtW4Hij7p57b=*a*#3%1W>ptERGe!ike24_gf93=HBG0be$m z&w%u;D?QwWytd=KfgzcfN0D8&h1U(dfj4PQE~L$Dl9^RaSSyycIr5frT*O;CF0ls} znLn{=;BCA^BFl#Mc>I#)@}7aqvhn$N)S|MHNT=@`_yAYQ$kS$~L)o(%l9Jv5E1k8@ z5vlYm82D1Zxr?P`g=&XQ0lFX%htlhS} zmHg_KTP<|(CZHS0lLE;8aC<|uW8jI>w6qbYb! zA;`Ip@Raf5^drF8e8RJo;M5bI&3x~`Ozh!Z(1F=FM2$Y))E6kbLfdPYhi~})jyLXY zEWlmfrT1B*pRfcE$p7Ez=}#EZiWxO)8!90^xzhggeyh;>$v!X80l=GkFnhVk++Uaha5sO1=56KK|Mp(dz};esG) ztA_DzYq*9^%Id>4EU8?%B5-5;k7B`=FbANHTMDsU^@KP~I96gWzby`O-i5Ua?0RO! zoD_7Na3+C}XWpHl)5u9SKA&+~a71hx^xYO`emBKyaKyaZiXO zb9f;a0Qpz~B6cvemkx$*Aw%YUGI?(&!!-qfxXH%>s+kOs=N6U)JtY7&YTB%&c`gmfpodHi(nvqGV|xCB*7 MsmiKzbm6Q20GHFUnE(I) literal 0 HcmV?d00001 diff --git a/src/KSY/S1260.java b/src/KSY/S1260.java new file mode 100644 index 0000000..699345e --- /dev/null +++ b/src/KSY/S1260.java @@ -0,0 +1,65 @@ +package KSY; + +import java.util.*; + +public class S1260 { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + int N = scanner.nextInt(); + int M = scanner.nextInt(); + int V = scanner.nextInt(); + + List> graph = new ArrayList<>(); + for (int i = 0; i <= N; i++) { + graph.add(new ArrayList<>()); + } + + for (int i = 0; i < M; i++) { + int a = scanner.nextInt(); + int b = scanner.nextInt(); + graph.get(a).add(b); + graph.get(b).add(a); + } + + for (int i = 1; i <= V; i++) { + Collections.sort(graph.get(i)); + } + + boolean[] visited = new boolean[N+1]; + dfs(graph, visited, V); + System.out.println(); + + visited = new boolean[N+1]; + Queue queue = new LinkedList<>(); + queue.add(V); + bfs(graph, visited, queue); + } + + static void dfs(List> graph, boolean[] visited, int vertex) { + if (!visited[vertex]) { + visited[vertex] = true; + System.out.print(vertex + " "); + for (int v : graph.get(vertex)) { + if (!visited[v]) { + dfs(graph, visited, v); + } + } + } + } + + static void bfs(List> graph, boolean[] visited, Queue queue) { + while (!queue.isEmpty()) { + int q = queue.poll(); + if (!visited[q]) { + visited[q] = true; + System.out.print(q + " "); + for (int v : graph.get(q)) { + if (!visited[v]) { + queue.add(v); + } + } + } + } + } +} From 6f711180b1657eb57730435a6d28eee45359162a Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Sun, 6 Aug 2023 20:36:13 +0900 Subject: [PATCH 02/27] =?UTF-8?q?FEAT=20:=202178=20=EB=AF=B8=EB=A1=9C=20?= =?UTF-8?q?=ED=83=90=EC=83=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/classes/KSY/S1260.class | Bin 3060 -> 4547 bytes build/classes/KSY/S2178.class | Bin 0 -> 2284 bytes src/KSY/S1260.java | 89 ++++++++++++++++++---------------- src/KSY/S2178.java | 56 +++++++++++++++++++++ 4 files changed, 104 insertions(+), 41 deletions(-) create mode 100644 build/classes/KSY/S2178.class create mode 100644 src/KSY/S2178.java diff --git a/build/classes/KSY/S1260.class b/build/classes/KSY/S1260.class index 90d6a366b71c8d4a492307057570deed9bd1e942..afe770ea4327a3e44c3edb5976ae8770f148d779 100644 GIT binary patch literal 4547 zcmbVPdwd*K75?t#G1=Kk6OwM}(l#w=8=BIxeb6*!OK1}N*pl=?N@`kZne0xIX*N6C z+1bzl^$7}!peRbKsQ8Nb0;;A>qlltaD+1yhMOq&yqVli&{QZpIo!!k&nzW*S?C#xr z&OPTl=X~ePoiqPF^*Dg5@u~u!fd9JA?r`VoH4Up26bn=y)Q9wNLQnREck~=IVva!R z1~X|o%>qTs>bnGr+pM^uq6mHsB`6iBXg8C__RL_9Vei&^5{5ukyA{(DUAk?`|GCX# zr{7Eq1llJZMrdqMHNw)#-EE6ar?zqgg!0cu9)AOZbF_ueLR}yi~m0QTkd`gX#8m^Mo{7K`m5MI-#u^9BvqfaFq!^hCzk(JRRi^+uON!gM!cqlOl=k~XPKx?iBq8)cTR5%1C5 zmV!4jWd#7t;ef$RrX3Y+@CUF33}EXNkh?NQ#?Y`0*OB*nJbqr_d1rg8*h(E5wqu7t ziJnR&h6NVptK){-n@Pqbfy0|~i%0;w(5c{hf${<E33GFT7^3eX7EN? z$42NHdJto>Qda7Gg66U%%gvnjqK}L+lTMecxI0#&0hkz2aBxaWXkJ4?R-i0qB^^$R zw1kq>V1YhLnQkM=%FLfim@M6M*dt}I1;iqGkk%|@1Xg;}nQxA1{ggK#p%LFM9M&)_ z$yd}T!@dEy6jIt|B@&#Na#(423*IWA*~XB;&e>rzjdDul3gecojb+wt-LY(P z`&PVN!#nU!ayxC=ta*J7q^l~674cNubF{uoR`CuE@4~xfS{=hRDci{FESlRV`R>Ad z6}*R2x_~?{)o{10VX>SIQt=)Q_u~C*&VD_;oqKMv_R4bKr{ROH#7u7*OgY1HlHRZ3 z!}thwtc)BKS-c#YJ2}pCW0#R0#YYt!^NezjSi{HgAl;?piG-ZI-cse8juD&qgoaPb zr%y>NVd%E(;ZJG!w2MB)I>?NER%Y~bg}GZurA*ou+{Z|DyN?g0>KPtCoc%qrW|Lt| zeX{W3T06YL=uOjzzYZN75;`r0kHK zMpI?(fRY|e0vY1)_6@C(J&{b`EU6aCnwj3rJfaMlY4U`f6qk4{8W(Uau+*b=VThbsE-HrUUUn2b%vMb3gFSJ5$tqg$vN#{Sw>#a;DtI>E z6)sa-Y+E0e5*5$D&yM+{vu* zt$H$^Fw#rfEo&f?%8f1$8NEAG4(=v_{y$;X<;BnDa_$1jxoy)EiB5Jyq@onRszj^G z$Kg2*KgQGCI9rLQb9*mo_?f%+C+=~wN0UjzZcFItw85+CD=hM~B+iry1%DT)xwtCZ zIGZ!S3U@^aK{1z@qkXEbhK?6iZK_zGKBGR-8n*IrrO8oL`iT zV_o+NtZynEMd+|CdnRQ=1)pQM*(cF7X(8=2 zHiop5xaB0?7ShIWyFk;d5!8lejp0r~CD%iFu>2@yF)QW7C$l2O?-MvS@w^1`fuj@l zaeOG`AH@TcXhZ54J}xkVJ40n-cxckrd1w#*k7%1D+Ru2PE<6t^>m*TT>oke;1qotA z;OK;tM=BXt>@w~&R=ez~;=da5u8w>QlW~pYRSQ|R4OO@Sv$3D=N&~zi96|_3a2YQv z^LVqEkFQ_>TWv0WiA6X|y1$HC{EcrZukp303`<22b)uH9D{E0N8nIk#Fb|(jH?o~h*xnOUuFMoqpz>w>+G@p;yH|hO^PJ%EGMbwXY5PMKdd(n(jTm^7e z?8G>}LFvn43%-fRDSZvM;agJ5=v&FBZ$o43mG}<#${FDho^++>upujDWaap-l;V4g zpqWUrm`+b(`u-%Q9}rX4*AJoQJe;A2tTnFiBieWo>I93XDtJmkwSvV$2nD+oG%DD_ zVe>ESpI|8iGs+e0RTwoUZ~zq-(V)dH;<^i{nP3JkZmf2KWO{wp=KXhTm8zWdEV7)c zYgl4AK+DGQ49CS!9_89QSm%2NYZ;!yPXV6iQ{i=mIgb?^Eo8un{{Rhx{kH`Q3 literal 3060 zcmbVOS#J|p7(Le>dmLwg1aQERu!SX#fv_f!K*~}mDIq{j4Ix08B!d~^*v3mrTG9pR z1}!b!p?zp2B&5EuN6sj%3qzBGwX$>ZlZ`R13MR9dC&An2CgyF2gJYbj+TVZDcT$wfYTI zVUB=HIt}Dq+R28tL@Jl1SIg{g@uLDknfW|{xph;jgrZWZ+CU8!29M zn0hgb@d9;ip%Pf~_233pp+U#$31pNP=4ZvMw1G8P%ajMqc+T2?N&-8{g`-9v>#Z@=eO7P2 z47+3*+GH7?CpU{a2Xj`AycK9Sun!%~rdy`He2TR5399WXEAE$InCTexXHCIWCYH%l zlj|kM4qpk8U_8;rXCEIr^Tg6->NE*lqOFkSvdzcj(=7{WXY8y+&bYdc((0_-0}Eeb zl~0iHPd;;lsflyfRH7_HY?=ChDUDiM`6DzXnktNA`k1P~v`E(M>DyEP(KopjsQw|(LjMzo$muP9 z#E_I-ASE^O`z-O!g8PtW4Hij7p57b=*a*#3%1W>ptERGe!ike24_gf93=HBG0be$m z&w%u;D?QwWytd=KfgzcfN0D8&h1U(dfj4PQE~L$Dl9^RaSSyycIr5frT*O;CF0ls} znLn{=;BCA^BFl#Mc>I#)@}7aqvhn$N)S|MHNT=@`_yAYQ$kS$~L)o(%l9Jv5E1k8@ z5vlYm82D1Zxr?P`g=&XQ0lFX%htlhS} zmHg_KTP<|(CZHS0lLE;8aC<|uW8jI>w6qbYb! zA;`Ip@Raf5^drF8e8RJo;M5bI&3x~`Ozh!Z(1F=FM2$Y))E6kbLfdPYhi~})jyLXY zEWlmfrT1B*pRfcE$p7Ez=}#EZiWxO)8!90^xzhggeyh;>$v!X80l=GkFnhVk++Uaha5sO1=56KK|Mp(dz};esG) ztA_DzYq*9^%Id>4EU8?%B5-5;k7B`=FbANHTMDsU^@KP~I96gWzby`O-i5Ua?0RO! zoD_7Na3+C}XWpHl)5u9SKA&+~a71hx^xYO`emBKyaKyaZiXO zb9f;a0Qpz~B6cvemkx$*Aw%YUGI?(&!!-qfxXH%>s+kOs=N6U)JtY7&YTB%&c`gmfpodHi(nvqGV|xCB*7 MsmiKzbm6Q20GHFUnE(I) diff --git a/build/classes/KSY/S2178.class b/build/classes/KSY/S2178.class new file mode 100644 index 0000000000000000000000000000000000000000..221fe5d088070ce1851fcadd1e948a67265d6121 GIT binary patch literal 2284 zcmaJ?OKcNY6g|%#d+hPVc0L0!5Wa=xLv2XG2?++-LRoM)?HRYs?=^#)sK6g?IeUkC41(+ckjFR+jzzXz}fAFFT(cux){B7^O_J33V;0>KIMni)x(nej+`Y{E(w1l;@Wj9oY=;B0Og z7EpS#DNBPBUL7vD1p<9`#u_M2j#>F3b1ZEM)b(YPW_sAn+j3pqR0@~vDFI*Ka=>mn zn>6i=z?$ZfzLmg(g}j{^@0P)|qti(%SFp30DHU}B^<^tN8;Ql2H7XkDVM%egc0+5&u|V&ZIayJA(TH^_LaXu~oS7o|cPRUveG&HyTw_X~yp;d-zBjRePawC`PDJ|a85tiP(8Ed*wj-z20+Ewfps9otn zEK{(?t-Ox6v4^2^W`4@z-fKL^R7A;-k&&2&PIRf*x4NR`hU)0Xe$pv<+06IQlhPb( z=~Y2uHI(C)^Y6*$&6y+C)gmc&0A3$@K%2v4*^15SqE)nX9KlfmS5~(BC0G^acDJ09 z$B*lH7cqv*Wz*@GOINj2agwbbiAg^6>li?s*<_0{-Q~WXA}OonVe3z0P{o-S2>F6q z#}M8VP;>G`n*5QO4ofU&b-a%RRrb`;$y{Nke5cOICXeViFE5iTna)nJ!-|<7=WVHf z#l0ZXF=pJjjBGXKd8-^#M83YFe-*1}A_n+pRYX5yO`10tQrLu(&t8}JcZCR5@=!fN z%ako$yV#y0Pt?8;qTCc2J4I}cRFcNYVxF>)e=a@pteHv5NGZ}FV_iQZgGr$`%g(G> zJvC->OOvD8gK{S2F#AVh2N|knuwW*y^qaZzgi&#k^I|Yt%qOj5wj4uRd8~zHF4zJl z$FT=EC~F1 z5ZOi4Cl+BO9%AhRnijCRZxP!PZS&Z^fR_H9^Vs)*8B@NWuRQeMZeZPR-#{XVgE3oZ$<341ahu8Zh*bw=4yXz#R-3fu{Qy zFoJgwGlGV4ABUMupxp?Dm3xSW+!gstv{gl;Mj4G)kUNb)JfRptqAc%L(zxjthF_g6 z-I9>`UHGDOjI}x^8>T=u>~oGbP^x3gHnLGW*ro_u(#f5JykAGqfD;_p=lQl1P!65pf6> zB?Xqen%RU)ZWEYWN?z&2SlHx z|DtE#x6qF%)|Ayn)Yz~Atx%%tHDcuVMow%UL;Dtc6$;14KaAN;R3pp769 Y`~{cz6Skwo%KWcCFJXR2a1MO*FGPyx)Bpeg literal 0 HcmV?d00001 diff --git a/src/KSY/S1260.java b/src/KSY/S1260.java index 699345e..390612f 100644 --- a/src/KSY/S1260.java +++ b/src/KSY/S1260.java @@ -1,65 +1,72 @@ package KSY; +import java.io.*; import java.util.*; public class S1260 { - public static void main(String[] args) { - Scanner scanner = new Scanner(System.in); - int N = scanner.nextInt(); - int M = scanner.nextInt(); - int V = scanner.nextInt(); + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int V = Integer.parseInt(st.nextToken()); - List> graph = new ArrayList<>(); - for (int i = 0; i <= N; i++) { - graph.add(new ArrayList<>()); - } + Map> edges = new HashMap<>(); // 각 노드 별 연결된 노드를 List로 저장 - for (int i = 0; i < M; i++) { - int a = scanner.nextInt(); - int b = scanner.nextInt(); - graph.get(a).add(b); - graph.get(b).add(a); - } + Stack stack = new Stack<>(); + stack.push(V); // DFS - for (int i = 1; i <= V; i++) { - Collections.sort(graph.get(i)); - } + Queue queue = new LinkedList<>(); + queue.add(V); // BFS - boolean[] visited = new boolean[N+1]; - dfs(graph, visited, V); - System.out.println(); + // DFS + for (int i = 0; i < M; i++) { + st = new StringTokenizer(br.readLine()); + int v1 = Integer.parseInt(st.nextToken()); + int v2 = Integer.parseInt(st.nextToken()); + edges.computeIfAbsent(v1, k -> new ArrayList<>()).add(v2); // v1의 key값이 있으면 가져오고 없으면 생성하여 삽입 + edges.computeIfAbsent(v2, k -> new ArrayList<>()).add(v1); + } - visited = new boolean[N+1]; - Queue queue = new LinkedList<>(); - queue.add(V); - bfs(graph, visited, queue); - } + StringBuilder answer = new StringBuilder(); + Set visited = new HashSet<>(); // 방문한 노드 표시를 위한 HashSet + while (!stack.isEmpty()) { + int s = stack.pop(); + if (!visited.contains(s)) { + answer.append(s).append(" "); + visited.add(s); - static void dfs(List> graph, boolean[] visited, int vertex) { - if (!visited[vertex]) { - visited[vertex] = true; - System.out.print(vertex + " "); - for (int v : graph.get(vertex)) { - if (!visited[v]) { - dfs(graph, visited, v); + List neighbors = edges.get(s); // 방문한 노드와 인접한 노드들 가져오기 + if (neighbors != null) { + Collections.sort(neighbors, Collections.reverseOrder()); // 노드가 큰 것부터 삽입하여 작은 값이 먼저 출력 될 수 있게 함 + for (int _s : neighbors) { + if (_s != 0) { + stack.push(_s); + } + } } } } - } + System.out.println(answer); - static void bfs(List> graph, boolean[] visited, Queue queue) { + answer = new StringBuilder(); + visited.clear(); // 방문한 노드 초기화 while (!queue.isEmpty()) { int q = queue.poll(); - if (!visited[q]) { - visited[q] = true; - System.out.print(q + " "); - for (int v : graph.get(q)) { - if (!visited[v]) { - queue.add(v); + if (!visited.contains(q)) { // 방문하지 않은 노드라면 + answer.append(q).append(" "); + visited.add(q); + + List neighbors = edges.get(q); // 현재 방문한 노드와 인접한 노드 List + if (neighbors != null) { + Collections.sort(neighbors); + for (int _q : neighbors) { + queue.add(_q); } } } } + System.out.println(answer); } } diff --git a/src/KSY/S2178.java b/src/KSY/S2178.java new file mode 100644 index 0000000..84f8600 --- /dev/null +++ b/src/KSY/S2178.java @@ -0,0 +1,56 @@ +package KSY; + +import java.io.*; +import java.util.ArrayDeque; +import java.util.Queue; +import java.util.StringTokenizer; + +public class S2178 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + + //보드 입력 받기 + int[][] maze = new int[N][M]; + for (int i = 0; i < N; i++) { + String row = br.readLine(); + for (int j = 0; j < M; j++) { + maze[i][j] = row.charAt(j) - '0'; + } + } + + int[][] dist = new int[N][M]; // 각 위치 별 거리 저장 + Queue queue = new ArrayDeque<>(); // 배열형태의 deque + queue.offer(new int[]{0, 0, 1}); // row, col, distance + int[] dr = {0, 1, 0, -1}; + int[] dc = {1, 0, -1, 0}; + + while (!queue.isEmpty()) { + int[] curr = queue.poll(); + int r = curr[0]; + int c = curr[1]; + int distance = curr[2]; + + if (r == N - 1 && c == M - 1) { // 찾는 위치 값 발견했다면 출력 후 종료 + System.out.println(distance); + break; + } + + for (int d = 0; d < 4; d++) { + int newRow = r + dr[d]; + int newCol = c + dc[d]; + + if (newRow >= 0 && newRow < N && newCol >= 0 && newCol < M && // 범위를 벗어나지 않앗다면 + maze[newRow][newCol] == 1 && dist[newRow][newCol] == 0) { // 아직 방문하지 않은 위치이고 0이 아닌 1이라면 + dist[newRow][newCol] = distance + 1; // 거리 업데이트 + queue.offer(new int[]{newRow, newCol, distance + 1}); // 큐 삽입 + } + } + } + + br.close(); + } +} From 171cad780e8c30a727394492c0dbafc7cd5a8681 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Tue, 8 Aug 2023 22:47:49 +0900 Subject: [PATCH 03/27] =?UTF-8?q?FEAT=20:=202023=5F0808=20=ED=8A=B8?= =?UTF-8?q?=EB=A6=AC=202=EB=AC=B8=EC=A0=9C(11725,=201240)=20=ED=92=80?= =?UTF-8?q?=EC=9D=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/classes/KSY/S11725.class | Bin 0 -> 2571 bytes build/classes/KSY/S1240.class | Bin 0 -> 3299 bytes src/KSY/S11725.java | 53 +++++++++++++++++++++++++++++++ src/KSY/S1240.java | 56 +++++++++++++++++++++++++++++++++ 4 files changed, 109 insertions(+) create mode 100644 build/classes/KSY/S11725.class create mode 100644 build/classes/KSY/S1240.class create mode 100644 src/KSY/S11725.java create mode 100644 src/KSY/S1240.java diff --git a/build/classes/KSY/S11725.class b/build/classes/KSY/S11725.class new file mode 100644 index 0000000000000000000000000000000000000000..9d6a63dcaf0e6d5aafa71892a8213fff4098ff90 GIT binary patch literal 2571 zcmZ`)TW}Lq82(PO&9>;t2S3D|Ozm1w5xi0wpn9 zPfiG|?sYxWju~(7)007gvalJmbSG^a0-<7SXJ+fdhAhX38FsM1qt{G1E4g$9yNIhs zCXC3W5tRf+NvG4aOs7l0+t@TDpd3y_4L`i7)KGy{l9*{3{pqPO!yeSf;v`emn~3P~ zA>B6RK6|J*6J|<4>&*+mSjv=cS^_nVrwbT|9ow{GK^e{8GZQhAj+wAhD(VE*x+0i~ z_RzqxMa4!UE@o~d8qNfZ!YS=0^32eyOLRK>E5Z%zHGUhVejs_K*i}Db@kaCPE z4R>G*C6M&0Gvs90JVMZqdTf&-Y!_JHxS~tbkRJgwNvCF#&pTzp^NK231!`S_ZniRa z?@pU>viG9}l@g&{!=2bEP)h1iskgwo#->{(^J6zyS9=61^N`sB(9nUsgh=Xk%HSEV zmE}_qIM@^_gTUPyO5l^LpoVg2D(=Zax&?SlPff50{pduc^g5_PMX8M5t>G|^u!yGh zc-j~km$?lUGR>8vile!7x{!x#TfZO+(~llhmLr4{Dvk?OxEINly@p=&u@sp{fqjMi zGu@M|@`8Q}76#8csTjyrg$tY!eK0X;Sms43dq3`zIXm?~8ZoQ=7}RjT%t@JL%sB45 zlJu~K2QWg0F@p@Zt-x?aKBom%478n}F5t9QYnKUdSY%ESiQLP0_VG0Ppd~s5~7#G-4NI&CUBxf;zY$i)X z0!cDS$OPs4<|I2h+j;C88;%MNgXL~6Fl$I-n)Q>EZ^UKu6_UtZTMi=Kj!BFaCI{Pg zjPrB-a!(cy1^#tg4O<^ADA+Kw1U zO*zWTGoPw9$p)KQYF>WJyeO69fvZy4_B<`)+5M!&#clK0I*-QQ zMYN2}V@F@h9NKPRS697q_NMsu(81mpNj8?1e=0OjJ zr75$^nlgUUl!>B5uP$9BgR>6V=Ml|b~h2@%pxVmdCc%xg`aT&7ny=O{D?>K7?aX~?}_*X`5Yk5lUyl?z{svr zIF6_AG*k6B4&oVFeT?0KXSq`G9X4kDE)hKd-x3LzsCZ6AKt+pSmDHC1jgiVK)&NHu z1Iq%s$zZbZ24=CpZub?0%5??$FW`BBzH4Y`UBF9%8QDFDH#+GW;42kWI8Zkb zpyV{aBXDKur@X2SZeca^zlEB%vWs>gh&CKz?e=ir&l6duHM~D*-~-+UJgdToTnWhA b)WW-jZSbKRgOC0NKi_3M literal 0 HcmV?d00001 diff --git a/build/classes/KSY/S1240.class b/build/classes/KSY/S1240.class new file mode 100644 index 0000000000000000000000000000000000000000..99469793317b97caf2bb1d1577652f46b294277e GIT binary patch literal 3299 zcma)8TW}j!8UBv6(n_06ez zd4bTG(*luc&nnLdBu12I)prWXQL8*aQ)y?~wfw4Q3mjU_JzV>#?514bp0>S#fW(MX z@eiL#4Gs*_O!TnhI{u(QxVvXkKpQUQZ3AH>Ol*KD9XqZ)RxM_2Z^FtJ=&W_5l(Pzx zmgmUd^-Im4aVi2EMphD}ZLMfIu0VVDnLt2k-*epQ0qM+m;6lzW`%cNN=(s~*v&zva zB~#-o937ps&|nNzr>1Pr&OdBhdE3*mRiLB6OS$E$PwTc-tg+*`6FYQlUxjmeuHxH8 z6Cc1`gjj~xRtrwLZCV&G(1o26gL?$-=w4T(XVO3iJ}8B{8GKWy=AJ3)=oPqK1*nQq z%YCTo6d1jM9wc=1HBwNutw~IjW^LDbQp$87X<{$-3B;ILURFb3OLxy&L=Ei0y)u{s z%&8tsz$?R%5(iCuNLq`#_61-0G4Npw=(u0twq~UDwlQ%SAEE2A-8Z;#2B9xpHV&zABzvoYI$bK!?)$JG3{HqS(aYy1s#veA^emH4-7tBs#2smZzs74 z>J!U(tKtbA=L1_Hz&3FKth!#78U+rm##Wh>MgFvj&)_0$PusM;Yn>{tQz%)Kr%XJJ z&#||;Z9U5`5yAFVO_i$OvzNYrFY36&)z_?TgKOd$e2MYMaeD7yuC&Foa+{~5ov)hs z8otg8PitswNwb zqx{_li0bl)=UH=-W8irtShQKP1HI5N)O5x5V5Cb`FJ~Wf?R?&s{oHD)|+k zuccAjpDE=l242J!9X}DcOTnXdj^m!^4oi-x*ePgDSvg`nXW}Y;%J)REc_r}2U|x02 zn(^b7n=javog<~vY_(h;$ly{7YB@^GlbG-OP3!bar{o2G2)!nanCt#*r*Y<`BR;6O|CHNYPyavSepwKZdaObT> zxjkyQ@ny%};uZ}dCbuuCnB2#_jjLOOw=4=w{@=)(Bu~LJ(z}37uPc!j{*S85C~hMy zMJa$*Y~~rq7PQfPJ86xa+ohS%KJpDfY*|7_W(i%Hd2Cz2-3!~Fu}y5IHCe4ovL0d!eLc=!ts;c8 zuvn)~{2N*1Sh-#JC-SfvQxbotpJ~?d5dMZ4QW5UiXW)>El9R=A+i{|9rM_R$1iehf@@;lJoO z!ZX|1bp;#eQQmq3{xv)@kKwL+FJn}m+5~IY#nLU}$&jq>B0ei{zjh5fJG4c7UhwYA zW0dR*_fsd)$#ZL;)_;~&kpf>4xV-$AW-)qY!}7x{f?k$mH_NbxaQ89nejFh*C-^OP zinN7;3fNx4#0c>XCN2N6_$Dbi8d-dcRES#b_%@y;urmFv&=Si8J0f$|`9i>sWhNa~ z5VRO_U(~bTPhDvzwuI+71mAm&bVxN!Z45h<|JoSF@O}IMpgwoY`_%7TtIrrOD=$C7 ik9oG!-_LmWb6msAiuxsfgIDk>d2+q|7O&$vI{pV)jUI#m literal 0 HcmV?d00001 diff --git a/src/KSY/S11725.java b/src/KSY/S11725.java new file mode 100644 index 0000000..b1c137b --- /dev/null +++ b/src/KSY/S11725.java @@ -0,0 +1,53 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S11725 { + static int[] answer; + static Map> graph; + static boolean[] checked; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringBuilder sb = new StringBuilder(); + int N = Integer.parseInt(br.readLine()); + answer = new int[N+1]; + checked = new boolean[N+1]; + + //node 설정(인접 리스트) + graph = new HashMap<>(); + for(int i=1; i<=N; i++) { + graph.put(i, new ArrayList<>()); + } + + for(int i=0; i> graph; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringBuilder sb = new StringBuilder(); + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + graph = new HashMap<>(); + visited = new boolean[N+1]; + + for(int i=0; i new ArrayList<>()).add(new int[] {b, dist}); + graph.computeIfAbsent(b, k -> new ArrayList<>()).add(new int[] {a, dist}); + } + + for(int test=0; test Date: Sat, 12 Aug 2023 17:17:22 +0900 Subject: [PATCH 04/27] =?UTF-8?q?FEAT=20:=20=ED=8A=B8=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 3 + .idea/misc.xml | 6 + .idea/modules.xml | 8 + .idea/vcs.xml | 6 + .idea/workspace.xml | 38 ++++ build/classes/.gitignore | 1 + src/KSY/S1068.java | 56 ++++++ src/KSY/personal/CompleteBinaryTree1.java | 56 ++++++ src/KSY/personal/PermutationBitTest.java | 43 ++++ src/KSY/personal/PermutationNPTest.java | 55 ++++++ ...\355\227\230\353\214\200\353\271\204.java" | 185 ++++++++++++++++++ 11 files changed, 457 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/misc.xml create mode 100644 .idea/modules.xml create mode 100644 .idea/vcs.xml create mode 100644 .idea/workspace.xml create mode 100644 build/classes/.gitignore create mode 100644 src/KSY/S1068.java create mode 100644 src/KSY/personal/CompleteBinaryTree1.java create mode 100644 src/KSY/personal/PermutationBitTest.java create mode 100644 src/KSY/personal/PermutationNPTest.java create mode 100644 "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..23baf58 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,3 @@ +# 디폴트 무시된 파일 +/shelf/ +/workspace.xml diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..0548357 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..f4fb4ef --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml new file mode 100644 index 0000000..f0a38f4 --- /dev/null +++ b/.idea/workspace.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + 1691718087291 + + + + \ No newline at end of file diff --git a/build/classes/.gitignore b/build/classes/.gitignore new file mode 100644 index 0000000..f17a489 --- /dev/null +++ b/build/classes/.gitignore @@ -0,0 +1 @@ +/KSY/ diff --git a/src/KSY/S1068.java b/src/KSY/S1068.java new file mode 100644 index 0000000..6160c47 --- /dev/null +++ b/src/KSY/S1068.java @@ -0,0 +1,56 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class S1068 { // 트리 + static Map> graph; + static int answer=0; + static int removeNode; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int N = Integer.parseInt(br.readLine()); + StringTokenizer st = new StringTokenizer(br.readLine()); + + graph = new HashMap<>(); + for(int v=0; v()); + } + +// st = new StringTokenizer(br.readLine()); + int rootNode=0; + for(int v=0; v { + private static Object[] tree; + private final int SIZE; + private int lastIndex=0; + + CompleteBinaryTree1(int size){ + this.SIZE = size; + tree = new Object[SIZE+1]; //주의 + } + + public boolean add(T data) { + if(lastIndex == SIZE) + return false; + tree[++lastIndex] = data; + return true; + } + + public boolean isEmpty() { + return lastIndex == 0; + } + + public boolean isFull() { + return lastIndex == SIZE; + } + + public void BFS() { + if(isEmpty()) + return; + Queue que = new ArrayDeque<>(); + que.offer(1); + + while(!que.isEmpty()) { + int current = que.poll(); + System.out.println(tree[current]); + if(current*2 <= lastIndex) // 주의 + que.offer(current*2); + if(current*2+1 <= lastIndex) // 주의 + que.offer(current*2+1); + } + } + + public static void main(String[] args) { + CompleteBinaryTree1 tree = new CompleteBinaryTree1(9); + + for(int i=0; i<9; i++) { + tree.add((char)(65+i)); // 65 == 'A' + } + tree.BFS(); + } + +} diff --git a/src/KSY/personal/PermutationBitTest.java b/src/KSY/personal/PermutationBitTest.java new file mode 100644 index 0000000..f72785c --- /dev/null +++ b/src/KSY/personal/PermutationBitTest.java @@ -0,0 +1,43 @@ +package KSY.personal; + +import java.util.*; + +// 순열을 구할 때 배열이 아닌 비트마스킹을 사용한다고 더 빠른 것은 아니다 +// 하지만 이러한 구현이 가능하고, 비트마스킹을 활용해야하는 문제를 만날 수 있다. + +public class PermutationBitTest { + static int N, R, input[], numbers[]; + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + N = sc.nextInt(); + R = sc.nextInt(); + input = new int[N]; + numbers = new int[R]; + + for(int i=0; i0 && p[i-1]>=p[i]) --i; // 같거나 크면 0위치 전까지 앞으로 계속 감 + + if(i == 0) return false; // 본인의 앞이 없는 상황, 다음 순열 없음(가장 큰 순열의 형태) + + //2. 꼭대기 직전(i-1)위치에 교환할 한 단계 큰 수 찾기 + int j = N-1; + while(p[i-1] >= p[j]) --j; // swaping할 수는 무조건 존재 함, 찾으면 나온다 + + //3. 꼭대기 직전(i-1)위치의 수와 한 단계 큰 수를 교환하기 + swap(p, i-1, j); + + //4. 꼭대기자리부터 맨 뒤까지 수를 오름차순의 형태로 바꿈 + int k = N-1; + while(i 0 && p[i - 1] >= p[i]) + --i; + + if (i == 0) + return false; + + int j = N - 1; + while (p[i - 1] >= p[j]) + --j; + swap(p, i - 1, j); + + int k = N - 1; + while (i < k) + swap(p, i++, k--); + + return true; + + } + + private static void swap(int[] p, int a, int b) { + int temp = p[a]; + p[a] = p[b]; + p[b] = temp; + } + +} From 0d5ee38b6c9e5ca19db99f6736d10621724effae Mon Sep 17 00:00:00 2001 From: Sina Date: Mon, 14 Aug 2023 08:08:15 +0900 Subject: [PATCH 05/27] =?UTF-8?q?FEAT=20:=20=EC=8A=A4=ED=84=B0=EB=94=94=20?= =?UTF-8?q?=EB=AC=B8=EC=A0=9C=20=ED=92=80=EC=9D=B4=20&=20=EC=88=98?= =?UTF-8?q?=EC=97=85=20=EC=BD=94=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 3 --- Algorithms.iml | 12 ++++++++++++ build/classes/.gitignore | 1 - build/classes/KSY/S1068.class | Bin 0 -> 2486 bytes build/classes/KSY/S1525.class | Bin 0 -> 366 bytes build/classes/KSY/S1949.class | Bin 0 -> 667 bytes build/classes/KSY/S2533.class | Bin 0 -> 366 bytes .../KSY/personal/CompleteBinaryTree1.class | Bin 0 -> 2117 bytes .../KSY/personal/PermutationBitTest.class | Bin 0 -> 1284 bytes .../classes/KSY/personal/PermutationNPTest.class | Bin 0 -> 1461 bytes ...34\355\227\230\353\214\200\353\271\204.class" | Bin 0 -> 4234 bytes input.txt | 7 +++++++ src/KSY/S1068.java | 4 ---- src/KSY/S1525.java | 10 ++++++++++ src/KSY/S1949.java | 14 ++++++++++++++ src/KSY/S2533.java | 10 ++++++++++ ...234\355\227\230\353\214\200\353\271\204.java" | 13 +++---------- 17 files changed, 56 insertions(+), 18 deletions(-) delete mode 100644 .idea/.gitignore create mode 100644 Algorithms.iml delete mode 100644 build/classes/.gitignore create mode 100644 build/classes/KSY/S1068.class create mode 100644 build/classes/KSY/S1525.class create mode 100644 build/classes/KSY/S1949.class create mode 100644 build/classes/KSY/S2533.class create mode 100644 build/classes/KSY/personal/CompleteBinaryTree1.class create mode 100644 build/classes/KSY/personal/PermutationBitTest.class create mode 100644 build/classes/KSY/personal/PermutationNPTest.class create mode 100644 "build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" create mode 100644 input.txt create mode 100644 src/KSY/S1525.java create mode 100644 src/KSY/S1949.java create mode 100644 src/KSY/S2533.java diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 23baf58..0000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# 디폴트 무시된 파일 -/shelf/ -/workspace.xml diff --git a/Algorithms.iml b/Algorithms.iml new file mode 100644 index 0000000..bde8366 --- /dev/null +++ b/Algorithms.iml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/build/classes/.gitignore b/build/classes/.gitignore deleted file mode 100644 index f17a489..0000000 --- a/build/classes/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/KSY/ diff --git a/build/classes/KSY/S1068.class b/build/classes/KSY/S1068.class new file mode 100644 index 0000000000000000000000000000000000000000..1a200cac550b3ab3f4411a8741a4ae211ebd15a1 GIT binary patch literal 2486 zcmZuyTT@e47+pI#$$@Y{MS}`jrM5^A#aqD^#CpLRL9hm)Ky5vQO*j&g^yCD=UbL;X zt+w`}(~dsW`cfWSaR#K!bo$!e_sN^Ag?{9zC^{sE8KmYsnHvs!_ zTZc!Wv@T>Tgjume@Wu{tb z8?j;u)5+LUApGQQTlVNW3MU*HlXh#7MwgX#R#ItiZKq$qnMhxhwtxr=1Z+8xoRrl<+KZU>qC74+EL0&!Nd)eBA~Lg60$opF)Zy~b2v_$%C2P8jQ5$grOr8_ zzs+?MfEPgnYf(;D&X|=JDC=5AgsEr~rj-z=svjyUDB{>wBG#(n2Rf#rGUZswL|Vrt zfweA1R-fBb!-*bn7<1rQW=Ndr8$wkF2(bBLC3Zy z8WWjLJ95Ini>MRusPux_eLpk5Uh64+3`qDrVQfX&#Ulp2|QK`9%aC93;f z2AZ&&=rgeqg|EQ6`p~n01h5zTb?g&Z<5pDMeFHC{nJ!YMot9(-lg>qRwepaLbsWe8 z;xa9J(VHBX3G0%y18Bi3DqZ$wMF)L44(8*#4o;ZqG14`FHUt$>UNzu@U!{7)z)>6% z&?n7!M)r)VHiwJL$`e<|@qA}pmxpcJoK_SLpaa1&gwd(vq(He_b$&n$bm0_v%9aWo zC@wZTS-E*Anzh#A;5j8#aF2o03jflCoN`C7A%c?#KFBB4Qr-kS!>5D0MhmVvi%o)*WBM>r=$u1~Rb*gzC?;Z3Tt z3&cFlk;ze;#2m$#j#wU4^0w&OfTjHEDP<8SyEW5}aWL1eFoNX&FyDy{%jAA?x=0ey zO`SATsmbcBL@K2=spy?dI@x!|Pnt?a((;I7M#sq?_ubGjuE4rzU<%Vr(Moqrq#W+} z7!9hPyldb+1!Gw>nQ-`Wq&wxbviQKjWn5t?X_DAg4=eFU20q4BMz$Pjn@*CYROJWD zO*EX7x0c}=KGX3jpR+>q^0x*)$8|ba^muwSmua*YUl{mOB~e0L`xNDs)2|GC?bb48 zrn_Bx|D?1XImNdvlFZmqdE8R3Xu$nO>{7u|3zoodh!-VlmUz;6^6*rm9%1fF6ic{j z+!-jRMg>nHuIlIWKE$dA+<35t{{gPbM5A$~D+Lw#Cg;qWxGFRuYMbp*v*?}$~(FCB8YxsaE>U95`#EVxX$WtQuaNb!+m}beq#52 z#x~c}8G=qcZ~^07EAay@CWu!xzC*%oOC9Z#NHP9C+Py=W#s~wj-Q6G#x-uW5)gw)r z9}Yd$!oS3%d^$2ZHVYjs?9}?ls1T3&nfVu94^{biFqCS{M!HvYx?Mesp&y|=AZXP^ zm@RDVCyqV?{fl1?m}m?H1Cx=s33gWc`|JVZORL zhZ}8d@z6c!H3XmXn*w*2{wjdqz??zIb!;bWA@rbuQ0%}U8adlLIZC?-RwHil%c3Y* z<+A!VzH#j?b08Fa!UbqM^pbyYSS(Rb@O=`ZVu?NTszJI&sFoOka$e$F{(Erif6~M^ AF#rGn literal 0 HcmV?d00001 diff --git a/build/classes/KSY/S1525.class b/build/classes/KSY/S1525.class new file mode 100644 index 0000000000000000000000000000000000000000..31ac08d8a330b43b690342ebcd0247f5fcc44936 GIT binary patch literal 366 zcmZutO-sW-6r7i)O_Nrut$6oV6%2|!wRjP{81xV+h^I|l;+8alnEJmw2_F0b{;1+? z6czEX^FHUzd;7kAeFJcc9S@Gczl?9g_;_+M@!$%!7V1fbxhk^oI$7wn7IbE&F!ht(J+dZd8(M!7wUQmCsdWZ2XmU>j(2F=tbXxQx01y zQwVm)chQe6m`2C@uxoFxP2{Hm`Qm?FZjaNNDS z6QQVI3tktYfjq{h(SUDYjCLHnXL0~(!ZPh<^>9P*6(&`u8{FR^TqRkE_9WYb9k`7w%2j3Yyk2|DYf zOvacCLTYqlzr(J)BUgFFbPtO?thfWH6{ncU5=w#d$rG$&gQ6_KHnByPVVhzNg>Sy+ BjKTl_ literal 0 HcmV?d00001 diff --git a/build/classes/KSY/S2533.class b/build/classes/KSY/S2533.class new file mode 100644 index 0000000000000000000000000000000000000000..d9b2b77ded22cd6c886119f1154f06360d52a2ba GIT binary patch literal 366 zcmZutO-sW-6r7i)O_Nrut$6oV6%1HCwRjP{81xV+h^I|l;+8alnEJmw2_F0b{;1+? z6czEX^FHUzd;7kAeFJcU9S@Gczl?9g`1o`(@!$%!7V1fbxhk^oI$7wn7IbE&F!ht(J+dZd8(M!7wUQmCsdWZ2XmU>j(2F=tbXxQx01y zQwVm)chQeEhAYp%InF+m78Y45l|gw1v+k| zUd)X%nVw&s6%g|Rp`uZ9=F6+**8)uwR@riwGhwO(2=?ToQfB!_6KQZR~H!?xtRA5@(Ut0r(V^)i8y zZq53Jb-EAM*{VLTb^4`6CNi1vDOOU9)m4G6*kMzKmgz;>S}z+;-6mL5jGxG$x@tIv z6mf))3eO0%rX8d3)q+v=rD;}ewp4YtT)$YM$*RrOi$%Up&!xjOEw1BDoYL@?K&M-^ z?pVd-CEGT(E}NTmTAn~#7)h|ZXX*An@_gAb*G*f;2+j#;w~S)lTwJ3yY*+(9|JZm7 zM)8h@F?MAi=X%|&n>yY_zd*3Ewr1M$*aaQqn4sKhMN;jIHP-Vk)wrZIrQ>~E6lk`} zPFBLZD(6F(#$^pN2kv5etLB&`9kZC@sY;#Kvdd#>Rg%|iR!H-f8YLF~5Fcsab?k6? z9!%@Ff)v$OKE;~MJ^4V9r@`$a;?WHw;TN1!5DK3k~}GW=#9`(xD#x2^Kn^@t8KYjF)4AJZJixU#zKhnl@(_`D??Xi6zaXmSe}nQfI`1>B zpqtNbmIOalSt`WO+t7*=e7@r5+%o9FalWx2GtC6)i?;@ydKR{g7vpCFOj#hFw> zeT3o1I3K{$JuD<1<2`{tklexKh|um{dfZPR5_DsXd@o`M3y34f$OdzpIOB>Q^w|5N zBUr&zEK*wnlk811{gYOEEwz0kyi?bCN}3*l+WZt<8b+UDSp3cV7{bR$d;Z{C-=Fvs zh+HJJi%d$HyoZiNb`3(bQ_Tt^0TleHSp5&p`;ssK literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/PermutationBitTest.class b/build/classes/KSY/personal/PermutationBitTest.class new file mode 100644 index 0000000000000000000000000000000000000000..23d048c5d39f43a2f01c11b6bd807d27d4218fc0 GIT binary patch literal 1284 zcmah}*-{fx5Ir{u44DjsH6R38WJy30cT^T-5sXBj3`G^ii$ff7Fqu%3i3Kl~5B`L2 z`ouG#3UDbuz(4RW`~bIeC#*u1H8ts;zCGRNobJrG-=Dq$xPci39)Y%*)KYxiu=6=f z&&1~qJ6mvc$IMydrn6w=9R)st>NWk99?$63YJ6^G%}6@}VwQJ;_Y;9K(^@Yu=2>Py zu?pE0))OcnHZ9W`74Sx)ivqrh+%rRk7eNgHXad2cX&JL__JY2WF$8LpxwM{H)NNBf z9|V2Q3zOA4lK(+E#1>iIv;;zt<>WEqlw+IL>QHo1L8Cy8dr)x9Ogxp=Ez7X|xPTS~ z&8KLlHuH{=)euH2dC8&;rIKbYo{(%=)zGs;Dne+JeA)$?BIl+=7iChXhD+#@@)#RV z!lGJKCEA&B zG27NR^BV5qzCeYOD~a!pBoRG36cyu`R4_qw?p&zui540jV2YBh%dQzYg9C-#O+1<_ zVWy>^zULWzRX|PU3U=CgE5yN1-V{y$UJ5Ybm{JDLk#0ncP?Y zR`MxMD`?C5_E5D=$AfDAmb<|U)X110(X~k1QsePJc#dsfeaMTuk=w zqGJc$CDU6(_ZM{s(IR@K?e~ssAy`B-EYIiOdPJBRAO8ICdiOCP+k4&ieOwaRIKVcw zsNw{JWLS+TpJIeDNIS+YoI;ZevAqNXS8S~MJ+YxX^r@i#<% zMCALw99lSqFcG&>wl?zU;MIvPUNQ7=DcdkXR#N5?he=GkQzIHYbjJ|Fz$p%8^*{Ly OQ|moMpWu5QJo*bho&swC literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/PermutationNPTest.class b/build/classes/KSY/personal/PermutationNPTest.class new file mode 100644 index 0000000000000000000000000000000000000000..b83719d94ff4437b5d36037d07dec1cf102aad3c GIT binary patch literal 1461 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 } -// st = new StringTokenizer(br.readLine()); int rootNode=0; for(int v=0; v 0 && p[i - 1] >= p[i]) From c4325296a4fef615982789aeca42868cfbe7d8b7 Mon Sep 17 00:00:00 2001 From: Sina Date: Tue, 15 Aug 2023 13:17:34 +0900 Subject: [PATCH 06/27] =?UTF-8?q?FEAT=20:=20(personal)B=ED=98=95=20?= =?UTF-8?q?=ED=8A=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/classes/.gitignore | 1 + ...\354\271\230\353\243\214\353\262\225.java" | 40 +++++++++ ...354\271\230\353\243\214\353\262\2252.java" | 42 +++++++++ ...\354\227\264\355\216\270\354\247\221.java" | 53 +++++++++++ ...354\225\224\355\230\270\353\254\2703.java" | 51 +++++++++++ ...\354\210\230\355\221\234\355\230\204.java" | 48 ++++++++++ src/KSY/personal/PermutationBitTest2.java | 43 +++++++++ src/KSY/personal/SoonJonBu.java | 89 +++++++++++++++++++ 8 files changed, 367 insertions(+) create mode 100644 build/classes/.gitignore create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\225.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\235\264\354\247\204\354\210\230\355\221\234\355\230\204.java" create mode 100644 src/KSY/personal/PermutationBitTest2.java create mode 100644 src/KSY/personal/SoonJonBu.java diff --git a/build/classes/.gitignore b/build/classes/.gitignore new file mode 100644 index 0000000..f17a489 --- /dev/null +++ b/build/classes/.gitignore @@ -0,0 +1 @@ +/KSY/ diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\225.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\225.java" new file mode 100644 index 0000000..d80fbd6 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\225.java" @@ -0,0 +1,40 @@ +package KSY.personal.B형특강.회차1; +import java.util.*; +import java.io.*; + +// Set, BitMasking ... 등의 방법으로 풀이할 수 있음 + +public class 새로운불면증치료법 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringBuilder sb = new StringBuilder(); + int T = Integer.parseInt(br.readLine()); + + for(int i=0; i 0) { + if((flag & (1 << temp%10)) == 0){ + flag = flag | (1 << temp%10); + } + temp/=10; + } + if(flag == mask){ + break; + } + } + sb.append("#").append(i).append(" ").append(answer).append("\n"); + + } + System.out.println(sb); + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" new file mode 100644 index 0000000..9067977 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" @@ -0,0 +1,42 @@ +package KSY.personal.B형특강.회차1; +import java.util.*; +import java.io.*; + +// Set, BitMasking ... 등의 방법으로 풀이할 수 있음 + +public class 새로운불면증치료법2 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T = Integer.parseInt(br.readLine()); + + for(int i=0; i 0) { + if(!checkArr[temp%10]){ + checkArr[temp%10] = true; + temp /= 10; + } + } + boolean flag = false; + for(int j=1; j<=9; j++) { + if(checkArr[j] == false) + continue; + flag = true; + } + if(flag) + break; + } + System.out.println(index); + + } + + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.java" new file mode 100644 index 0000000..3ca5a3d --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.java" @@ -0,0 +1,53 @@ +package KSY.personal.B형특강.회차1; +import java.util.*; +import java.io.*; + +public class 수열편집 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T = Integer.parseInt(br.readLine()); + + for(int test=1; test<=T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int L = Integer.parseInt(st.nextToken()); + List nums = new LinkedList<>(); + + //수열 + st = new StringTokenizer(br.readLine()); + for(int i=0; i L) { + System.out.println("#"+test+" " + nums.get(L)); + } else { + System.out.println("#"+test+" -1"); + + } + } + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.java" new file mode 100644 index 0000000..5dc81b3 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.java" @@ -0,0 +1,51 @@ +package KSY.personal.B형특강.회차1; +import java.util.*; +import java.io.*; + +public class 암호문3 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringBuilder sb = new StringBuilder(); + + for(int test=1; test<=10; test++) { + int N = Integer.parseInt(br.readLine()); + List list = new LinkedList<>(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + for(int i=0; i '&' 연산자!! + +public class 이진수표현 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T = Integer.parseInt(br.readLine()); + + for(int test=1; test<=T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); +// (내풀이) +// Deque que = new ArrayDeque<>(); +// while(M>0) { +// que.offer(M%2); +// M /= 2; +// } +// +// boolean flag = false; +// for(int i=0; iN-R) p[i--] = 1; // i-- 주의 + do { + for(int j=0; j 0 && p[i-1] >= p[i]) i--; + if(i == 0) return false; + + int j = N-1; + while(p[i-1] >= p[j]) j--; + swap(p, i-1, j); + + int k= N-1; + while(k > i) + swap(p, k--, i++); + return true; + } + + public static void swap(int[] p, int i, int j) { + int temp = p[i]; + p[i] = p[j]; + p[j] = temp; + } + +} From c58d56f32e57f4ce96f24d8f1a5df93f8694a195 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Tue, 15 Aug 2023 13:19:21 +0900 Subject: [PATCH 07/27] =?UTF-8?q?FEAT=20:=208=EC=9B=9414=EC=9D=BC=20?= =?UTF-8?q?=EC=8B=9C=ED=97=98=20=EB=AC=B8=EC=A0=9C=20(=EC=A2=85=EC=9D=B4?= =?UTF-8?q?=20=EC=A0=91=EA=B8=B0)=ED=92=80=EC=9D=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- input.txt | 7 + ...\352\271\200\354\213\240\354\230\201.java" | 153 ++++++++++++++++ src/KSY/personal/MakeSpaceTest.java | 49 +++++ src/KSY/personal/SlidingWindowTest.java | 80 ++++++++ src/KSY/personal/SquareNumberTest.java | 36 ++++ ...\355\227\230\353\214\200\353\271\204.java" | 7 +- ...30\353\214\200\353\271\204_practice1.java" | 173 ++++++++++++++++++ 7 files changed, 502 insertions(+), 3 deletions(-) create mode 100644 input.txt create mode 100644 "src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.java" create mode 100644 src/KSY/personal/MakeSpaceTest.java create mode 100644 src/KSY/personal/SlidingWindowTest.java create mode 100644 src/KSY/personal/SquareNumberTest.java create mode 100644 "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" diff --git a/input.txt b/input.txt new file mode 100644 index 0000000..a1be8ce --- /dev/null +++ b/input.txt @@ -0,0 +1,7 @@ +강민정 고정원 김다나 김다인 김시은 김신영 김진용 박근수 박정규 박종우 서재화 신우섭 엄태동 용상윤 이동재 이선재 이주연 이주희 이준범 이호진 정예원 조현우 제선명 +5 +M1 6 6 +M2 6 6 +M3 23 3 +M4 23 3 +M5 7 0 \ No newline at end of file diff --git "a/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.java" "b/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.java" new file mode 100644 index 0000000..00e97f7 --- /dev/null +++ "b/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.java" @@ -0,0 +1,153 @@ +package KSY.personal; + +import java.io.*; +import java.util.Arrays; +import java.util.StringTokenizer; + +public class Algo3_서울_19반_김신영 { // 클래스 시작 + + public static void main(String[] args) throws IOException { // 메인 시작 + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //입력받기 위한 BR + StringBuilder sb = new StringBuilder(); + int K = Integer.parseInt(br.readLine()); // 2^K 크기의 K값 + StringTokenizer st = new StringTokenizer(br.readLine()); // 2*k개의 연산 입력 + String[] Operater = new String[2*K]; + + for(int i=0; i<2*K; i++) { // 연산 수행 + Operater[i] = st.nextToken(); //연산 + } + int[][] paper = new int[1][1]; + paper[0][0] = Integer.parseInt(br.readLine()); // 구멍 뚫기 + + for(int i=2*K-1; i >= 0; i--) { //반대로 연산 + paper = DFS(paper, Operater[i]); + } + //paper 출력 + for(int j=0; j=0; i--) { + for(int j=paper[0].length-1; j>=0; j--) { + switch(paper[i][j]) { + case 0: + newPaper[i][paper[0].length-j-1] = 1; + break; + case 1: + newPaper[i][paper[0].length-j-1] = 0; + break; + case 2: + newPaper[i][paper[0].length-j-1] = 3; + break; + case 3: + newPaper[i][paper[0].length-j-1] = 2; + break; + } + } + } + + break; + case "L": // 오른쪽으로 펴기 + newPaper = new int[paper.length][paper[0].length*2]; + + //원배열 복사 + for(int i=0; i=0; i--) { + for(int j=0; j map, limit; + + public static void main(String[] args) throws Exception{ + System.setIn(new FileInputStream("input.txt")); + BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); + String [] line1=br.readLine().split(" "); + + int S=Integer.parseInt(line1[0]); + int P=Integer.parseInt(line1[1]); + + String DNA_src=br.readLine(); + + String line3[]=br.readLine().split(" "); + + A_limit=Integer.parseInt(line3[0]); + C_limit=Integer.parseInt(line3[1]); + G_limit=Integer.parseInt(line3[2]); + T_limit=Integer.parseInt(line3[3]); + + limit=new HashMap<>(); + limit.put('A', A_limit); + limit.put('C', C_limit); + limit.put('G', G_limit); + limit.put('T', T_limit); + + map=new HashMap<>(); + map.put('A',0); + map.put('C',0); + map.put('G',0); + map.put('T',0); + + + //첫 비밀문자열에서 각 문자가 몇 개 포함되어 있는지 세어본다 + for (int i = 0; i < P; i++) { + char pick=DNA_src.charAt(i); + map.put(pick, map.get(pick)+1); + } + + int result=0; + if(check()) result++; //첫판에서 조건을 만족하면 1증가 + + //이제 슬라이딩 윈도우 시작 + for (int i = 1; i+P-1 < S; i++) { + char pre=DNA_src.charAt(i-1);//현재 윈도우의 직전 캐릭터 + char post=DNA_src.charAt(i+P-1);//새로 포함된 캐릭터 + map.put(pre, map.get(pre)-1); + map.put(post, map.get(post)+1); + if(check()) result++; + } + + System.out.println(result); + + } + + static boolean check() { + return map.entrySet().stream().allMatch(e->e.getValue() >= limit.get(e.getKey())); +// Set keys=map.keySet(); +// for(Iterator it=keys.iterator(); it.hasNext();) { +// switch (it.next()) { +// case 'A': if(map.get('A') X^n-1/2와 같음 + private static long exp2(long x, int n) { + callCnt2++; + if(n==1) return x; + long y = exp2(x, n/2); + return (n%2==0) ? y*y : y*y*x; + } + +} diff --git "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" "b/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" index b435e76..ddf51c3 100644 --- "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" +++ "b/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" @@ -1,6 +1,7 @@ package KSY.personal; import java.io.*; +import java.util.Arrays; //순조부 @@ -102,7 +103,7 @@ private static void after(long startTime) { private static void M3_노래부를팀만들기_조합(int cnt, int start) { ++totalCnt; if (cnt == R) { - //sb.append(Arrays.toString(result)).append("\n"); +// sb.append(Arrays.toString(result)).append("\n"); return; } @@ -143,10 +144,10 @@ private static void after(long startTime) { for (int j = 0; j < N; j++) { if((i & (1<=N-R) p[i--] = 1; + + do { + totalCnt++; + for(int j=0; j 0 && p[i-1] >= p[i]) i--; + if(i == 0) return false; + + int j= N-1; + while(p[i-1] >= p[j]) j--; + swap(p, i-1, j); + + int k=N-1; + while(k>i) + swap(p, k--, i++); + + return true; + } + + private static void swap(int[] p, int a, int b) { + int temp = p[a]; + p[a] = p[b]; + p[b] = temp; + } + +} From 1e9ccf238f7cb385ac64a7e175942b4ead4249e7 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Tue, 15 Aug 2023 13:43:46 +0900 Subject: [PATCH 08/27] =?UTF-8?q?FEAT=20:=20=EB=B3=91=EC=82=AC=EA=B4=80?= =?UTF-8?q?=EB=A6=AC(=EC=A7=84=ED=96=89=EC=A4=91)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...355\227\230\353\214\200\353\271\204.class" | Bin 4234 -> 4234 bytes ...\202\254\352\264\200\353\246\254main.java" | 103 ++++++++++++++++++ ...\254\352\264\200\353\246\254userCode.java" | 74 +++++++++++++ ...354\271\230\353\243\214\353\262\2252.java" | 42 ------- 4 files changed, 177 insertions(+), 42 deletions(-) create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254main.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" delete mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" diff --git "a/build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" "b/build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" index 48d46de2b878aac259a02dcd39891b97526ff2be..22a5a69ddc4b00ba6eded8051f9a63dfba9abb7f 100644 GIT binary patch delta 442 zcmWNN+b-Nu6vlr`kTGKp&XmDFF&T%D2_3Y-&^F>sf&>>L5z?e2uFwm#X;dqUWQPPH zw5diTDDTi$@C4q&ceVCjd+qQ0eQVp>_U<-)=6m?+`(hhmvWZYm4hiyTBcEOh8KQ_u zN|@yZiQ^68`l)1qS_Vm~mtxpG z1zdDgYGYCw*Yuc(C-6j`V44z1dnQ#Nn=G* ztJ3)>j#as>5o29$8#Ji4DtU@6=MPK!&J=O+K<$5Nzb7j1c?oaAfTlqyNzm@Y+nf@rnB~x6v|KYXZ4e8v<=Z+Bn+(_j0 EGh;$Y4*&oF delta 442 zcmWlVX-m{m6vlr?T&5Xk91_KaG5_Q?nhWXR;I3h~goqk0Aic;4T=13Y3oXTkaw+I) zIALm$B9bZj9sCM?0>6ikug<;ap8I>A=WKeL-qpI#(yljrtM(y8IvErYriO4~6tn&I@Ad zwbJKq11>Tk+Mq~7njVzfVLV2ZWt@6mxxMsnkqNQh==H5wlVVNrh-u1ne#)%t3MQg+ zBq^bfd2trxV_s^D6tg6?_f)CIS(D<1^N0R;Tcog!pB?S%vv%`^3f*ITRkAI)+;#s$ z|C;yZE5QT4YrhF???9?Q Soldiers; // id -> team, score + + public void init() + { + Soldiers = new LinkedList<>(); // 병사관리 리스트 + } + + public void hire(int mID, int mTeam, int mScore) + { + for(int[] soldier : Soldiers) { + if(soldier[0] == mID) { + return; // 이미 있는 병사 + } + } + Soldiers.add(new int[] {mID, mTeam, mScore}); + System.out.println(mID + "병사 추가"); + } + + public void fire(int mID) + { + for(int[] soldier : Soldiers) { + if(soldier[0] == mID) { + Soldiers.remove(soldier); + System.out.println(mID + "병사 제거"); + return; + } + } + //해당하는 병사 찾지 못 함 + } + + public void updateSoldier(int mID, int mScore) + { + } + + public void updateTeam(int mTeam, int mChangeScore) + { + } + + public int bestSoldier(int mTeam) + { + return 0; + } + + class soldier{ + private int mID; + private int mTeam; + private int mScore; + public int getmID() { + return mID; + } + public void setmID(int mID) { + this.mID = mID; + } + public int getmTeam() { + return mTeam; + } + public void setmTeam(int mTeam) { + this.mTeam = mTeam; + } + public int getmScore() { + return mScore; + } + public void setmScore(int mScore) { + this.mScore = mScore; + } + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" deleted file mode 100644 index 9067977..0000000 --- "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\2252.java" +++ /dev/null @@ -1,42 +0,0 @@ -package KSY.personal.B형특강.회차1; -import java.util.*; -import java.io.*; - -// Set, BitMasking ... 등의 방법으로 풀이할 수 있음 - -public class 새로운불면증치료법2 { - - public static void main(String[] args) throws IOException { - BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); - int T = Integer.parseInt(br.readLine()); - - for(int i=0; i 0) { - if(!checkArr[temp%10]){ - checkArr[temp%10] = true; - temp /= 10; - } - } - boolean flag = false; - for(int j=1; j<=9; j++) { - if(checkArr[j] == false) - continue; - flag = true; - } - if(flag) - break; - } - System.out.println(index); - - } - - - } - -} From fddaa7cfe38e33bb46af8ddd08b4c1d1d757869b Mon Sep 17 00:00:00 2001 From: Sina Date: Fri, 18 Aug 2023 10:17:05 +0900 Subject: [PATCH 09/27] =?UTF-8?q?FEAT=20:=20=EC=88=98=EC=97=85=EC=8B=9C?= =?UTF-8?q?=EA=B0=84=20=EC=BD=94=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../KSY/personal/CompleteBinaryTree1.class | Bin 2117 -> 0 bytes .../KSY/personal/PermutationBitTest.class | Bin 1284 -> 0 bytes .../KSY/personal/PermutationNPTest.class | Bin 1461 -> 0 bytes graph_input1.txt | 10 +++ graph_input2.txt | 10 +++ input1.txt | 3 + src/KSY/S16401.java | 44 +++++++++++++ src/KSY/S2847.java | 27 ++++++++ src/KSY/personal/AlgoURa/AdjMatrixTest.java | 56 ++++++++++++++++ .../{ => AlgoURa}/CompleteBinaryTree1.java | 2 +- .../personal/{ => AlgoURa}/MakeSpaceTest.java | 2 +- src/KSY/personal/AlgoURa/NQueenTest1.java | 47 ++++++++++++++ .../{ => AlgoURa}/PermutationBitTest.java | 2 +- .../{ => AlgoURa}/PermutationBitTest2.java | 2 +- .../{ => AlgoURa}/PermutationNPTest.java | 2 +- .../{ => AlgoURa}/SlidingWindowTest.java | 2 +- .../{ => AlgoURa}/SquareNumberTest.java | 2 +- ...\354\204\270\354\232\260\352\270\260.java" | 61 ++++++++++++++++++ ...247\214\353\223\244\352\270\260_input.txt" | 14 ++++ 19 files changed, 279 insertions(+), 7 deletions(-) delete mode 100644 build/classes/KSY/personal/CompleteBinaryTree1.class delete mode 100644 build/classes/KSY/personal/PermutationBitTest.class delete mode 100644 build/classes/KSY/personal/PermutationNPTest.class create mode 100644 graph_input1.txt create mode 100644 graph_input2.txt create mode 100644 input1.txt create mode 100644 src/KSY/S16401.java create mode 100644 src/KSY/S2847.java create mode 100644 src/KSY/personal/AlgoURa/AdjMatrixTest.java rename src/KSY/personal/{ => AlgoURa}/CompleteBinaryTree1.java (92%) rename src/KSY/personal/{ => AlgoURa}/MakeSpaceTest.java (97%) create mode 100644 src/KSY/personal/AlgoURa/NQueenTest1.java rename src/KSY/personal/{ => AlgoURa}/PermutationBitTest.java (94%) rename src/KSY/personal/{ => AlgoURa}/PermutationBitTest2.java (94%) rename src/KSY/personal/{ => AlgoURa}/PermutationNPTest.java (94%) rename src/KSY/personal/{ => AlgoURa}/SlidingWindowTest.java (98%) rename src/KSY/personal/{ => AlgoURa}/SquareNumberTest.java (96%) create mode 100644 "src/KSY/personal/BeforeLunch/BJ2252_\354\244\204\354\204\270\354\232\260\352\270\260.java" create mode 100644 "\352\263\265\352\260\204\353\247\214\353\223\244\352\270\260_input.txt" diff --git a/build/classes/KSY/personal/CompleteBinaryTree1.class b/build/classes/KSY/personal/CompleteBinaryTree1.class deleted file mode 100644 index 9e11c540d1b412245fc2e0364661823e958c16ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2117 zcmah}TUQ%Z6#hEhAYp%InF+m78Y45l|gw1v+k| zUd)X%nVw&s6%g|Rp`uZ9=F6+**8)uwR@riwGhwO(2=?ToQfB!_6KQZR~H!?xtRA5@(Ut0r(V^)i8y zZq53Jb-EAM*{VLTb^4`6CNi1vDOOU9)m4G6*kMzKmgz;>S}z+;-6mL5jGxG$x@tIv z6mf))3eO0%rX8d3)q+v=rD;}ewp4YtT)$YM$*RrOi$%Up&!xjOEw1BDoYL@?K&M-^ z?pVd-CEGT(E}NTmTAn~#7)h|ZXX*An@_gAb*G*f;2+j#;w~S)lTwJ3yY*+(9|JZm7 zM)8h@F?MAi=X%|&n>yY_zd*3Ewr1M$*aaQqn4sKhMN;jIHP-Vk)wrZIrQ>~E6lk`} zPFBLZD(6F(#$^pN2kv5etLB&`9kZC@sY;#Kvdd#>Rg%|iR!H-f8YLF~5Fcsab?k6? z9!%@Ff)v$OKE;~MJ^4V9r@`$a;?WHw;TN1!5DK3k~}GW=#9`(xD#x2^Kn^@t8KYjF)4AJZJixU#zKhnl@(_`D??Xi6zaXmSe}nQfI`1>B zpqtNbmIOalSt`WO+t7*=e7@r5+%o9FalWx2GtC6)i?;@ydKR{g7vpCFOj#hFw> zeT3o1I3K{$JuD<1<2`{tklexKh|um{dfZPR5_DsXd@o`M3y34f$OdzpIOB>Q^w|5N zBUr&zEK*wnlk811{gYOEEwz0kyi?bCN}3*l+WZt<8b+UDSp3cV7{bR$d;Z{C-=Fvs zh+HJJi%d$HyoZiNb`3(bQ_Tt^0TleHSp5&p`;ssK diff --git a/build/classes/KSY/personal/PermutationBitTest.class b/build/classes/KSY/personal/PermutationBitTest.class deleted file mode 100644 index 23d048c5d39f43a2f01c11b6bd807d27d4218fc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1284 zcmah}*-{fx5Ir{u44DjsH6R38WJy30cT^T-5sXBj3`G^ii$ff7Fqu%3i3Kl~5B`L2 z`ouG#3UDbuz(4RW`~bIeC#*u1H8ts;zCGRNobJrG-=Dq$xPci39)Y%*)KYxiu=6=f z&&1~qJ6mvc$IMydrn6w=9R)st>NWk99?$63YJ6^G%}6@}VwQJ;_Y;9K(^@Yu=2>Py zu?pE0))OcnHZ9W`74Sx)ivqrh+%rRk7eNgHXad2cX&JL__JY2WF$8LpxwM{H)NNBf z9|V2Q3zOA4lK(+E#1>iIv;;zt<>WEqlw+IL>QHo1L8Cy8dr)x9Ogxp=Ez7X|xPTS~ z&8KLlHuH{=)euH2dC8&;rIKbYo{(%=)zGs;Dne+JeA)$?BIl+=7iChXhD+#@@)#RV z!lGJKCEA&B zG27NR^BV5qzCeYOD~a!pBoRG36cyu`R4_qw?p&zui540jV2YBh%dQzYg9C-#O+1<_ zVWy>^zULWzRX|PU3U=CgE5yN1-V{y$UJ5Ybm{JDLk#0ncP?Y zR`MxMD`?C5_E5D=$AfDAmb<|U)X110(X~k1QsePJc#dsfeaMTuk=w zqGJc$CDU6(_ZM{s(IR@K?e~ssAy`B-EYIiOdPJBRAO8ICdiOCP+k4&ieOwaRIKVcw zsNw{JWLS+TpJIeDNIS+YoI;ZevAqNXS8S~MJ+YxX^r@i#<% zMCALw99lSqFcG&>wl?zU;MIvPUNQ7=DcdkXR#N5?he=GkQzIHYbjJ|Fz$p%8^*{Ly OQ|moMpWu5QJo*bho&swC diff --git a/build/classes/KSY/personal/PermutationNPTest.class b/build/classes/KSY/personal/PermutationNPTest.class deleted file mode 100644 index b83719d94ff4437b5d36037d07dec1cf102aad3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1461 zcmaJ>O>@&$6g^LpqeKyj^Wl&ZISt>oLhLq#ls1Xm6iRV1c4izr6T(JuG(o|ZJhI%D zeSQUt&d?1THe~@!+u;Xv-~Z7v?WRNPo+rBr9T*nx>)!Y7J?Gpj{qoO`F90l|qC*jw zy;0rDx7@HD_)a6g;fBpl20NMJx|yOdzFW@_!Vn_uG-%G%V@=ze9>=pB1Uzc=8AzN-jj4r2ux?*dL>(vmn;)$%nInf`)yS8sSZUc8koZ= z9Vh?G9phRLL+5_m#A%!%rFIbVaw4-`%+@5-b0*Fs!{@_c$Dm9bRH}X*Q}sC#<{IJlT9xZ!~sJ>VcCCuJUUD zH162BoOPb^Tm{#J{S1RYaHGKBEZuS*=4|#Za6QJ;5JoUci+ubmLngSc|Age$6O2E@ zbZP!6X4b5qjk3C|J;KOBN|Tn#fhJO#^|1SL;W^%ag0oz*PqDz|;)Cu>nOKbz+wnZa z#IoUrG0CJSnDP|Yd5jTn3LmqhKf`nkZm9DI0&0pdmY;Pw|gF#XI(k)fsJf?GXkJl&YPbQh#s?e<)0y8e{g^mAOHQ|ghltpkNh9B5q{t(5k#` z1}x@GQ{Y+d_-XMQI)^i4c%JBOT%`_Q;sQ3g-e%X!67^KLLwg~PwH0%hMY)@uGm((a?~s1 sv3rs8MLt|&u`b1+?B26JC= mid) { + cnt += candies[i]/mid; //해당 캔디로 만들 수 있는 모든 개수 + } + } + + if(cnt >= M) { // 캔디 크기 늘리기 + values[0] = mid+1; + answer = mid; + } else { // 크기 줄이기 + values[1] = mid-1; + } + + } + System.out.println(answer); + } + +} diff --git a/src/KSY/S2847.java b/src/KSY/S2847.java new file mode 100644 index 0000000..9bbead4 --- /dev/null +++ b/src/KSY/S2847.java @@ -0,0 +1,27 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S2847 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + + int N = Integer.parseInt(br.readLine()); + int[] nums = new int[N]; + for(int i=0; i0; i--) { + while(nums[i] <= nums[i-1]) { + nums[i-1]--; + answer++; + } + } + System.out.println(answer); + } + +} diff --git a/src/KSY/personal/AlgoURa/AdjMatrixTest.java b/src/KSY/personal/AlgoURa/AdjMatrixTest.java new file mode 100644 index 0000000..e850d69 --- /dev/null +++ b/src/KSY/personal/AlgoURa/AdjMatrixTest.java @@ -0,0 +1,56 @@ +package KSY.personal.AlgoURa; + +import java.util.Arrays; +import java.util.Scanner; + +//무향 그래프 +public class AdjMatrixTest { + + //Node + static class Node{ + int vertext; + Node next; + + public Node(int vertext, Node next) { + super(); + this.vertext = vertext; + this.next = next; + } + @Override + public String toString() { + return "Node [vertext=" + vertext + ", next=" + next.toString()+ "]"; + } + } + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + int V = sc.nextInt(); + int E = sc.nextInt(); + + Node adjList[] = new Node[V]; // 헤드리스 + + int[][] adjMatrix = new int[V][V]; // 초기값 0 + // 간선 있으면 1, 없으면 0 + + for(int i=0; i < E; i++) { + int from = sc.nextInt(); + int to = sc.nextInt(); + //인접행렬 +// adjMatrix[from][to] = 1; +// adjMatrix[to][from] = 1; + + //인접리스트 + adjList[from] = new Node(to, adjList[from]); // 연결된 순서는 상관없으므로 가능한 연산(from과 연결된 아이들끼리의 관계는 아무것도 없음) + adjList[to] = new Node(from, adjList[to]); + } + +// for(int[] is : adjMatrix) { +// System.out.println(Arrays.toString(is)); +// } + for(Node node : adjList) { // node : 각 정점의 인접리스트의 헤드 + System.out.println(node); + } + + } + +} diff --git a/src/KSY/personal/CompleteBinaryTree1.java b/src/KSY/personal/AlgoURa/CompleteBinaryTree1.java similarity index 92% rename from src/KSY/personal/CompleteBinaryTree1.java rename to src/KSY/personal/AlgoURa/CompleteBinaryTree1.java index b646087..d986efe 100644 --- a/src/KSY/personal/CompleteBinaryTree1.java +++ b/src/KSY/personal/AlgoURa/CompleteBinaryTree1.java @@ -1,4 +1,4 @@ -package KSY.personal; +package KSY.personal.AlgoURa; import java.util.ArrayDeque; import java.util.Queue; diff --git a/src/KSY/personal/MakeSpaceTest.java b/src/KSY/personal/AlgoURa/MakeSpaceTest.java similarity index 97% rename from src/KSY/personal/MakeSpaceTest.java rename to src/KSY/personal/AlgoURa/MakeSpaceTest.java index c1269bf..e01da75 100644 --- a/src/KSY/personal/MakeSpaceTest.java +++ b/src/KSY/personal/AlgoURa/MakeSpaceTest.java @@ -1,4 +1,4 @@ -package KSY.personal; +package KSY.personal.AlgoURa; import java.util.Scanner; diff --git a/src/KSY/personal/AlgoURa/NQueenTest1.java b/src/KSY/personal/AlgoURa/NQueenTest1.java new file mode 100644 index 0000000..dbf7ac8 --- /dev/null +++ b/src/KSY/personal/AlgoURa/NQueenTest1.java @@ -0,0 +1,47 @@ +import java.util.Scanner; + +// 같은 행에는 퀀을 놓지 않는 버전 +// 놓아진 원의 열번호를 기록하는 버전 +public class NQueenTest1 { + + static int N, col[], ans; + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + N = sc.nextInt(); // static + col = new int[N+1]; // 1열부터 사용 + ans = 0; // 가능한 경우의 수 + + setQueen(1); + System.out.println(ans); + } + + // 해당 퀸을 현재 행에 가능한 모든 곳에 놓아보기 + private static void setQueen(int row) { // 변하는 값 = 행 = 매개변수, row : 퀀을 놓으려는 행 + + //가지치기 : 직전까지 놓아진 형태로 + if(!isPromissing(row-1)) + return; + + // 기저 조건 + if(row>N) { + ans++; + return; + } + + // 유도파트 + for(int c=1; c<=N; c++) { // 1열부터 N열까지 시도 + col[row] = c; + setQueen(row+1); + } + } + + private static boolean isPromissing(int row) { // row : 마지막으로 놓아진 퀀의 행 + for(int i=1; i[] g = new ArrayList[N+1]; + + for(int i=1; i<=N; i++) { + g[i] = new ArrayList(); + } + + int indegree[] = new int[N+1]; // 1~N + for (int i = 0; i < M; i++) { + String[] M_input = br.readLine().split(" "); + int front = Integer.parseInt(M_input[0]); + int back = Integer.parseInt(M_input[1]); + g[front].add(back); + indegree[back]++; + } + + + //처리 + Queue que = new ArrayDeque<>(); + for (int i = 1; i <=N; i++) { + if(indegree[i] == 0) { // 진입차수가 0인 노드(시작점)를 큐에 삽입 + que.offer(i); + } + } + + while (!que.isEmpty()) { + int curr = que.poll(); + sb.append(curr).append(" "); + + for (int v: g[curr]) { // 꺼낸 노드와 연결된 모든 노드 방문하며 개수 차감 + if(--indegree[v] == 0) { + que.offer(v); + } + } + } + + sw.write(sb.toString()); + sw.flush(); + sw.close(); + + + } // main end + +} diff --git "a/\352\263\265\352\260\204\353\247\214\353\223\244\352\270\260_input.txt" "b/\352\263\265\352\260\204\353\247\214\353\223\244\352\270\260_input.txt" new file mode 100644 index 0000000..00c789d --- /dev/null +++ "b/\352\263\265\352\260\204\353\247\214\353\223\244\352\270\260_input.txt" @@ -0,0 +1,14 @@ +8 +1 1 0 0 0 0 1 1 +1 1 0 0 0 0 1 1 +0 0 0 0 1 1 0 0 +0 0 0 0 1 1 0 0 +1 0 0 0 1 1 1 1 +0 1 0 0 1 1 1 1 +0 0 1 1 1 1 1 1 +0 0 1 1 1 1 1 1 + + +==> +9 +7 \ No newline at end of file From 59957ea03ebc8e4b186f9e2ac8daa55f0ea33603 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Sun, 20 Aug 2023 23:55:02 +0900 Subject: [PATCH 10/27] =?UTF-8?q?FEAT=20:=20=EC=9B=94=EB=A7=90=ED=8F=89?= =?UTF-8?q?=EA=B0=80=20=EC=97=B0=EC=8A=B5=20-=20=EB=B0=B1=EC=A4=80=201780?= =?UTF-8?q?=20=EC=A2=85=EC=9D=B4=EC=9D=98=20=EA=B0=9C=EC=88=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...\354\235\230\352\260\234\354\210\230.java" | 75 +++++++++++++++++++ testcase.txt | 10 +++ 2 files changed, 85 insertions(+) create mode 100644 "src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" create mode 100644 testcase.txt diff --git "a/src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" "b/src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" new file mode 100644 index 0000000..72d6737 --- /dev/null +++ "b/src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" @@ -0,0 +1,75 @@ +package KSY.personal.Prectice; + +import java.io.*; +import java.util.*; + +// 317052KB/ 852ms + +public class S1780_종이의개수 { + + static int N, paper[][]; + static int zero=0, positive=0, negative=0; + + public static void main(String[] args) throws IOException { // main start + System.setIn(new FileInputStream(new File("testcase.txt"))); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // BR + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); // BW + StringBuilder sb = new StringBuilder(); // SB + + N = Integer.parseInt(br.readLine()); // N x N 종이 + paper = new int[N][N]; + + //입력 받기 + for(int i=0; i Date: Mon, 21 Aug 2023 08:11:18 +0900 Subject: [PATCH 11/27] =?UTF-8?q?FEAT=20:=20testcase=20file=20=EC=B6=94?= =?UTF-8?q?=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/KSY/personal/AlgoURa/AdjMatrixTest.java | 65 ++++++++++++++-- ...\353\241\234\355\203\220\354\203\211.java" | 77 +++++++++++++++++++ ...\355\226\211\352\262\275\353\241\234.java" | 66 ++++++++++++++++ testcase.txt | 8 ++ 4 files changed, 210 insertions(+), 6 deletions(-) create mode 100644 "src/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.java" create mode 100644 "src/KSY/\354\227\254\355\226\211\352\262\275\353\241\234.java" create mode 100644 testcase.txt diff --git a/src/KSY/personal/AlgoURa/AdjMatrixTest.java b/src/KSY/personal/AlgoURa/AdjMatrixTest.java index e850d69..ab82e97 100644 --- a/src/KSY/personal/AlgoURa/AdjMatrixTest.java +++ b/src/KSY/personal/AlgoURa/AdjMatrixTest.java @@ -1,6 +1,8 @@ package KSY.personal.AlgoURa; +import java.util.ArrayDeque; import java.util.Arrays; +import java.util.Queue; import java.util.Scanner; //무향 그래프 @@ -35,9 +37,9 @@ public static void main(String[] args) { for(int i=0; i < E; i++) { int from = sc.nextInt(); int to = sc.nextInt(); - //인접행렬 -// adjMatrix[from][to] = 1; -// adjMatrix[to][from] = 1; +// 인접행렬 + adjMatrix[from][to] = 1; + adjMatrix[to][from] = 1; //인접리스트 adjList[from] = new Node(to, adjList[from]); // 연결된 순서는 상관없으므로 가능한 연산(from과 연결된 아이들끼리의 관계는 아무것도 없음) @@ -47,10 +49,61 @@ public static void main(String[] args) { // for(int[] is : adjMatrix) { // System.out.println(Arrays.toString(is)); // } - for(Node node : adjList) { // node : 각 정점의 인접리스트의 헤드 - System.out.println(node); +// for(Node node : adjList) { // node : 각 정점의 인접리스트의 헤드 +// System.out.println(node); +// } +// bfs(adjMatrix); + bfs(adjList); + } + + private static void bfs(int[][] adjMatrix) { + int size = adjMatrix.length; + Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. + boolean[] visited = new boolean[size]; + + //탐색 시작점 정점0으로 하자 + que.offer(0); + visited[0] = true; + + while(!que.isEmpty()) { + int curr = que.poll(); + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (int i = 0; i < size; i++) { + if(adjMatrix[curr][i] != 0 && !visited[i]) { // 인접해있고 방문하지 않았다면 + que.offer(i); + visited[i] = true; + } + } } - + + + } + + private static void bfs(Node adjList[]) { + int size = adjList.length; + Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. + boolean[] visited = new boolean[size]; + + //탐색 시작점 정점0으로 하자 + que.offer(0); + visited[0] = true; + + while(!que.isEmpty()) { + int curr = que.poll(); + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (Node temp = adjList[curr]; temp!=null; temp=temp.next) { + if(!visited[temp.vertext]) { // 인접해있고 방문하지 않았다면 + que.offer(temp.vertext); + visited[temp.vertext] = true; + } + } + } + + } } diff --git "a/src/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.java" "b/src/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.java" new file mode 100644 index 0000000..8f9ca56 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.java" @@ -0,0 +1,77 @@ +package KSY.personal.AlgoURa; + +import java.util.*; +import java.io.*; + +//12360KB/ 92ms + +public class BJ2178_미로탐색 { + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine()); + + int[] dr = new int[] {0, 1, 0, -1}; // right, down, left, up + int[] dc = new int[] {1, 0, -1, 0}; + + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int[][]map = new int[N][M]; + + for(int i=0; i que = new LinkedList<>(); + que.offer(new int[] {1, 0, 0}); + + while(!que.isEmpty()) { + int[] curr = que.poll(); + + for(int d=0; d<4; d++) { + int row = curr[1] + dr[d]; + int col = curr[2] + dc[d]; + if(-1 < row && row < N && -1 < col && col < M && map[row][col] == 1) { + //갈 수 있는 길이고 한 번만 방문한 곳이라면 + map[row][col] = curr[0]+1; // 큐에 들어간 순간 이미 방문이 보장 됨. (중복 제거!!!) + que.offer(new int[] {curr[0]+1, row, col}); + } + } + } + System.out.println(map[N-1][M-1]); + } +} +// private static void BFS(int r, int c, int sum) { +// answer[r][c] = sum; +// if(r == N-1 && c == M-1) { // 위치 찾음 +// return; +// } +// for(int d=0; d<4; d++) { +// int row = r + dr[d]; +// int col = c + dc[d]; +// if(-1 < row && row < N && -1 < col && col < M && map[row][col] == 1 && answer[row][col] != 0) { +// //한 번도 가지 않은 곳이 아닌 현재 값보다 작은 값이면 업데이트 +// BFS(row, col, sum+1); +// } +// } +// +// } + +class Point implements Comparable{ + int r, c, value; + Point(int r, int c, int value){ + this.r = r; this.c = c; this.value = value; + } + + public int compareTo(Point p) { + if(this.value > p.value) return 1; + else { + if(value < p.value) return -1; + else return 0; + } + } +} \ No newline at end of file diff --git "a/src/KSY/\354\227\254\355\226\211\352\262\275\353\241\234.java" "b/src/KSY/\354\227\254\355\226\211\352\262\275\353\241\234.java" new file mode 100644 index 0000000..081551a --- /dev/null +++ "b/src/KSY/\354\227\254\355\226\211\352\262\275\353\241\234.java" @@ -0,0 +1,66 @@ +package KSY; + +import java.util.*; +class 여행경로 { + static Map> graph = new HashMap<>(); + static Map visited = new HashMap<>(); + static String[] answer; + static boolean flag=false; + + public static String[] solution(String[][] tickets) { + answer = new String[tickets.length+1]; + + for(int i=0; i new ArrayList<>()).add(tickets[i][1]); + // 티켓 개수 구하기 + String tempKey = tickets[i][0] + tickets[i][1]; + if(visited.containsKey(tempKey)) + visited.put(tempKey, visited.get(tempKey)+1); + else + visited.put(tempKey, 1); + + if(graph.containsKey(tickets[i][0])){ + graph.get(tickets[i][0]).add(tickets[i][1]); + } else{ + List list = new ArrayList<>(); + list.add(tickets[i][1]); + graph.put(tickets[i][0], list); + } + } + // Todo : map 출력 방법, computeIfAbsente + + for(Map.Entry> entry: graph.entrySet()) { + Collections.sort(graph.get(entry.getKey())); //정렬 + System.out.println(entry.getKey() +" "+ entry.getValue()); + } + + DFS("ICN", 0); + return answer; + } + + public static void DFS(String vertex, int cnt){ + if(cnt == answer.length-1){ + System.out.println("--"+Arrays.toString(answer)); + flag = true; + return; + } + answer[cnt] = vertex; + + if(graph.containsKey(vertex)) { + for(String v: graph.get(vertex)) { + if(visited.get(vertex+v) > 0) { //아직 방문하지 않은 + visited.put(vertex+v, visited.get(vertex+v)-1); // 방문 표시 + answer[cnt+1] = v; + DFS(v, cnt+1); + if(!flag) // 정답이 만들어지지 못 했다면 backtracking + visited.put(vertex+v, visited.get(vertex+v)+1); // 미방문 표시 + } + } + } + } + public static void main(String[] args) { +// System.out.println(Arrays.toString(solution(new String[][]{{"ICN", "JFK"}, {"HND", "IAD"}, {"JFK", "HND"}}))); + System.out.println(Arrays.toString(solution(new String[][] {{"ICN", "SFO"}, {"ICN", "ATL"}, {"SFO", "ATL"}, {"ATL", "ICN"}, {"ATL","SFO"}}))); + + } +} diff --git a/testcase.txt b/testcase.txt new file mode 100644 index 0000000..16d7ce7 --- /dev/null +++ b/testcase.txt @@ -0,0 +1,8 @@ +7 7 +1011111 +1110001 +1000001 +1000001 +1000001 +1000001 +1111111 \ No newline at end of file From bee65960fb3e68e973e882326f69285f04e8f047 Mon Sep 17 00:00:00 2001 From: Sina Date: Thu, 24 Aug 2023 10:42:37 +0900 Subject: [PATCH 12/27] =?UTF-8?q?FEAT=20:=208=EC=A3=BC=EC=B0=A8=20?= =?UTF-8?q?=EB=9D=BC=EC=9D=B4=EB=B8=8C=20=EB=B0=A9=EC=86=A1=20=EC=BD=94?= =?UTF-8?q?=EB=93=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build/classes/.gitignore | 2 + ...\353\240\210\354\235\270\354\247\200.java" | 32 ++++ ...\352\260\200\354\212\244\352\264\200.java" | 157 ++++++++++++++++++ .../AdjMatrixTest.java" | 13 +- .../MakeSpaceTest.java" | 2 +- .../NQueenTest1.java" | 2 + .../SquareNumberTest.java" | 2 +- .../AdjMatrixTest.java" | 145 ++++++++++++++++ .../DisjoinSetTest.java" | 82 +++++++++ .../\354\243\274\354\260\2508/MSTPrim.java" | 58 +++++++ ...\254\352\264\200\353\246\254userCode.java" | 61 +++++-- src/S14940.java | 66 ++++++++ src/S7576.java | 59 +++++++ testcase.txt | 26 +-- 14 files changed, 678 insertions(+), 29 deletions(-) create mode 100644 "src/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.java" create mode 100644 "src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201_\352\260\200\354\212\244\352\264\200.java" rename src/KSY/personal/AlgoURa/AdjMatrixTest.java => "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest.java" (89%) rename src/KSY/personal/AlgoURa/MakeSpaceTest.java => "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.java" (96%) rename src/KSY/personal/AlgoURa/NQueenTest1.java => "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/NQueenTest1.java" (93%) rename src/KSY/personal/AlgoURa/SquareNumberTest.java => "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.java" (95%) create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.java" create mode 100644 src/S14940.java create mode 100644 src/S7576.java diff --git a/build/classes/.gitignore b/build/classes/.gitignore index f17a489..d574c85 100644 --- a/build/classes/.gitignore +++ b/build/classes/.gitignore @@ -1 +1,3 @@ /KSY/ +/S14940.class +/S7576.class diff --git "a/src/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.java" "b/src/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.java" new file mode 100644 index 0000000..768e335 --- /dev/null +++ "b/src/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.java" @@ -0,0 +1,32 @@ +package KSY.personal; + +import java.util.*; +import java.io.*; + +//public class Main { // class start +public class Algo1_서울_19반_전자레인지 { // class start + + public static void main(String[] args) throws IOException { // main start + Scanner sc = new Scanner(System.in); // 입력받기 위한 scanner + int T = sc.nextInt(); // 맞춰야하는 시간 + int[] buttonValue = new int[] { 300, 60, 10 }; + + // 만족하지 못 하는 경우 + if (T % 10 != 0) { + System.out.println(-1); + return; + } + + // DFS(T); // T를 만족시키는 조합 찾기 + int[] answer = new int[3]; + for (int i = 0; i < 3; i++) { + answer[i] += T / buttonValue[i]; + T %= buttonValue[i]; + } + if (T == 0) + System.out.println(answer[0] + " " + answer[1] + " " + answer[2]); // 출력 + else + System.out.println(-1); + } // main end + +} // class end \ No newline at end of file diff --git "a/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201_\352\260\200\354\212\244\352\264\200.java" "b/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201_\352\260\200\354\212\244\352\264\200.java" new file mode 100644 index 0000000..5f6252d --- /dev/null +++ "b/src/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201_\352\260\200\354\212\244\352\264\200.java" @@ -0,0 +1,157 @@ +package KSY.personal; + + +import java.util.*; +import java.io.*; + +public class Algo3_서울_19반_김신영_가스관 { + + static Point M, Z, A = new Point(-1, -1); // 집, 유치원, 결과 + static int R, C; // 행, 열 크기 + static boolean[][] visited; // 방문 표시 배열 + static char[][] map; // map + static int[] dr = new int[] { 1, 0, -1, 0, 1, 1, -1, -1}; // down, right, up, left + static int[] dc = new int[] { 0, 1, 0, -1, 1, -1, 1, -1}; // down right, down left, up right, up left + static boolean flag = false, realFlag = false; + + static char[] blocks = new char[] { '-', '+', '1', '2', '3', '4' }; // 모든 블록 형태 + + public static void main(String[] args) throws IOException { // main start + System.setIn(new FileInputStream("testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); // Test case 개수 + + for (int test = 0; test <= T; test++) { // test case + StringTokenizer st = new StringTokenizer(br.readLine()); + R = Integer.parseInt(st.nextToken()); // map 행 크기 + C = Integer.parseInt(st.nextToken()); // map 열 크기 + map = new char[R + 1][C + 1]; // map 배열 초기화 + visited = new boolean[R + 1][C + 1]; // 방문한 위치인지 판별 + + // map 입력 받기 + for (int i = 0; i < R; i++) { + String line = br.readLine(); + for (int j = 0; j < C; j++) { + map[i+1][j+1] = line.charAt(j); + if (map[i+1][j+1] == 'M') // 집이라면 + M = new Point(i+1, j+1); // 집 위치 업데이트 + else if (map[i+1][j+1] == 'Z') // 유지원이라면 + Z = new Point(i+1, j+1); // 유치원 위치 업데이트 + } + } + + //첫 방향 찾기 + int r, c, dir; + for(int d=0; d<8; d++) { + int row = M.r + dr[d]; + int col = M.c + dc[d]; + if(-1 < row && row < R && -1 < col && col < C && map[row][col] != '.') { + r = row; c = col; dir = d; + break; + } + } + + // todo : 첫 방향을 찾지 못 했을 때 + + visited[M.r][M.c] = true; // 집 위치 방문 표시 + findRoad(M.r, M.c, 1); // M부터 Z까지 DFS로 길 찾기 + + sb.append("#").append(test).append(" ").append(A.r).append(A.c).append(map[A.r][A.c]).append("\n"); + + } // test case end + + bw.write(sb.toString()); // 출력 + bw.flush(); // bw 비우기 + bw.close(); // bw 닫기 + + } // main end + + private static void findRoad(int r, int c, int dir) { // 현재 위치, 방향 매서드/DFS로 가능한 경우 찾기 + if (r == Z.r && c == Z.c) { // 유치원에 도착 함 + realFlag = true; + return; + } + + for (int d = 0; d < 8; d++) { // 방문하지 않은 주변 경우 확인 + int row = r + dr[d]; // 행 방향 전환 + int col = c + dc[d]; // 열 방향 전환 + if (-1 < row && row < R && -1 < col && col < C && !visited[row][col]) { + visited[row][col] = true; // 방문 표시 + + switch (map[row][col]) { + case '-': + if (dir == 1) // 오른 방향 이었다면 + findRoad(r, c + 1, d); + else if (dir == 3) // 왼 방향 이었다면 + findRoad(r, c - 1, d); + break; + case '+': + if (dir == 1) // 오른 방향 이었다면 + findRoad(r, c + 1, d); + else if (dir == 3) // 왼 방향 이었다면 + findRoad(r, c - 1, d); + else if (dir == 0) // 아래 방향 이었다면 + findRoad(r + 1, c, d); + else if (dir == 2) // 위 방향 이었다면 + findRoad(r - 1, c, d); + break; + case '1': // up right + if (dir == 2) // 위 방향 이었다면 + findRoad(r, c + 1, d); + else if (dir == 3) // 왼 방향 이었다면 + findRoad(r - 1, c , d); + break; + case '2': // ㄴ + if (dir == 0) //아래 방향 이었다면 + findRoad(r, c + 1, d); + else if (dir == 4) // 왼 방향 이었다면 + findRoad(r - 1, c , d); + break; + case '3': // down, left + if (dir == 2) //아래 방향 이었다면 + findRoad(r, c - 1, d); + else if (dir == 3) // 오른 방향 이었다면 + findRoad(r - 1, c , d); + break; + case '4': // ㄱ + if (dir == 2) //위 방향 이었다면 + findRoad(r, c - 1, d); + else if (dir == 1) // 오른 방향 이었다면 + findRoad(r + 1, c , d); + break; + case '.': // 빈 공간(새로운 값을 넣어 본다) + A.r = row; + A.c = col; // 찾았다고 표시 + if(!flag) { + for (int setChar = 0; setChar < 6; setChar++) { + flag = true; + map[row][col] = blocks[setChar]; + if(!realFlag) { + findRoad(row, col, d); + } + flag = false; + } + } + break; + } + + visited[row][col] = true; // 방문 표시 해제 + } + } + } + +} // class end + +//Point +class Point { + int r, c; // 위치 + char block; // 블록 + + Point(int r, int c) { + this.r = r; + this.c = c; + } +} diff --git a/src/KSY/personal/AlgoURa/AdjMatrixTest.java "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest.java" similarity index 89% rename from src/KSY/personal/AlgoURa/AdjMatrixTest.java rename to "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest.java" index ab82e97..4d99c1c 100644 --- a/src/KSY/personal/AlgoURa/AdjMatrixTest.java +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest.java" @@ -1,5 +1,7 @@ -package KSY.personal.AlgoURa; +package KSY.personal.AlgoURa.주차7; +import java.io.FileInputStream; +import java.io.IOException; import java.util.ArrayDeque; import java.util.Arrays; import java.util.Queue; @@ -8,7 +10,7 @@ //무향 그래프 public class AdjMatrixTest { - //Node + //Node(인접 리스트) static class Node{ int vertext; Node next; @@ -24,12 +26,13 @@ public String toString() { } } - public static void main(String[] args) { + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("graph_input2.txt")); Scanner sc = new Scanner(System.in); int V = sc.nextInt(); int E = sc.nextInt(); - Node adjList[] = new Node[V]; // 헤드리스 + Node adjList[] = new Node[V]; // 헤드리스트 int[][] adjMatrix = new int[V][V]; // 초기값 0 // 간선 있으면 1, 없으면 0 @@ -56,6 +59,7 @@ public static void main(String[] args) { bfs(adjList); } + // 인접 행렬 private static void bfs(int[][] adjMatrix) { int size = adjMatrix.length; Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. @@ -81,6 +85,7 @@ private static void bfs(int[][] adjMatrix) { } + // 인접 리스트 private static void bfs(Node adjList[]) { int size = adjList.length; Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. diff --git a/src/KSY/personal/AlgoURa/MakeSpaceTest.java "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.java" similarity index 96% rename from src/KSY/personal/AlgoURa/MakeSpaceTest.java rename to "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.java" index e01da75..e2dfe48 100644 --- a/src/KSY/personal/AlgoURa/MakeSpaceTest.java +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.java" @@ -1,4 +1,4 @@ -package KSY.personal.AlgoURa; +package KSY.personal.AlgoURa.주차7; import java.util.Scanner; diff --git a/src/KSY/personal/AlgoURa/NQueenTest1.java "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/NQueenTest1.java" similarity index 93% rename from src/KSY/personal/AlgoURa/NQueenTest1.java rename to "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/NQueenTest1.java" index dbf7ac8..4034e87 100644 --- a/src/KSY/personal/AlgoURa/NQueenTest1.java +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/NQueenTest1.java" @@ -1,3 +1,5 @@ +package KSY.personal.AlgoURa.주차7; + import java.util.Scanner; // 같은 행에는 퀀을 놓지 않는 버전 diff --git a/src/KSY/personal/AlgoURa/SquareNumberTest.java "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.java" similarity index 95% rename from src/KSY/personal/AlgoURa/SquareNumberTest.java rename to "src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.java" index 86ab8b7..ddcc909 100644 --- a/src/KSY/personal/AlgoURa/SquareNumberTest.java +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.java" @@ -1,4 +1,4 @@ -package KSY.personal.AlgoURa; +package KSY.personal.AlgoURa.주차7; import java.util.Scanner; public class SquareNumberTest { diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.java" new file mode 100644 index 0000000..856ab7a --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.java" @@ -0,0 +1,145 @@ +package KSY.personal.AlgoURa.주차8; + +import java.io.FileInputStream; +import java.io.IOException; +import java.util.ArrayDeque; +import java.util.Arrays; +import java.util.Queue; +import java.util.Scanner; + +//무향 그래프 +public class AdjMatrixTest { + + //Node(인접 리스트) + static class Node{ + int vertex; + Node next; + + public Node(int vertex, Node next) { + super(); + this.vertex = vertex; + this.next = next; + } + @Override + public String toString() { + return "Node [vertex=" + vertex + ", next=" + next.toString()+ "]"; + } + } + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("graph_input2.txt")); + Scanner sc = new Scanner(System.in); + int V = sc.nextInt(); + int E = sc.nextInt(); + + Node adjList[] = new Node[V]; // 헤드리스트 + + int[][] adjMatrix = new int[V][V]; // 초기값 0 + // 간선 있으면 1, 없으면 0 + + for(int i=0; i < E; i++) { + int from = sc.nextInt(); + int to = sc.nextInt(); +// 인접행렬 + adjMatrix[from][to] = 1; + adjMatrix[to][from] = 1; + + //인접리스트 + adjList[from] = new Node(to, adjList[from]); // 연결된 순서는 상관없으므로 가능한 연산(from과 연결된 아이들끼리의 관계는 아무것도 없음) + adjList[to] = new Node(from, adjList[to]); + } + +// for(int[] is : adjMatrix) { +// System.out.println(Arrays.toString(is)); +// } +// for(Node node : adjList) { // node : 각 정점의 인접리스트의 헤드 +// System.out.println(node); +// } + + //BFS +// bfs(adjMatrix); +// bfs(adjList); + + //DFS +// dfs(adjMatrix, new boolean[V], 0); + dfs(adjList, new boolean[V], 0); // 인접 리스트의 앞으로 연결했기 때문에 결과가 다를 수 있음 + } + + // 인접 행렬 BFS + private static void bfs(int[][] adjMatrix) { + int size = adjMatrix.length; + Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. + boolean[] visited = new boolean[size]; + + //탐색 시작점 정점0으로 하자 + que.offer(0); + visited[0] = true; + + while(!que.isEmpty()) { + int curr = que.poll(); + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (int i = 0; i < size; i++) { + if(adjMatrix[curr][i] != 0 && !visited[i]) { // 인접해있고 방문하지 않았다면 + que.offer(i); + visited[i] = true; + } + } + } + + + } + + // 인접 리스트 BFS + private static void bfs(Node adjList[]) { + int size = adjList.length; + Queue que = new ArrayDeque<>(); // 큐에 넣는 값은 방문대상을 관리할 값과 그밖의 값들이 될 수 있다. + boolean[] visited = new boolean[size]; + + //탐색 시작점 정점0으로 하자 + que.offer(0); + visited[0] = true; + + while(!que.isEmpty()) { + int curr = que.poll(); + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (Node temp = adjList[curr]; temp!=null; temp=temp.next) { + if(!visited[temp.vertex]) { // 인접해있고 방문하지 않았다면 + que.offer(temp.vertex); + visited[temp.vertex] = true; + } + } + } + + + } + + // 인접 행렬 DFS + private static void dfs(int[][] adjMatrix, boolean[] visited, int curr) { + visited[curr] = true; + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (int i = 0; i < adjMatrix.length; i++) { + if(adjMatrix[curr][i] != 0 && !visited[i]) { // 인접해있고 방문하지 않았다면 + dfs(adjMatrix, visited, i); + } + } + } + + private static void dfs(Node adjList[], boolean[] visited, int curr) { + visited[curr] = true; + System.out.println((char)(curr+65)); + + //현 정점의 인접정점들 체크하며 대기열에 넣기 + for (Node temp = adjList[curr]; temp != null; temp = temp.next) { + if(!visited[temp.vertex]) { // 인접해있고 방문하지 않았다면 + dfs(adjList, visited, temp.vertex); + } + } + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.java" new file mode 100644 index 0000000..d2a4142 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.java" @@ -0,0 +1,82 @@ +package KSY.personal.AlgoURa.주차8; + +import java.util.Arrays; + +public class DisjoinSetTest { + + static int N; // 초기 집합의 개수 + static int parents[]; + + private static void make() { + parents = new int[N]; + for(int i=0; i< N; i++) { + parents[i] = i; // 모든 요소는 자기만 원소로 갖는 단위 서로소 집합이 되게 한다.(자신이 곧 대표자, 루트로 표현) + } + } + + private static int find(int a) { + // path compression 1 +// if(a != parents[a]) { +// parents[a] = find(parents[a]); // path compression +// } +// return parents[a]; + + // path compression 2 + // 경로압축이 일어난다고 Rank에 변화가 생기지 않는다. + // Rank 관리가 쉽지 않다 => 매번 find에서 변경시 오버헤드가 생길 수 있다. + // Rank 관리를 Union에서 하고, find할 때는 수행하지 않는 것이 대부분의 코딩 방식이다. + if(parents[a] == a) return a; + return parents[a] = find(parents[a]); + + + // Before 최적화 +// if(a == parents[a]) return a; +// return find(parents[a]); + } + + private static boolean union(int a, int b) { // a가 속한 집합과 b가 속한 집합을 합칠 수 있다면 합치고 true 반환, 아니면 false 반 + int aRoot = find(a); + int bRoot = find(b); + + //teacher + if(aRoot == bRoot) return false; // 서로의 대표자가 같은 즉, 같은 집합의 상황이므로 union하지 않음. + //union 처리( bRoot를 aRoot 아래로 붙이기!! : 임의로 ...) + parents[bRoot] = aRoot; + return true; + + } + + + public static void main(String[] args) { + N = 5; + make(); +// System.out.println("find(0) :" + find(0)); +// System.out.println("find(1) :" + find(1)); +// System.out.println("find(2) :" + find(2)); +// System.out.println("find(3) :" + find(3)); +// System.out.println("find(4) :" + find(4)); + System.out.println(Arrays.toString(parents)); + System.out.println(union(0, 1)); + System.out.println(Arrays.toString(parents)); + System.out.println(union(2, 1)); + System.out.println(Arrays.toString(parents)); + System.out.println(union(3, 2)); + System.out.println(Arrays.toString(parents)); + System.out.println(union(4, 3)); + System.out.println(Arrays.toString(parents)); + + System.out.println("\n=======find========"); + System.out.println(find(4)); + System.out.println(Arrays.toString(parents)); + System.out.println(find(3)); + System.out.println(Arrays.toString(parents)); + System.out.println(find(2)); + System.out.println(Arrays.toString(parents)); + System.out.println(find(0)); + System.out.println(Arrays.toString(parents)); + System.out.println(find(1)); + System.out.println(Arrays.toString(parents)); + + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.java" new file mode 100644 index 0000000..f0e260f --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.java" @@ -0,0 +1,58 @@ +package KSY.personal.AlgoURa.주차8; + +import java.io.*; +import java.util.*; + +public class MSTPrim { + + static int V, adjMatrix[][]; + + public static void main(String[] args) throws NumberFormatException, IOException { + BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); + V = Integer.parseInt(in.readLine()); + adjMatrix = new int[V][V]; + + for (int i = 0; i < V; i++) { + StringTokenizer st = new StringTokenizer(in.readLine(), " "); + for (int j = 0; j < V; j++) { + adjMatrix[i][j] = Integer.parseInt(st.nextToken()); + } + } + + boolean[] visited = new boolean[V]; + int[] minEdge = new int[V]; // 자신과 트리의 정점들 간 최소 간선 비용 + + Arrays.fill(minEdge, Integer.MAX_VALUE); // 최소값 갱신 위한 큰 값으로 세팅 + minEdge[0] = 0; // 임의 정점 0을 시작점으로 초기화 + + int result = 0; // 최소신장트리 비용 + int min = 0, minVertex; + + for (int c = 0; c < V; c++) { + minVertex = -1; + min = Integer.MAX_VALUE; + // step1 : 미방문(비트리) 정점 중 최소간선비용의 정점을 선택 + for (int i = 0; i < V; i++) { + if (!visited[i] && min > minEdge[i]) { // 임시 후보 i 찾음 + minVertex = i; + min = minEdge[i]; + } + } + + // step2 : 방문(트리) 정점에 추가 + visited[minVertex] = true; // 방문처리 + result += min; // 신장트리 비용 누적 + + // step3 : 트리에 추가된 새로운 정점 기준으로 비트리 정점과의 간선비용 고려 (a.k.a 영업타임) + for (int i = 0; i < V; i++) { + if (!visited[i] && adjMatrix[minVertex][i] != 0 && minEdge[i] > adjMatrix[minVertex][i]) { + minEdge[i] = adjMatrix[minVertex][i]; // 방금 선택된 간선과 연결된 간선 중 + } + } + + } + System.out.println(result); //누적비용 출력 + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" index eeb6f6a..652b711 100644 --- "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" @@ -4,30 +4,25 @@ public class 병사관리userCode { - private List Soldiers; // id -> team, score + private Set Soldiers; // id -> team, score public void init() { - Soldiers = new LinkedList<>(); // 병사관리 리스트 + Soldiers = new HashSet<>(); // 병사관리 리스트 생성 } public void hire(int mID, int mTeam, int mScore) { - for(int[] soldier : Soldiers) { - if(soldier[0] == mID) { - return; // 이미 있는 병사 - } - } - Soldiers.add(new int[] {mID, mTeam, mScore}); - System.out.println(mID + "병사 추가"); + Soldiers.add(new Soldier(mID, mTeam, mScore)); + //System.out.println(mID + "병사 추가"); } public void fire(int mID) { - for(int[] soldier : Soldiers) { - if(soldier[0] == mID) { + for(Soldier soldier : Soldiers) { + if(soldier.mID == mID) { Soldiers.remove(soldier); - System.out.println(mID + "병사 제거"); + //System.out.println(mID + "병사 제거"); return; } } @@ -36,15 +31,39 @@ public void fire(int mID) public void updateSoldier(int mID, int mScore) { + for(Soldier soldier: Soldiers) { + if(soldier.mID == mID) { + soldier.mScore = mScore; + break; + } + } } public void updateTeam(int mTeam, int mChangeScore) { + for(Soldier soldier: Soldiers) { + if(soldier.mTeam == mTeam) { + if(soldier.mScore + mChangeScore > 5) + soldier.mScore = 5; + else if(soldier.mScore + mChangeScore < 1) + soldier.mScore = 1; + else + soldier.mScore = soldier.mScore + mChangeScore; + } + } } public int bestSoldier(int mTeam) { - return 0; + int maxTeamValue = 0, theID=0; + for(Soldier soldier: Soldiers) { + if(soldier.mScore > maxTeamValue) { + theID = soldier.mID; + maxTeamValue = soldier.mScore; + } + + } + return theID; } class soldier{ @@ -72,3 +91,19 @@ public void setmScore(int mScore) { } } + +class Soldier { + int mID, mTeam, mScore; + Soldier(int mID, int mTeam, int mScore){ + this.mID = mID; this.mTeam = mTeam; this.mScore = mScore; + } + @Override + public int hashCode() { + return mID; + } + @Override + public boolean equals(Object obj) { + return mID == ((Soldier)obj).mID; + } + +} diff --git a/src/S14940.java b/src/S14940.java new file mode 100644 index 0000000..ddc9188 --- /dev/null +++ b/src/S14940.java @@ -0,0 +1,66 @@ + +import java.util.*; +import java.io.*; + +public class S14940 { + static int[] dr = new int[]{1, 0, -1, 0}; + static int[] dc = new int[]{0, 1, 0, -1}; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int[][] map = new int[N][M]; + int[][] answer = new int[N][M]; + + int r=0, c=0; + //입력받기 + for(int i=0; i que = new ArrayDeque<>(); + que.offer(new int[] {r, c, 0}); + + while(!que.isEmpty()) { + int[] curr = que.poll(); + for(int d=0; d<4; d++) { + int row = curr[0] + dr[d]; + int col = curr[1] + dc[d]; + if(-1 < row && row < N && -1 < col && col < M && answer[row][col] == -1) { + if(map[row][col] == 1) { + que.offer(new int[] {row, col, curr[2]+1}); + answer[row][col] = curr[2]+1; + } + } + } + } + + for(int i=0; i que = new ArrayDeque<>(); + + for(int i=0; i Date: Sat, 26 Aug 2023 22:12:33 +0900 Subject: [PATCH 13/27] . --- ...\354\227\260\352\265\254\354\206\214.java" | 135 ++++++++++++++++++ ...\353\241\234\355\203\210\354\266\234.java" | 95 ++++++++++++ src/KSY/testcase.txt | 8 ++ 3 files changed, 238 insertions(+) create mode 100644 "src/KSY/S14502_\354\227\260\352\265\254\354\206\214.java" create mode 100644 "src/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.java" create mode 100644 src/KSY/testcase.txt diff --git "a/src/KSY/S14502_\354\227\260\352\265\254\354\206\214.java" "b/src/KSY/S14502_\354\227\260\352\265\254\354\206\214.java" new file mode 100644 index 0000000..33aa3b1 --- /dev/null +++ "b/src/KSY/S14502_\354\227\260\352\265\254\354\206\214.java" @@ -0,0 +1,135 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//280624KB/ 508ms + +public class S14502_연구소 { + static int index, N, M; + static int[] dr = new int[] {1, -1, 0, 0}; + static int[] dc = new int[] {0, 0, 1, -1}; + + public static void main(String[] args) throws NumberFormatException, IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + int[][] map = new int[N][M]; // 후보가 될 수 있는 포인트 전부 + + //map 입력 + List points = new ArrayList<>(); + Point[] candidates = new Point[N*M]; + index = 0; // 후보 위치 개수 + int answer = 0; + + for(int i=0 ;i= index-3) p[idx--] =1; + do { + int tempAnswer = 0; + + //map copy + int[][] tempMap = new int[N][M]; + for(int m=0; m 0 && p[i-1] >= p[i]) i--; + if(i == 0) return false; + + int j = index-1; + while(p[i-1] >= p[j]) j--; + swap(p, i-1, j); + + int k = index-1; + while(k > i) + swap(p, k--, i++); + return true; + } + + private static void swap(int[] p, int i, int j) { + int temp = p[i]; + p[i] = p[j]; + p[j] = temp; + } + + private static void BFS(int[][] map, int r, int c ) { + Queue que = new ArrayDeque<>(); + que.offer(new Point(r, c)); + while(!que.isEmpty()) { + Point curr = que.poll(); + for(int d=0; d<4; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + if(-1 < row && row < N && -1 < col && col < M && map[row][col] == 0) { + map[row][col] = 2; + que.offer(new Point(row, col)); + } + } + } + } + +} + +class Point{ + int r, c; + Point(int r, int c){ + this.r = r; this.c = c; + } +} \ No newline at end of file diff --git "a/src/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.java" "b/src/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.java" new file mode 100644 index 0000000..9ad7bcf --- /dev/null +++ "b/src/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.java" @@ -0,0 +1,95 @@ +package KSY; + +import java.io.*; +import java.util.*; + +// 964940KB/ 1520ms + +public class S16954_움직이는미로탈출 { + static int[] dr = new int[] {1, -1, 0, 0, 0, 1, 1, -1, -1}; // down, up, right, left, stay, ...대각선... + static int[] dc = new int[] {0, 0, 1, -1, 0, 1, -1, -1, 1}; + + + public static void main(String[] args) throws NumberFormatException, IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + char[][] map = new char[8][8]; // map +// boolean[][] visited = new boolean[8][8]; // visited + List walls = new ArrayList<>(); + + for(int i=0; i<8; i++) { + String line = br.readLine(); + for(int j=0; j<8; j++) { + map[i][j] = line.charAt(j); + if(map[i][j] == '#') { + walls.add(new Wall(i, j)); // 벽 정보 입력 + } + } + } + + List maps = new ArrayList<>(); // 9개의 map 정보 저장 + maps.add(map); // 첫번째 맵 + for(int i=1; i<=8; i++) { + char[][] preMap = maps.get(i-1); + char[][] temp = new char[8][8]; + + //map 복사 + Arrays.fill(temp[0], '.'); + for(int j=0; j<7; j++) { + temp[j+1] = preMap[j].clone(); + } + maps.add(temp); + } + + Queue que = new ArrayDeque<>(); + que.offer(new int[] {7, 0, 0}); // r, c, map no. + while(!que.isEmpty()) { + int[] curr = que.poll(); + int mapIdx = curr[2]; + if(curr[2] > 8) + mapIdx = 8; + if(curr[0] == 0 && curr[1] == 7) { + System.out.println(1);; + return; + } + if(maps.get(mapIdx)[curr[0]][curr[1]] == '#') + continue; + + for(int d=0; d<9; d++) { + int row = curr[0] + dr[d]; + int col = curr[1] + dc[d]; + if(-1 < row && row < 8 && -1 < col && col <8 && maps.get(mapIdx)[row][col] == '.') { //&& !visited[row][col] +// visited[row][col] = true; + que.offer(new int[] {row, col, mapIdx+1}); + } + + } +// visited[7][0] = true; +// // move wall +// for(int w=walls.size()-1; w>= 0 ; w--) { +// Wall wall = walls.get(w); +// if(wall.r + 1 > 7) +// walls.remove(w); +// else { +// map[wall.r][wall.c] = '.'; +// wall.r++; +// map[wall.r][wall.c] = '#'; +// } +// +// } + } + System.out.println(0); + + } + +} + +class Wall{ + int r, c; + Wall(int r, int c){ + this.r = r; this.c = c; + } +} \ No newline at end of file diff --git a/src/KSY/testcase.txt b/src/KSY/testcase.txt new file mode 100644 index 0000000..5ce34d6 --- /dev/null +++ b/src/KSY/testcase.txt @@ -0,0 +1,8 @@ +........ +........ +........ +........ +#....... +.####### +#....... +........ \ No newline at end of file From 7e8ca77b112d18b114d1cbf0efe605e91e0d1cc1 Mon Sep 17 00:00:00 2001 From: Sina Date: Sun, 27 Aug 2023 18:04:29 +0900 Subject: [PATCH 14/27] =?UTF-8?q?FEAT=20:=202=ED=9A=8C=EC=B0=A8=20B?= =?UTF-8?q?=ED=98=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- dijkstra_input_edge.txt | 49 ++++++++ ...354\262\2402\355\230\270\354\204\240.java" | 81 +++++++++++++ src/KSY/S1946.java | 62 ++++++++++ ...\352\262\260\355\225\230\352\270\260.java" | 100 ++++++++++++++++ src/KSY/input.txt | 15 +++ .../DijkstraTest.java" | 81 +++++++++++++ .../MSTPrimPQTest.java" | 77 +++++++++++++ .../input.txt" | 7 ++ ...\254\352\264\200\353\246\254userCode.java" | 1 - ...\355\206\265\354\241\260\354\203\201.java" | 62 ++++++++++ ...\202\254\352\264\200\353\246\254main.java" | 103 +++++++++++++++++ ...\254\352\264\200\353\246\254userCode.java" | 108 ++++++++++++++++++ ...4\235\230\354\247\204\354\247\234BFS.java" | 58 ++++++++++ ...\354\234\204\354\210\234\355\232\214.java" | 63 ++++++++++ ...\353\242\260\354\260\276\352\270\260.java" | 10 ++ src/KSY/testcase.txt | 39 +++++-- 16 files changed, 907 insertions(+), 9 deletions(-) create mode 100644 dijkstra_input_edge.txt create mode 100644 "src/KSY/S16947_\354\204\234\354\232\270\354\247\200\355\225\230\354\262\2402\355\230\270\354\204\240.java" create mode 100644 src/KSY/S1946.java create mode 100644 "src/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.java" create mode 100644 src/KSY/input.txt create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254main.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\355\214\214\355\225\221\355\214\214\355\225\221\354\247\200\353\242\260\354\260\276\352\270\260.java" diff --git a/dijkstra_input_edge.txt b/dijkstra_input_edge.txt new file mode 100644 index 0000000..c1ace20 --- /dev/null +++ b/dijkstra_input_edge.txt @@ -0,0 +1,49 @@ +6 11 +0 5 +0 1 3 +0 2 5 +1 2 2 +1 3 6 +2 1 1 +2 3 4 +2 4 6 +3 4 2 +3 5 3 +4 0 3 +4 5 6 + +output==> 12 + + +5 4 +0 3 +0 1 5 +1 2 2 +3 2 6 +4 3 10 + +output==> -1 + + + +10 17 +0 9 +0 1 4 +0 2 6 +1 3 9 +1 4 8 +2 1 3 +2 4 2 +2 5 3 +3 6 6 +4 3 2 +4 5 1 +4 6 3 +4 7 7 +5 7 4 +5 8 8 +6 9 13 +7 9 9 +8 9 4 + +output ==>21 \ No newline at end of file diff --git "a/src/KSY/S16947_\354\204\234\354\232\270\354\247\200\355\225\230\354\262\2402\355\230\270\354\204\240.java" "b/src/KSY/S16947_\354\204\234\354\232\270\354\247\200\355\225\230\354\262\2402\355\230\270\354\204\240.java" new file mode 100644 index 0000000..216fcc2 --- /dev/null +++ "b/src/KSY/S16947_\354\204\234\354\232\270\354\247\200\355\225\230\354\262\2402\355\230\270\354\204\240.java" @@ -0,0 +1,81 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//302012KB/ 1156ms + +public class S16947_서울지하철2호선 { + + static Map> graph = new HashMap<>(); + static boolean[] cycle; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + for (int v = 1; v <= N; v++) { + graph.put(v, new ArrayList<>()); + } + + for (int i = 0; i < N; i++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int a = Integer.parseInt(st.nextToken()); + int b = Integer.parseInt(st.nextToken()); + graph.get(a).add(b); + graph.get(b).add(a); + } + + // 각 역이 순환선에 포함되는지 판별 + cycle = new boolean[N + 1]; + for (int i = 1; i <= N; i++) { + if (checkCycle(i, i, i)) // 순환선을 찾았다면 + break; + cycle = new boolean[N + 1]; + } + System.out.println(Arrays.toString(cycle)); + + for(int v=1; v<=N; v++) { // 각 역에 대해서 순환선과의 거리 BFS + Queue que = new ArrayDeque<>(); + que.offer(new int[] {v, 0}); // + boolean[] visited = new boolean[N+1]; + while(!que.isEmpty()) { + int[] curr = que.poll(); + if(cycle[curr[0]]){ // cycle 찾음 + sb.append(curr[1]).append(" "); + break; + } + for(int ver: graph.get(curr[0])) { + if(!visited[ver]) { + visited[ver] = true; + que.offer(new int[] {ver, curr[1]+1}); + } + } + } + } + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + +// for(int v=1; v<=N; v++) +// System.out.println(v + " " + graph.get(v).toString()); + } + + private static boolean checkCycle(int prev, int now, int start) { // DFS로 순환 확인 + cycle[now] = true; + for (int v : graph.get(now)) { + if (!cycle[v]) { + if (checkCycle(now, v, start)) + return true; + } else if (v != prev && v == start) // cycle 찾음! + return true; + } + cycle[now] = false; + return false; + } + +} diff --git a/src/KSY/S1946.java b/src/KSY/S1946.java new file mode 100644 index 0000000..cb8c9e7 --- /dev/null +++ b/src/KSY/S1946.java @@ -0,0 +1,62 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//300400KB/ 1560ms + +public class S1946 { + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/input.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { // test case + int N = Integer.parseInt(br.readLine()); + List candidates = new ArrayList<>(); + for(int i=0; i candidates.get(i).b) { // 서류에서 큰 값을 가진 면접 점수와 비교 + answer++; + min = candidates.get(i).b; + } + } + +// sb.append(Arrays.toString(candidates)).append("\n"); // 답 입력 + sb.append(answer).append("\n"); // 답 입력 + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} + +class Candidate implements Comparable{ + int a, b; + Candidate(int a, int b){ + this.a = a; this.b = b; + } + @Override + public int compareTo(Candidate o) { // 서류 기준으로 내림차순 정렬 + if(a > o.a) return 1; + else if(a < o.a) return -1; + return 0; + } + @Override + public String toString() { + return a + " " + b; + } + +} \ No newline at end of file diff --git "a/src/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.java" "b/src/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.java" new file mode 100644 index 0000000..4049f8b --- /dev/null +++ "b/src/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.java" @@ -0,0 +1,100 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class SWEA_1767_프로세서연결하기 { + + static List cores = new ArrayList<>(); + static int answer = 0, N; + + static int[] dr = new int[] {1, 0, -1, 0}; + static int[] dc = new int[] {0, 1, 0, -1}; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { // test case + int answer = 0; // 전선의 총 길이 + N = Integer.parseInt(br.readLine()); // map 크기 + int[][] map = new int[N][N]; // map + for(int i=0; i answer) // backtracking : 지금까지 발견된 것보다 크다면 더이상 탐색 x + return; + if(coreIndex >= cores.size()) { // 기저조건 : 모든 core를 연결함 + if(answer > sum) + answer = sum; + return; + } + //map copy + int[][] tempMap = new int[N][N]; + for(int i=0; i N-1 || col < 0 || col > N-1) + return cnt; + else + return -1; + } + +} + +class Core{ + int r, c; + Core(int r, int c){ + this.r = r; this.c = c; + } +} \ No newline at end of file diff --git a/src/KSY/input.txt b/src/KSY/input.txt new file mode 100644 index 0000000..0abe3d0 --- /dev/null +++ b/src/KSY/input.txt @@ -0,0 +1,15 @@ +2 +5 +3 2 +1 4 +4 1 +2 3 +5 5 +7 +3 6 +7 3 +4 2 +1 4 +5 7 +2 5 +6 1 \ No newline at end of file diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.java" new file mode 100644 index 0000000..3f07aa2 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.java" @@ -0,0 +1,81 @@ +package KSY.personal.AlgoURa.주차8; + +import java.util.*; +import java.io.*; + +public class DijkstraTest { + + //TODO : 다익스트라 샘플문제 풀어보기 + + static class Node{ + int vertex, weight; + Node next; + + public Node(int vertex, int weight, Node next) { + this.vertex = vertex; + this.weight = weight; + this.next = next; + } + } + + public static void main(String[] args) throws IOException { +// System.setIn(new FileInputStream("dijkstra_input_dege")); + + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + StringTokenizer st = new StringTokenizer(br.readLine().trim()); + int V = Integer.parseInt(st.nextToken()); + int E = Integer.parseInt(st.nextToken()); + st = new StringTokenizer(br.readLine().trim()); + int start = Integer.parseInt(st.nextToken()); + int end = Integer.parseInt(st.nextToken()); + + Node[] adjList = new Node[V]; + int[] distance = new int[V]; + boolean[] visited = new boolean[V]; + + for (int i = 0; i < E; i++) { + st = new StringTokenizer(br.readLine().trim(), " "); + int from = Integer.parseInt(st.nextToken()); + int to = Integer.parseInt(st.nextToken()); + int weight = Integer.parseInt(st.nextToken()); + adjList[from] = new Node(to, weight, adjList[from]); + + } + + final int INF = Integer.MAX_VALUE; + Arrays.fill(distance, INF); + + distance[start] = 0; + int min=0, stopOver=0; + for (int i = 0; i < V; i++) { //모든 정점을 다 처리할 때까지 반복 + //step1. 미방문 정점중에 출발지에서 가장 가까운 정점 찾기 + stopOver = -1; + min = INF; + for (int j = 0; j < V; j++) { + if(!visited[j] && min > distance[j]) { + min = distance[j]; + stopOver = j; + } + } + if(stopOver == -1) break; + + //step2. 방문처리 + visited[stopOver] = true; + // 상황에 따라서 처리 : 경우지가 곧 도착디면 끝내기 (출발지에서 모든 정점으로의 최단거리를 구할 때는 break 하지 말기) + if(stopOver == end) break; + + //step3. 경유지를 이용하여 미방문 정점들의 출발지에서 자신으로의 최소비용 고려 + for(Node temp = adjList[stopOver]; temp != null; temp = temp.next) { + // 해당 정점이 방문 정점이 아니고 현재 정점에서 갈 수 있는 정점의 경우 + // 경유지 정점을 거쳐서 해당 점점을 갈 경우의 최단거리와 기존까지 계산된 해당정점까지의 최단거리를 비교하여 최소값을 만족하면 갱신 + if(!visited[temp.vertex] && distance[temp.vertex] > min+temp.weight) { + distance[temp.vertex] = min+temp.weight; + } + } + + } + System.out.println(distance[end] != INF ? distance[end] : -1); + + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.java" new file mode 100644 index 0000000..e86fac7 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.java" @@ -0,0 +1,77 @@ +package KSY.personal.AlgoURa.주차8; + +import java.io.*; +import java.util.*; + +public class MSTPrimPQTest { + + static class Vertex implements Comparable{ + int no, weight; // 정점 번호, 트리 특정 정점과 연결했을 때의 간선비용 + + public Vertex(int no, int weight) { + super(); + this.no = no; + this.weight = weight; + } + + @Override + public int compareTo(Vertex o) { + return Integer.compare(this.weight, o.weight); + } + + + } + + static int V, adjMatrix[][]; + + public static void main(String[] args) throws NumberFormatException, IOException { + BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); + V = Integer.parseInt(in.readLine()); + adjMatrix = new int[V][V]; + + for (int i = 0; i < V; i++) { + StringTokenizer st = new StringTokenizer(in.readLine(), " "); + for (int j = 0; j < V; j++) { + adjMatrix[i][j] = Integer.parseInt(st.nextToken()); + } + } + + // 방문정점(트리정점표시) + boolean[] visited = new boolean[V]; + int[] minEdge = new int[V]; // 자신과 트리의 정점들 간 최소 간선 비용 + PriorityQueue pQueue = new PriorityQueue<>(); + + Arrays.fill(minEdge, Integer.MAX_VALUE); // 최소값 갱신 위한 큰 값으로 세팅 + minEdge[0] = 0; // 임의 정점 0을 시작점으로 초기화 + pQueue.offer(new Vertex(0, minEdge[0])); + + int result = 0; // 최소신장트리 비용 + int min = 0, minVertex=0, cnt = 0; + + while (pQueue.isEmpty()) { + // step1 : 미방문(비트리) 정점 중 최소간선비용의 정점을 선택 + Vertex cur = pQueue.poll(); + minVertex = cur.no; + min = cur.weight; + + if(visited[minVertex]) continue; // 고인물 제거 + + // step2 : 방문(트리) 정점에 추가 + visited[minVertex] = true; // 방문처리 + result += min; // 신장트리 비용 누적 + if(++cnt == V) break; + + // step3 : 트리에 추가된 새로운 정점 기준으로 비트리 정점과의 간선비용 고려 (a.k.a 영업타임) + for (int i = 0; i < V; i++) { + if (!visited[i] && adjMatrix[minVertex][i] != 0 && minEdge[i] > adjMatrix[minVertex][i]) { + minEdge[i] = adjMatrix[minVertex][i]; // 방금 선택된 간선과 연결된 간선 중 + pQueue.offer(new Vertex(i, minEdge[i])); + } + } + + } + System.out.println(result); //누적비용 출력 + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" new file mode 100644 index 0000000..0fa4694 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" @@ -0,0 +1,7 @@ +3 +4 +1 1 2 +4 +1 1 3 +11 +1 1 3 3 2 4 1 3 2 9 \ No newline at end of file diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" index 652b711..330518b 100644 --- "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.java" @@ -61,7 +61,6 @@ public int bestSoldier(int mTeam) theID = soldier.mID; maxTeamValue = soldier.mScore; } - } return theID; } diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.java" new file mode 100644 index 0000000..a27ef58 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.java" @@ -0,0 +1,62 @@ +package KSY.personal.B형특강.회차2; + +import java.io.*; +import java.util.*; + +public class 공통조상 { + + static Map> graph; + static Map> parents; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/personal/B형특강/input.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); // V, E, v1, v2 + graph = new HashMap<>(); + parents = new HashMap<>(); + + int V = Integer.parseInt(st.nextToken()); + int E = Integer.parseInt(st.nextToken()); + int v1 = Integer.parseInt(st.nextToken()); + int v2 = Integer.parseInt(st.nextToken()); + + int[] nodes = new int[V+1]; + + for(int i=1; i<=V; i++) { + graph.put(i, new ArrayList<>()); + parents.put(i, new ArrayList<>()); + } + + st = new StringTokenizer(br.readLine()); + for(int i=0; i Soldiers; // id -> team, score + + public void init() + { + Soldiers = new HashSet<>(); // 병사관리 리스트 생성 + } + + public void hire(int mID, int mTeam, int mScore) + { + Soldiers.add(new Soldier(mID, mTeam, mScore)); + //System.out.println(mID + "병사 추가"); + } + + public void fire(int mID) + { + for(Soldier soldier : Soldiers) { + if(soldier.mID == mID) { + Soldiers.remove(soldier); + //System.out.println(mID + "병사 제거"); + return; + } + } + //해당하는 병사 찾지 못 함 + } + + public void updateSoldier(int mID, int mScore) + { + for(Soldier soldier: Soldiers) { + if(soldier.mID == mID) { + soldier.mScore = mScore; + break; + } + } + } + + public void updateTeam(int mTeam, int mChangeScore) + { + for(Soldier soldier: Soldiers) { + if(soldier.mTeam == mTeam) { + if(soldier.mScore + mChangeScore > 5) + soldier.mScore = 5; + else if(soldier.mScore + mChangeScore < 1) + soldier.mScore = 1; + else + soldier.mScore = soldier.mScore + mChangeScore; + } + } + } + + public int bestSoldier(int mTeam) + { + int maxTeamValue = 0, theID=0; + for(Soldier soldier: Soldiers) { + if(soldier.mScore > maxTeamValue) { + theID = soldier.mID; + maxTeamValue = soldier.mScore; + } + } + return theID; + } + + class soldier{ + private int mID; + private int mTeam; + private int mScore; + public int getmID() { + return mID; + } + public void setmID(int mID) { + this.mID = mID; + } + public int getmTeam() { + return mTeam; + } + public void setmTeam(int mTeam) { + this.mTeam = mTeam; + } + public int getmScore() { + return mScore; + } + public void setmScore(int mScore) { + this.mScore = mScore; + } + } + +} + +class Soldier { + int mID, mTeam, mScore; + Soldier(int mID, int mTeam, int mScore){ + this.mID = mID; this.mTeam = mTeam; this.mScore = mScore; + } + @Override + public int hashCode() { + return mID; + } + @Override + public boolean equals(Object obj) { + return mID == ((Soldier)obj).mID; + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.java" new file mode 100644 index 0000000..e20c546 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.java" @@ -0,0 +1,58 @@ +package KSY.personal.B형특강.회차2; + +import java.io.*; +import java.util.*; + +public class 영준이의진짜BFS { + + static Map> graph; + static boolean[] visited; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/personal/B형특강/input.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + + int N = Integer.parseInt(br.readLine()); + graph = new HashMap<>(); + visited = new boolean[N+1]; + + for(int i=1; i<=N; i++) { + graph.put(i, new ArrayList<>()); + } + + StringTokenizer st = new StringTokenizer(br.readLine()); + for(int i=2; i<=N; i++) { + int parent = Integer.parseInt(st.nextToken()); + graph.get(parent).add(i); + } + + Queue que = new ArrayDeque<>(); + que.offer(1); + visited[1] = true; + int answer = 0; + while(!que.isEmpty()) { + int curr = que.poll(); + System.out.print(curr+ " "); + answer++; + for(int v: graph.get(curr)) { + if(!visited[v]) { + que.offer(v); + } + } + } + System.out.println(); + sb.append("#").append(test).append(" ").append(answer).append("\n"); + + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.java" new file mode 100644 index 0000000..2229a1b --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.java" @@ -0,0 +1,63 @@ +package KSY.personal.B형특강.회차2; + +import java.io.*; +import java.util.*; + +public class 중위순회 { + static Node[] nodes; + static String[] vertexes; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/personal/B형특강/input.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int N = Integer.parseInt(br.readLine()); + nodes = new Node[N+1]; + vertexes = new String[N+1]; + + for(int i=1; i<=N; i++) { +// Node node = new Node(); + StringTokenizer st = new StringTokenizer(br.readLine()); // 정점번호, 문장, 왼쪽 자식, 오른쪽 자식 + int index = Integer.parseInt(st.nextToken()); + String word = st.nextToken(); + +// if(st.hasMoreTokens()) // 자식이 있음 +// node.right = Integer.parseInt(st.nextToken()); +// st.ne +// if(st.hasMoreTokens()) // 자식이 있음 +// node.left = Integer.parseInt(st.nextToken()); +// while(st.hasMoreTokens()) { +// st.nextToken(); +// } + +// nodes[node.index] = node; + vertexes[i] = word; + + } + + + + sb.append("#").append(test).append(" ").append(false); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + + private static void DFS(int vertex) { + if(vertex > ) + DFS(vertex.left); + } + +} + +class Node{ + int index; + Node right, left; + String word; +} \ No newline at end of file diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\355\214\214\355\225\221\355\214\214\355\225\221\354\247\200\353\242\260\354\260\276\352\270\260.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\355\214\214\355\225\221\355\214\214\355\225\221\354\247\200\353\242\260\354\260\276\352\270\260.java" new file mode 100644 index 0000000..e0f66c3 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\355\214\214\355\225\221\355\214\214\355\225\221\354\247\200\353\242\260\354\260\276\352\270\260.java" @@ -0,0 +1,10 @@ +package KSY.personal.B형특강.회차2; + +public class 파핑파핑지뢰찾기 { + + public static void main(String[] args) { + // TODO Auto-generated method stub + + } + +} diff --git a/src/KSY/testcase.txt b/src/KSY/testcase.txt index 5ce34d6..8283129 100644 --- a/src/KSY/testcase.txt +++ b/src/KSY/testcase.txt @@ -1,8 +1,31 @@ -........ -........ -........ -........ -#....... -.####### -#....... -........ \ No newline at end of file +3 +7 +0 0 1 0 0 0 0 +0 0 1 0 0 0 0 +0 0 0 0 0 1 0 +0 0 0 0 0 0 0 +1 1 0 1 0 0 0 +0 1 0 0 0 0 0 +0 0 0 0 0 0 0 +9 +0 0 0 0 0 0 0 0 0 +0 0 1 0 0 0 0 0 1 +1 0 0 0 0 0 0 0 0 +0 0 0 1 0 0 0 0 0 +0 1 0 0 0 0 0 0 0 +0 0 0 0 0 0 1 0 0 +0 0 0 1 0 0 0 0 0 +0 0 0 0 0 0 0 1 0 +0 0 0 0 0 0 0 0 1 +11 +0 0 1 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 1 +0 0 0 1 0 0 0 0 1 0 0 +0 1 0 1 1 0 0 0 1 0 0 +0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 1 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 +0 0 0 0 0 0 0 0 1 0 0 +0 0 0 0 0 0 1 0 0 0 0 +0 0 0 0 0 0 0 0 0 0 0 From d800bbf27856bbbcfd104951351e90e9de77c433 Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Mon, 28 Aug 2023 01:29:40 +0900 Subject: [PATCH 15/27] =?UTF-8?q?FEAT=20:=20=EB=82=98=EB=AC=B4=EC=9D=98=20?= =?UTF-8?q?=ED=82=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...355\227\230\353\214\200\353\271\204.class" | Bin 4234 -> 0 bytes ...\352\262\260\355\225\230\352\270\260.java" | 42 +++++--- src/KSY/input.txt | 70 +++++++++--- .../SoonJonBu.java" | 2 +- .../testcase.txt" | 61 +++++++++++ ...\355\227\230\353\214\200\353\271\204.java" | 2 +- ...30\353\214\200\353\271\204_practice1.java" | 2 +- ...\355\227\230\353\214\200\353\271\204.java" | 101 ++++++++++++++++++ 8 files changed, 249 insertions(+), 31 deletions(-) delete mode 100644 "build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" rename src/KSY/personal/SoonJonBu.java => "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.java" (97%) create mode 100644 "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" rename "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" => "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" (99%) rename "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" => "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" (99%) create mode 100644 "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.java" diff --git "a/build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" "b/build/classes/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" deleted file mode 100644 index 22a5a69ddc4b00ba6eded8051f9a63dfba9abb7f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4234 zcma)8YjBk16@K2`Z!cLsObi!EHef(5$$}e5NI`-@L8(g;q6UG06}}{!WMQ+3yBmmY zRoVtc#S2v`0#c&FR;2=gZdO5Cd#}Cy>$HD5(;w}0nlK$ZV`pS2>2uz1lMsomnc2Me z_dMr0=Q;29(be}p0I(Fl_rRerx2B=7tScN(bjGY`+0c=fwv|^bUcO}MwxMT^UV8b^ z;Ql>>@Ai6NDCF(1c3EXnE7n$4-?Ss#oK)~8JCjy)O^jU?;%_~F_w%ft9j)xQ7Q7$_YO$r6qZCTwNiME8}vU6o57D-ksI7>=5Di~`zTf#m# zF~vkK@)UAwBeC%M?vAE#e1p{#4J+i=b~anljaED&y-q=GT4^cWKt>up%*q z=_M1u7aYF3dz!;t$w+4`;Xx7I9CLDX#e-Q2H|d2)XW80FG#nC6NJ7}^@S<2DN0Ssx z_9T6ni8%-*5I;MZI z54BkDLEZRR>Et(2k9#FnUC{`EFPJFS6XaYD6z(_S!z8(TgNX+Oj=?KCeAt9W4>l{@ zs43G54aJh-ws73U7HlQ#E-Rj3_6buH84StwUonvbxAeA|@Yp@egxBshn=moS1A1wnWH9N6{D`!Xm_HW=dE}fqvB}dT{A{2!}tors_NK1;d)kT zR8E9fMYX(g5=kqbv{Ob=RFfN$R`bp}t4kMjkLaKUZ<%--rgnK4cEzfWniinN%#>wlTd(4(RA`+N!> zBFsvlS(IqBMy)o9`THh5zz@mJdMOMgTSKK=h_j0mTSFdv$T`gg=XS{UpPTpve#!HR z-4-`_ctA3g%RBkA_~Vmm@LAxZuc5O$-W-;oSs!%EGNfBp1l>~YYy}+OWd6UAqcXONtt&8q{Il#hFqQw^deVz&?3?xmOvg|${Lq~z(EN@)lNu%>^B0a#Li{N|NE@8WuZ8h5`*w(OplI>=; z``CsHJo$+Iy3l23WXW$ zO<}5x_N8EE@JtHs44#|r%HY7Fezc`=FpWct(m2xVR5SbWVBc__#K5Uz5JwUFx#T|& zv&iydOu^#cD2=s!~*{3O@eJFkRircUa#OGxDC|)1kp;k?IdLbivr1E3o5G}p>=m{c^>jvHzcKvrh!>JIzJ*1>O`~u> zS*VHr%NXjQ*3~YCZ8wqkaP$b1vxf=tD0TA~6XbCO*)FH1Rx#8gN#bB?+ezZ(n$XV= z(=7dVlH_U962<2{i!mp03C+D-NQsb;jVU?uAfDZJ)bO)3`W)l`JWJCHSjcfDRbI`tbvUS<5nVcP zkEUK;vLJq{!y$Q-3)dC6l%#sG<1(-D$*Y_7;8S`aCE`JvH(Km`9`+x@4FSK=5)Al* zuML0fKMa@il-|HtxO*ML_F@qiKap-x20zowd|+||etI~w*E!5d|IEJOe;KEEzg>S< zlR1Fu=Vw(8j<60NW~F_V*>#MfI8N^S7^~MP(>})Ibqe&gQuqBSL`{p)Th9E1v$!b1DWtD#})Y1B+|gIi7XAxyijN$`e1dy zA1Dge2a0CaOE9i2i0^RIX&yYoXaDRqNOH4CgzS$r@zVRXMq)4 cores = new ArrayList<>(); - static int answer = 0, N; + static int answer, N, test; - static int[] dr = new int[] {1, 0, -1, 0}; + static int[] dr = new int[] {1, 0, -1, 0}; // down, right, up, left static int[] dc = new int[] {0, 1, 0, -1}; public static void main(String[] args) throws IOException { @@ -18,8 +18,8 @@ public static void main(String[] args) throws IOException { StringBuilder sb = new StringBuilder(); int T = Integer.parseInt(br.readLine()); - for(int test=1; test<=T; test++) { // test case - int answer = 0; // 전선의 총 길이 + for(test=1; test<=T; test++) { // test case + answer = Integer.MAX_VALUE; // 전선의 총 길이 N = Integer.parseInt(br.readLine()); // map 크기 int[][] map = new int[N][N]; // map for(int i=0; i answer) // backtracking : 지금까지 발견된 것보다 크다면 더이상 탐색 x return; - if(coreIndex >= cores.size()) { // 기저조건 : 모든 core를 연결함 + if(coreIndex == cores.size()) { // 기저조건 : 모든 core를 연결함 if(answer > sum) answer = sum; return; } - //map copy - int[][] tempMap = new int[N][N]; - for(int i=0; i N-1 || col < 0 || col > N-1) + if(row < 0 || row > N-1 || col < 0 || col > N-1) { return cnt; + } else return -1; } diff --git a/src/KSY/input.txt b/src/KSY/input.txt index 0abe3d0..387bd1b 100644 --- a/src/KSY/input.txt +++ b/src/KSY/input.txt @@ -1,15 +1,61 @@ +30 2 -5 -3 2 -1 4 -4 1 -2 3 5 5 -7 -3 6 -7 3 +2 4 2 -1 4 -5 7 -2 5 -6 1 \ No newline at end of file +2 +3 4 +4 +2 3 10 5 +4 +1 2 3 4 +20 +26 19 23 2 24 2 17 15 1 27 6 29 18 23 27 13 26 21 9 1 +20 +4 5 3 4 2 4 4 3 5 2 2 3 5 5 5 2 5 2 5 5 +20 +1 3 6 5 5 1 5 4 3 5 4 2 4 6 5 5 4 5 5 3 +20 +4 5 6 6 5 3 1 3 3 3 3 5 3 3 3 4 5 1 4 3 +20 +26 6 8 15 10 15 14 6 19 16 5 13 9 12 14 29 28 3 12 27 +30 +8 27 2 32 19 16 19 11 33 35 7 9 6 12 7 1 1 28 38 32 25 14 5 15 34 30 14 24 7 24 +30 +3 2 5 5 5 4 4 5 2 4 3 4 3 5 5 2 5 4 2 5 2 1 5 4 4 3 2 4 2 4 +30 +6 4 6 5 6 1 1 6 4 5 6 6 5 1 3 6 5 5 5 4 6 1 1 5 3 3 6 1 5 5 +30 +1 6 3 5 6 1 4 5 4 5 5 5 6 5 2 3 6 2 3 5 5 1 5 4 6 5 6 4 6 6 +30 +35 8 19 40 12 17 11 29 14 21 31 39 28 33 16 19 34 12 12 10 28 40 6 19 36 19 10 2 34 22 +50 +37 59 11 13 18 30 22 53 35 18 27 7 50 19 57 38 54 24 31 38 4 8 9 54 37 29 32 27 11 7 19 57 36 54 35 31 45 2 10 54 27 14 51 27 34 51 1 58 4 6 +50 +2 2 5 2 3 2 3 1 3 5 5 3 2 2 2 3 4 4 4 2 1 5 4 4 4 2 3 4 2 5 4 3 5 3 5 2 2 4 4 4 5 5 3 4 2 3 4 4 5 4 +50 +6 6 5 4 6 6 1 4 2 1 4 6 2 3 5 6 5 5 1 5 5 4 5 3 1 6 3 6 5 3 5 1 3 5 3 6 3 5 5 2 4 3 6 3 5 5 3 5 5 6 +50 +5 5 5 1 4 5 3 2 4 5 5 5 6 3 2 5 5 6 3 5 3 5 4 6 5 5 3 3 6 5 6 1 3 4 4 6 1 6 3 3 6 3 2 6 6 1 5 4 5 4 +50 +11 17 35 37 41 2 8 20 40 5 25 58 54 7 36 33 46 44 37 53 15 8 42 56 35 2 40 55 50 58 49 2 35 19 32 54 18 12 22 56 23 17 47 4 30 56 48 4 36 33 +70 +37 26 72 57 38 33 9 6 66 71 59 55 21 58 65 57 27 36 14 27 7 76 34 34 8 55 23 80 41 35 39 38 8 5 17 23 42 1 27 78 77 26 74 51 13 27 32 11 75 37 37 62 75 73 41 28 29 57 56 18 79 27 48 9 1 30 31 65 73 63 +70 +3 4 4 3 4 5 4 1 5 4 4 5 5 5 4 4 2 3 3 4 4 2 3 2 5 1 2 5 4 4 4 5 2 2 4 2 3 2 3 5 4 5 4 4 1 2 3 4 4 4 5 3 5 5 4 5 4 3 5 5 2 4 1 4 2 4 5 3 5 3 +70 +6 5 1 3 3 5 5 5 3 5 3 4 2 6 5 5 1 2 1 3 5 4 6 1 1 5 5 5 5 5 6 6 5 1 1 5 3 5 4 5 3 5 2 4 3 1 2 5 6 3 6 3 4 4 5 3 5 5 3 3 6 5 2 1 3 5 6 5 4 5 +70 +5 5 4 6 6 3 4 1 1 1 3 6 6 1 5 5 1 5 3 5 6 3 5 3 4 6 1 5 2 6 3 5 6 5 3 5 1 3 4 4 6 5 2 1 6 5 4 5 5 4 5 6 3 5 2 4 3 3 3 3 3 6 3 5 5 3 5 4 5 5 +70 +47 25 56 22 41 75 1 47 39 28 48 52 43 50 56 2 50 41 35 6 36 23 60 67 73 3 30 52 31 8 60 34 10 55 35 24 28 75 45 5 37 49 24 1 59 7 6 20 77 4 5 67 5 25 18 61 29 54 41 69 68 16 33 48 65 18 22 34 70 2 +100 +30 108 8 61 17 56 54 29 50 72 9 97 67 36 75 110 88 99 75 93 19 44 39 45 72 53 115 106 1 20 25 118 117 51 89 72 116 33 76 26 6 47 35 55 45 89 78 69 56 78 58 95 34 9 1 14 2 9 8 64 12 85 117 49 40 44 8 2 89 36 12 56 89 18 38 63 3 57 29 110 25 46 98 20 119 52 114 107 23 11 105 35 119 55 82 115 56 85 68 28 +100 +2 4 4 3 1 3 4 5 5 2 3 2 4 4 4 4 4 2 4 1 5 3 5 3 2 3 4 4 2 2 3 5 2 4 2 4 3 4 4 2 4 5 4 5 4 4 4 5 5 3 3 4 4 1 2 1 5 2 4 4 4 1 2 4 1 2 1 4 5 2 4 5 5 2 4 5 1 4 3 5 4 5 2 3 2 5 4 4 5 3 2 4 4 2 2 5 5 1 2 2 +100 +4 5 2 6 6 1 5 2 1 1 3 5 3 3 5 6 5 6 3 5 5 5 1 1 6 3 5 5 6 5 4 4 6 6 1 5 1 5 1 4 5 5 2 5 5 5 5 3 6 3 2 5 5 6 6 3 5 3 1 2 5 1 4 6 4 6 1 3 4 3 6 1 1 5 2 3 1 5 3 5 6 5 5 5 5 3 5 6 2 6 5 4 3 5 5 3 5 6 5 6 +100 +3 6 5 1 6 5 6 1 6 5 5 6 6 5 5 6 3 5 3 5 6 6 3 5 5 6 3 3 3 2 4 6 4 4 5 4 5 6 6 5 1 5 2 3 3 3 5 3 6 5 4 3 6 5 6 6 5 5 5 2 3 5 1 6 1 6 3 3 6 5 2 6 3 2 3 3 5 1 6 5 5 6 1 3 4 3 3 5 2 1 1 6 1 5 6 4 6 5 4 5 +100 +68 88 9 43 34 56 114 65 16 83 42 2 120 94 45 100 44 110 47 34 16 112 24 108 22 78 88 120 65 69 108 81 36 53 82 15 67 56 82 95 74 95 14 77 29 97 68 103 32 109 88 115 80 107 15 116 81 78 82 17 98 100 47 103 30 41 55 72 100 24 11 19 105 12 64 102 100 22 21 106 50 8 66 14 20 58 43 14 78 82 21 5 1 81 89 65 35 20 87 47 diff --git a/src/KSY/personal/SoonJonBu.java "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.java" similarity index 97% rename from src/KSY/personal/SoonJonBu.java rename to "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.java" index 28e7dd8..3497f4e 100644 --- a/src/KSY/personal/SoonJonBu.java +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.java" @@ -1,4 +1,4 @@ -package KSY.personal; +package KSY.personal.시험대비; import java.io.IOException; import java.util.Arrays; diff --git "a/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" new file mode 100644 index 0000000..387bd1b --- /dev/null +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" @@ -0,0 +1,61 @@ +30 +2 +5 5 +2 +4 2 +2 +3 4 +4 +2 3 10 5 +4 +1 2 3 4 +20 +26 19 23 2 24 2 17 15 1 27 6 29 18 23 27 13 26 21 9 1 +20 +4 5 3 4 2 4 4 3 5 2 2 3 5 5 5 2 5 2 5 5 +20 +1 3 6 5 5 1 5 4 3 5 4 2 4 6 5 5 4 5 5 3 +20 +4 5 6 6 5 3 1 3 3 3 3 5 3 3 3 4 5 1 4 3 +20 +26 6 8 15 10 15 14 6 19 16 5 13 9 12 14 29 28 3 12 27 +30 +8 27 2 32 19 16 19 11 33 35 7 9 6 12 7 1 1 28 38 32 25 14 5 15 34 30 14 24 7 24 +30 +3 2 5 5 5 4 4 5 2 4 3 4 3 5 5 2 5 4 2 5 2 1 5 4 4 3 2 4 2 4 +30 +6 4 6 5 6 1 1 6 4 5 6 6 5 1 3 6 5 5 5 4 6 1 1 5 3 3 6 1 5 5 +30 +1 6 3 5 6 1 4 5 4 5 5 5 6 5 2 3 6 2 3 5 5 1 5 4 6 5 6 4 6 6 +30 +35 8 19 40 12 17 11 29 14 21 31 39 28 33 16 19 34 12 12 10 28 40 6 19 36 19 10 2 34 22 +50 +37 59 11 13 18 30 22 53 35 18 27 7 50 19 57 38 54 24 31 38 4 8 9 54 37 29 32 27 11 7 19 57 36 54 35 31 45 2 10 54 27 14 51 27 34 51 1 58 4 6 +50 +2 2 5 2 3 2 3 1 3 5 5 3 2 2 2 3 4 4 4 2 1 5 4 4 4 2 3 4 2 5 4 3 5 3 5 2 2 4 4 4 5 5 3 4 2 3 4 4 5 4 +50 +6 6 5 4 6 6 1 4 2 1 4 6 2 3 5 6 5 5 1 5 5 4 5 3 1 6 3 6 5 3 5 1 3 5 3 6 3 5 5 2 4 3 6 3 5 5 3 5 5 6 +50 +5 5 5 1 4 5 3 2 4 5 5 5 6 3 2 5 5 6 3 5 3 5 4 6 5 5 3 3 6 5 6 1 3 4 4 6 1 6 3 3 6 3 2 6 6 1 5 4 5 4 +50 +11 17 35 37 41 2 8 20 40 5 25 58 54 7 36 33 46 44 37 53 15 8 42 56 35 2 40 55 50 58 49 2 35 19 32 54 18 12 22 56 23 17 47 4 30 56 48 4 36 33 +70 +37 26 72 57 38 33 9 6 66 71 59 55 21 58 65 57 27 36 14 27 7 76 34 34 8 55 23 80 41 35 39 38 8 5 17 23 42 1 27 78 77 26 74 51 13 27 32 11 75 37 37 62 75 73 41 28 29 57 56 18 79 27 48 9 1 30 31 65 73 63 +70 +3 4 4 3 4 5 4 1 5 4 4 5 5 5 4 4 2 3 3 4 4 2 3 2 5 1 2 5 4 4 4 5 2 2 4 2 3 2 3 5 4 5 4 4 1 2 3 4 4 4 5 3 5 5 4 5 4 3 5 5 2 4 1 4 2 4 5 3 5 3 +70 +6 5 1 3 3 5 5 5 3 5 3 4 2 6 5 5 1 2 1 3 5 4 6 1 1 5 5 5 5 5 6 6 5 1 1 5 3 5 4 5 3 5 2 4 3 1 2 5 6 3 6 3 4 4 5 3 5 5 3 3 6 5 2 1 3 5 6 5 4 5 +70 +5 5 4 6 6 3 4 1 1 1 3 6 6 1 5 5 1 5 3 5 6 3 5 3 4 6 1 5 2 6 3 5 6 5 3 5 1 3 4 4 6 5 2 1 6 5 4 5 5 4 5 6 3 5 2 4 3 3 3 3 3 6 3 5 5 3 5 4 5 5 +70 +47 25 56 22 41 75 1 47 39 28 48 52 43 50 56 2 50 41 35 6 36 23 60 67 73 3 30 52 31 8 60 34 10 55 35 24 28 75 45 5 37 49 24 1 59 7 6 20 77 4 5 67 5 25 18 61 29 54 41 69 68 16 33 48 65 18 22 34 70 2 +100 +30 108 8 61 17 56 54 29 50 72 9 97 67 36 75 110 88 99 75 93 19 44 39 45 72 53 115 106 1 20 25 118 117 51 89 72 116 33 76 26 6 47 35 55 45 89 78 69 56 78 58 95 34 9 1 14 2 9 8 64 12 85 117 49 40 44 8 2 89 36 12 56 89 18 38 63 3 57 29 110 25 46 98 20 119 52 114 107 23 11 105 35 119 55 82 115 56 85 68 28 +100 +2 4 4 3 1 3 4 5 5 2 3 2 4 4 4 4 4 2 4 1 5 3 5 3 2 3 4 4 2 2 3 5 2 4 2 4 3 4 4 2 4 5 4 5 4 4 4 5 5 3 3 4 4 1 2 1 5 2 4 4 4 1 2 4 1 2 1 4 5 2 4 5 5 2 4 5 1 4 3 5 4 5 2 3 2 5 4 4 5 3 2 4 4 2 2 5 5 1 2 2 +100 +4 5 2 6 6 1 5 2 1 1 3 5 3 3 5 6 5 6 3 5 5 5 1 1 6 3 5 5 6 5 4 4 6 6 1 5 1 5 1 4 5 5 2 5 5 5 5 3 6 3 2 5 5 6 6 3 5 3 1 2 5 1 4 6 4 6 1 3 4 3 6 1 1 5 2 3 1 5 3 5 6 5 5 5 5 3 5 6 2 6 5 4 3 5 5 3 5 6 5 6 +100 +3 6 5 1 6 5 6 1 6 5 5 6 6 5 5 6 3 5 3 5 6 6 3 5 5 6 3 3 3 2 4 6 4 4 5 4 5 6 6 5 1 5 2 3 3 3 5 3 6 5 4 3 6 5 6 6 5 5 5 2 3 5 1 6 1 6 3 3 6 5 2 6 3 2 3 3 5 1 6 5 5 6 1 3 4 3 3 5 2 1 1 6 1 5 6 4 6 5 4 5 +100 +68 88 9 43 34 56 114 65 16 83 42 2 120 94 45 100 44 110 47 34 16 112 24 108 22 78 88 120 65 69 108 81 36 53 82 15 67 56 82 95 74 95 14 77 29 97 68 103 32 109 88 115 80 107 15 116 81 78 82 17 98 100 47 103 30 41 55 72 100 24 11 19 105 12 64 102 100 22 21 106 50 8 66 14 20 58 43 14 78 82 21 5 1 81 89 65 35 20 87 47 diff --git "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" similarity index 99% rename from "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" rename to "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" index bbb9e75..e89e9c5 100644 --- "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.java" @@ -1,4 +1,4 @@ -package KSY.personal; +package KSY.personal.시험대비; import java.io.*; import java.util.Arrays; diff --git "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" similarity index 99% rename from "src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" rename to "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" index 4565d94..ce85e31 100644 --- "a/src/KSY/personal/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.java" @@ -1,4 +1,4 @@ -package KSY.personal; +package KSY.personal.시험대비; import java.io.*; import java.util.Arrays; diff --git "a/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.java" "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.java" new file mode 100644 index 0000000..ddade6a --- /dev/null +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.java" @@ -0,0 +1,101 @@ +package KSY.personal.시험대비; + +import java.util.*; +import java.io.*; + +public class 월_230828_A형_시험대비 { + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/personal/시험대비/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for (int test = 1; test <= T; test++) { + + int answer=0; + int N = Integer.parseInt(br.readLine()); + + // 나무 입력 받기 + int trees[] = new int[N]; + int max = 0; + + StringTokenizer st = new StringTokenizer(br.readLine()); + for(int i=0; i max) + max = trees[i]; + } + + int odd=0, even=0; + for(int i=0; i odd) { + while(Math.abs(even - odd) > 1) { + even -= 1; + odd += 2; + } + } + + if(odd > even) + answer = odd*2 - 1; + else if(odd < even) + answer = even*2; + else + answer = odd + even; + + sb.append("#").append(test).append(" ").append(answer).append("\n"); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + + +} + + + +// int cnt = 0; +// +// int N = Integer.parseInt(br.readLine()); +// // 나무 입력 받기 +// List trees = new ArrayList<>(); +// StringTokenizer st = new StringTokenizer(br.readLine()); +// for (int i = 0; i < N; i++) { +// int tree = Integer.parseInt(st.nextToken()); +// trees.add(tree); +// } +// +// Collections.sort(trees); +// int max = trees.get(trees.size() - 1); +// for(int i=trees.size()-1; i>=0; i--) { +// if(trees.get(i) == max) +// trees.remove(i); +// } +// +// int plus = 1; +// while (!trees.isEmpty()) { +// Collections.sort(trees); +// // 더할 값 정하기 +// if (++cnt % 2 == 0) +// plus = 2; +// else +// plus = 1; +// for (int i = trees.size() - 1; i >= 0; i--) { // 뒤부터 탐색 +// if (trees.get(i) + plus == max) { +// trees.remove(i); +// break; +// } +// if (trees.get(i) + plus < max) { +// trees.set(i, trees.get(i) + plus); +// break; +// } +// } +// } \ No newline at end of file From 902da3c67d8c22dc73c7f13a8f20805383604856 Mon Sep 17 00:00:00 2001 From: Sina Date: Mon, 4 Sep 2023 21:23:59 +0900 Subject: [PATCH 16/27] FEAT : 20230904 --- build/classes/.gitignore | 2 + .../KSY/S14501_\355\207\264\354\202\254.java" | 57 +++++++++ ...\354\235\230\354\240\225\354\233\220.java" | 77 +++++++++++ ...\352\265\254\355\225\230\352\270\260.java" | 62 +++++++++ ...\353\215\224\355\225\230\352\270\260.java" | 41 ++++++ ...\354\226\264\352\260\200\352\270\260.java" | 103 +++++++++++++++ .../BinomialCoefTest.java" | 24 ++++ .../FibonacciTest.java" | 50 ++++++++ .../MinCoinTest.java" | 26 ++++ ...\352\262\260\355\225\230\352\270\260.java" | 120 ++++++++++++++++++ .../S2930_\355\236\231.java" | 48 +++++++ .../S3282_01Knapsack.java" | 62 +++++++++ ...\353\217\231\355\225\230\352\270\260.java" | 37 ++++++ ...\354\235\230\352\260\234\354\210\230.java" | 39 ++++++ ...53\254\264\354\235\230\355\202\244RE.java" | 59 +++++++++ src/KSY/testcase.txt | 36 +----- src/knapsack.java | 75 +++++++++++ 17 files changed, 887 insertions(+), 31 deletions(-) create mode 100644 "src/KSY/S14501_\355\207\264\354\202\254.java" create mode 100644 "src/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.java" create mode 100644 "src/KSY/S3000_swea_\354\244\221\352\260\204\352\260\222\352\265\254\355\225\230\352\270\260.java" create mode 100644 "src/KSY/S9095_123\353\215\224\355\225\230\352\270\260.java" create mode 100644 "src/KSY/S9205_\353\247\245\354\243\274\353\247\210\354\213\234\353\251\264\354\204\234\352\261\270\354\226\264\352\260\200\352\270\260.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/MinCoinTest.java" create mode 100644 "src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.java" create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S3282_01Knapsack.java" create mode 100644 "src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" create mode 100644 "src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" create mode 100644 "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_\353\202\230\353\254\264\354\235\230\355\202\244RE.java" create mode 100644 src/knapsack.java diff --git a/build/classes/.gitignore b/build/classes/.gitignore index d574c85..7408121 100644 --- a/build/classes/.gitignore +++ b/build/classes/.gitignore @@ -1,3 +1,5 @@ /KSY/ /S14940.class /S7576.class +/knapsack.class +/knapsack$Thing.class diff --git "a/src/KSY/S14501_\355\207\264\354\202\254.java" "b/src/KSY/S14501_\355\207\264\354\202\254.java" new file mode 100644 index 0000000..1396c99 --- /dev/null +++ "b/src/KSY/S14501_\355\207\264\354\202\254.java" @@ -0,0 +1,57 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S14501_퇴사 { + static int N; + static int[][ metting; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); +// metting = new Node[N]; + metting = + for(int i=0; i=0; i--) { + + } + + } +} + +class Node implements Comparable{ + int t, p; + Node(int t, int p) { + this.t = t; this.p = p; + } + @Override + public int compareTo(Node o) { + if(t > o.t) return 1; + else if(t < o.t) return -1; + return 0; + } + @Override + public String toString() { + return t + " " + p; + } + + +} diff --git "a/src/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.java" "b/src/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.java" new file mode 100644 index 0000000..870ba70 --- /dev/null +++ "b/src/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.java" @@ -0,0 +1,77 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S2457_공주님의정원 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + List flowers = new ArrayList<>(); + + int N = Integer.parseInt(br.readLine()); + for(int i=0; i 11 || (flower.m2 == 11 && flower.d2 >= 30)) { + answer++; + break; + } + + if(flower.m1 < now[2] || (flower.m1 == now[2] && flower.d1 <= now[])) { + answer++; + now[0] = flower.m2; + now[1] = flower.d2; + } else if(flower.m1 == now[0] && flower.d1 < now[1]) { + + } + } + + sb.append(answer); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} + +class Flower implements Comparable{ + int m1, d1, m2, d2; + Flower(int m1, int d1, int m2, int d2){ + this.m1 = m1; this.d1 = d1; this.m2 = m2; this.d2 = d2; + } + public int compareTo(Flower o) { + if(m1 > o.m1) return 1; + if(m1 < o.m1) return -1; + else { + if(d1 > o.d1) return 1; + if(d1 < o.d1) return -1; + else { + if(m2 < o.m2) return 1; + if(m2 > o.m2) return -1; + else { + if(d2 < o.d2) return 1; + if(d2 > o.d2) return -1; + return 0; + } + } + } + } +} \ No newline at end of file diff --git "a/src/KSY/S3000_swea_\354\244\221\352\260\204\352\260\222\352\265\254\355\225\230\352\270\260.java" "b/src/KSY/S3000_swea_\354\244\221\352\260\204\352\260\222\352\265\254\355\225\230\352\270\260.java" new file mode 100644 index 0000000..be292c7 --- /dev/null +++ "b/src/KSY/S3000_swea_\354\244\221\352\260\204\352\260\222\352\265\254\355\225\230\352\270\260.java" @@ -0,0 +1,62 @@ +package KSY; + +import java.io.*; +import java.util.*; + +// 125,224kb/ 908ms + +public class S3000_swea_중간값구하기 { + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for (int test = 1; test <= T; test++) { + long answer = 0; + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); // 자연수 2개 개수 + int A = Integer.parseInt(st.nextToken()); // 초기값 + + // 중간값을 기준으로 트리를 min heap, max heap으로 구성 + PriorityQueue left = new PriorityQueue<>(Collections.reverseOrder()); + PriorityQueue right = new PriorityQueue<>(); + left.offer(A); + + for (int i = 0; i < N; i++) { + st = new StringTokenizer(br.readLine()); + int X = Integer.parseInt(st.nextToken()); + int Y = Integer.parseInt(st.nextToken()); + + if(X > left.peek() && Y > left.peek()) { // 둘 다 중간값보다 크다면 + right.offer(X); + right.offer(Y); + left.offer(right.poll()); + } else if(X < left.peek() && Y < left.peek()) { // 둘 다 중간값보다 작다면 + left.offer(X); + left.offer(Y); + right.offer(left.poll()); + } else { + if(X > Y) { + right.offer(X); + left.offer(Y); + } else { + left.offer(X); + right.offer(Y); + } + } +// System.out.println(left.peek()); + answer = (left.peek() + answer) % 20171109; + + } + + sb.append("#").append(test).append(" ").append(answer); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} diff --git "a/src/KSY/S9095_123\353\215\224\355\225\230\352\270\260.java" "b/src/KSY/S9095_123\353\215\224\355\225\230\352\270\260.java" new file mode 100644 index 0000000..0b5a0e5 --- /dev/null +++ "b/src/KSY/S9095_123\353\215\224\355\225\230\352\270\260.java" @@ -0,0 +1,41 @@ +package KSY; + +import java.io.*; +import java.util.*; + +// 11600KB/ 76ms + +public class S9095_123더하기 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + + for(int test=0; test que = new ArrayDeque<>(); + que.offer(0); + while(!que.isEmpty()) { + int curr = que.poll(); + if(visited[curr]) + continue; + visited[curr] = true; + + if(curr == N+1) { + flag = true; + break; + } + + for(int i=1; i<=N+1; i++) { + if(adjMatrix[curr][i]) { + que.offer(i); + } + } + + } + if(flag) + sb.append("happy"); + else + sb.append("sad"); + sb.append("\n"); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.java" new file mode 100644 index 0000000..b9f94f2 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.java" @@ -0,0 +1,24 @@ +package KSY.personal.AlgoURa.주차9; + +import java.util.Scanner; + +public class BinomialCoefTest { + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + int N = sc.nextInt(); + int K = sc.nextInt(); + + int[][] B = new int[N+1][N+1]; + + for(int i=0; i<=N; i++) { + for(int j=0, end = Math.min(i, K); j <=end ; j++) { // end = Math.min(i, K) 도 가능 + if( j== 0 || i == j) B[i][j] = 1; + else B[i][j] = B[i-1][j-1] + B[i-1][j]; + } + } + System.out.println(B[N][K]); + + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.java" new file mode 100644 index 0000000..0fd1925 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.java" @@ -0,0 +1,50 @@ +package KSY.personal.AlgoURa.주차9; + +import java.util.*; + +public class FibonacciTest { + + static long totalCnt1, totalCnt2, callCnt1[], callCnt2[], memo[]; + + private static long fibo1(int n) { // 피보나치 n항 구하기 + totalCnt1++; + callCnt1[n]++; + if(n<2) return n; + return fibo1(n-1) + fibo1(n-2); + } + + private static long fibo2(int n) { + totalCnt2++; + callCnt2[n]++; + if(memo[n] != -1) return memo[n]; + return memo[n] = fibo2(n-1) + fibo2(n-2); + } + + public static void main(String[] args) { + + Scanner sc = new Scanner(System.in); + int N = sc.nextInt(); + + totalCnt1 = totalCnt2 = 0; + callCnt1 = new long[N+1]; + callCnt2 = new long[N+1]; + memo = new long[N+1]; + + Arrays.fill(memo, -1); // 메모되지 않은 상태를 나타내는 값으로 초기화 + // 유도되어 값이 저장되지 않는 것 초기화 + memo[0] = 0; + memo[1] = 1; + + System.out.println(fibo1(N)); + System.out.println("fibo1 : " + totalCnt1); // fibo1 : 3672623805 + for (int i = 0; i <= N; i++) { + System.out.println("fibo1["+i+"] : " + callCnt1[i]); + } + System.out.println("======================================="); + System.out.println(fibo2(N)); // fibo2 : 89 + System.out.println("fibo2 : " + totalCnt2); + for (int i = 0; i <= N; i++) { + System.out.println("fibo2["+i+"] : " + callCnt2[i]); + } + } +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/MinCoinTest.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/MinCoinTest.java" new file mode 100644 index 0000000..db1d592 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/MinCoinTest.java" @@ -0,0 +1,26 @@ +package KSY.personal.AlgoURa.주차9; + +import java.util.Scanner; + +public class MinCoinTest { + + public static void main(String[] args) { + Scanner sc = new Scanner(System.in); + int money = sc.nextInt(); // 교환 금액 + + int[] D = new int[money+1]; + D[0] = 0; + + for(int i=1; i<= money; i++) { + //1원 시도 + D[i] = D[i-1]+1; + //4원 시도 + if(i>=4 && D[i] > D[i-4]+1) D[i] = D[i-4]+1; + //6원 시도 + if(i>=6 && D[i] > D[i-6]+1) D[i] = D[i-6]+1; + } + + System.out.println(D[money]); + } + +} diff --git "a/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.java" "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.java" new file mode 100644 index 0000000..9d37d81 --- /dev/null +++ "b/src/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.java" @@ -0,0 +1,120 @@ +package KSY.personal.AlgoURa.주차9; + +import java.io.*; +import java.util.*; + +public class 프로세스연결하기 { + + static int N, max, totalCnt, min, map[][]; + static int[] dr = { -1, 1, 0, 0 }; + static int[] dc = { 0, 0, -1, 1 }; + static ArrayList list; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int TC = Integer.parseInt(br.readLine()); + for (int test = 1; test <= TC; test++) { + N = Integer.parseInt(br.readLine()); + map = new int[N][N]; + max = 0; + min = Integer.MAX_VALUE; + totalCnt = 0; + list = new ArrayList(); + + for (int i = 0; i < N; i++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + for (int j = 0; j < N; j++) { + map[i][j] = Integer.parseInt(st.nextToken()); + // 가장자리 코어 제외 + if (i == 0 || i == N - 1 || j == 0 || j == N - 1) + continue; + if (map[i][j] == 1) { + list.add(new int[] { i, j }); + totalCnt++; + } + } + } + + go(0, 0); + System.out.println("#" + test + " " + min); + + } + } + + // 코어를 선택(4방향 시도) / 비선택 + private static void go(int index, int coreCnt) { // index : 고려 할 코어 번호, coreCnt : 연결된 코어 개수 + // 가지 치기 : 현재까지 연결된 코어 수 + 남은 코어 수 < 임시 최대 코어 연결 수 + if (coreCnt + (totalCnt - index) < max) + return; + // 기저 조건 처리 + if (index == totalCnt) { + int res = getLength(); // 놓아진 전선의 길이의 합 + if (max < coreCnt) { + max = coreCnt; + min = res; + } else if (max == coreCnt) { + if (min > res) { + min = res; + } + } + return; + } + + int[] cur = list.get(index); + int row = cur[0]; + int col = cur[1]; + + // 현재 코어를 선택 + for (int d = 0; d < 4; d++) { + if (!isAvailable(row, col, d)) + continue; + setStatus(row, col, d, 2); + go(index + 1, coreCnt + 1); + setStatus(row, col, d, 0); + } + go(index + 1, coreCnt); + + // 현재 코어를 비선택 + } + + private static int getLength() { + int lCnt = 0; + for (int i = 0; i < N; i++) { + for (int j = 0; j < N; j++) { + if (map[i][j] == 2) { + lCnt++; + } + } + } + return lCnt; + } + + private static boolean isAvailable(int r, int c, int d) { + int nr = r; + int nc = c; + while (true) { + nr += dr[d]; + nc += dc[d]; + if (nr < 0 || nr > N - 1 || nc < 0 || nc > N - 1) + break; + if (map[nr][nc] != 0) + return false; + } + return true; + } + + private static boolean setStatus(int r, int c, int d, int status) { + int nr = r; + int nc = c; + while (true) { + nr += dr[d]; + nc += dc[d]; + if (nr < 0 || nr > N - 1 || nc < 0 || nc > N - 1) + break; + map[nr][nc] = status; + + } + return true; + } + +} diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.java" new file mode 100644 index 0000000..9ca8960 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.java" @@ -0,0 +1,48 @@ +package KSY.personal.B형특강.회차3; + +import java.util.*; +import java.io.*; + +public class S2930_힙 { + + public static void main(String[] args) throws IOException { +// System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int N = Integer.parseInt(br.readLine()); + int answer=0; + + PriorityQueue pQue = new PriorityQueue<>(Collections.reverseOrder()); + + sb.append("#").append(test).append(" "); + for(int i=0; i K) +// return; +// Knapsack(idx+1, value+items[idx][1], weight+items[idx][0]); +// Knapsack(idx+1, value, weight); +// +// } + +} diff --git "a/src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" "b/src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" new file mode 100644 index 0000000..4293768 --- /dev/null +++ "b/src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" @@ -0,0 +1,37 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +// 72496KB/ 444ms + +public class S11048_이동하기 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int[][] miro = new int[N+1][M+1]; + + for(int i=1; i<=N; i++) { + st = new StringTokenizer(br.readLine()); + for(int j=1; j<=M; j++) { + miro[i][j] = Integer.parseInt(st.nextToken()); + } + } + + for(int i=1; i<=N; i++) { + for(int j=1; j<=M; j++) { + miro[i][j] = miro[i][j] + Math.max(miro[i-1][j-1], Math.max(miro[i-1][j], miro[i][j-1])); + } + } + + System.out.println(miro[N][M]); + + } + +} diff --git "a/src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" "b/src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" new file mode 100644 index 0000000..b147d79 --- /dev/null +++ "b/src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" @@ -0,0 +1,39 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +public class S1676_팩토리얼0의개수 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + if(N % 10 != 0 || N % 5 != 0) sb.append(0); + else { + long sum = 1, answer=0; + //팩토리얼 + for(int i=2; i<=N; i++) { + sum *= i; + if(sum > 1000) + sum %= 1000; + } + //System.out.println(sum); + //0이아닌 수 만날때까지 + while(true) { + if(sum % 10 == 0) + answer++; + else + break; + sum /= 10; + } + sb.append(answer); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} diff --git "a/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_\353\202\230\353\254\264\354\235\230\355\202\244RE.java" "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_\353\202\230\353\254\264\354\235\230\355\202\244RE.java" new file mode 100644 index 0000000..8974154 --- /dev/null +++ "b/src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_\353\202\230\353\254\264\354\235\230\355\202\244RE.java" @@ -0,0 +1,59 @@ +package KSY.personal.시험대비; + +import java.io.*; +import java.util.*; + +public class 월_230828_나무의키RE { + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/personal/시험대비/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int answer = 0; + int max = 0; + int N = Integer.parseInt(br.readLine()); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int[] trees = new int[N]; + for(int i=0; i odd && Math.abs(even - odd) > 1) { + even -= 1; + odd += 2; + } + + if(odd > even) { + answer = odd*2 - 1; + } else if(even > odd) { + answer = even*2; + } else { + answer = odd + even; + } + + + sb.append("#").append(test).append(" ").append(answer).append("\n"); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} diff --git a/src/KSY/testcase.txt b/src/KSY/testcase.txt index 8283129..30d72cb 100644 --- a/src/KSY/testcase.txt +++ b/src/KSY/testcase.txt @@ -1,31 +1,5 @@ -3 -7 -0 0 1 0 0 0 0 -0 0 1 0 0 0 0 -0 0 0 0 0 1 0 -0 0 0 0 0 0 0 -1 1 0 1 0 0 0 -0 1 0 0 0 0 0 -0 0 0 0 0 0 0 -9 -0 0 0 0 0 0 0 0 0 -0 0 1 0 0 0 0 0 1 -1 0 0 0 0 0 0 0 0 -0 0 0 1 0 0 0 0 0 -0 1 0 0 0 0 0 0 0 -0 0 0 0 0 0 1 0 0 -0 0 0 1 0 0 0 0 0 -0 0 0 0 0 0 0 1 0 -0 0 0 0 0 0 0 0 1 -11 -0 0 1 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 1 -0 0 0 1 0 0 0 0 1 0 0 -0 1 0 1 1 0 0 0 1 0 0 -0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 1 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 -0 0 0 0 0 0 0 0 1 0 0 -0 0 0 0 0 0 1 0 0 0 0 -0 0 0 0 0 0 0 0 0 0 0 +1 +3 5 +1 3 +2 6 +8 9 diff --git a/src/knapsack.java b/src/knapsack.java new file mode 100644 index 0000000..f9005f0 --- /dev/null +++ b/src/knapsack.java @@ -0,0 +1,75 @@ + + +import java.io.*; +import java.nio.Buffer; +import java.util.*; + +public class knapsack { + + static class Thing implements Comparable{ + int vol, val; + public Thing(int vol, int val) { + this.vol = vol; + this.val = val; + } + + @Override + public int compareTo(Thing o) { + return Integer.compare(this.vol, o.vol); + } + + @Override + public String toString() { + return vol + " " + val; + } + } + + + public static void main(String[] args) throws Exception { +// System.setIn(new FileInputStream("input.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 빠른 읽기 + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + StringTokenizer st = null; + + int t = Integer.parseInt(br.readLine()); + + for(int tc=1; tc<=t; tc++) { + st = new StringTokenizer(br.readLine()); + int n = Integer.parseInt(st.nextToken()); + int k = Integer.parseInt(st.nextToken()); + + int[][] dp = new int[n][k+1]; + List things = new ArrayList<>(); + + for(int i=0; i= things.get(0).vol) dp[0][i] = things.get(0).val; + } + + for (int i=1; i= things.get(i).vol) { + dp[i][j] = Math.max(things.get(i).val + dp[i - 1][j - things.get(i).vol], dp[i - 1][j]); + } else { + dp[i][j] = dp[i - 1][j]; + } + } + } + + sb.append("#").append(tc).append(" ").append(dp[n-1][k]).append("\n"); + + } + + bw.write(sb.toString()); + bw.flush(); + } + +} + From f07f4fec2b0da3aadc4252ebdb1816e72485d718 Mon Sep 17 00:00:00 2001 From: Sina Date: Sun, 10 Sep 2023 00:05:56 +0900 Subject: [PATCH 17/27] =?UTF-8?q?FEAT=20:=2020230910=20=EC=8A=A4=ED=84=B0?= =?UTF-8?q?=EB=94=94?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- "src/KSY/S1238_\355\214\214\355\213\260.java" | 63 +++++++++++++ ...\353\236\230\355\224\204\355\212\270.java" | 66 ++++++++++++++ ...\353\217\231\355\225\230\352\270\260.java" | 90 +++++++++++++++++++ ...\355\236\214\354\204\270\354\203\201.java" | 54 +++++++++++ ...\354\235\230\352\260\234\354\210\230.java" | 25 ++---- src/KSY/testcase.txt | 10 +-- 6 files changed, 287 insertions(+), 21 deletions(-) create mode 100644 "src/KSY/S1238_\355\214\214\355\213\260.java" create mode 100644 "src/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.java" create mode 100644 "src/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.java" create mode 100644 "src/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.java" diff --git "a/src/KSY/S1238_\355\214\214\355\213\260.java" "b/src/KSY/S1238_\355\214\214\355\213\260.java" new file mode 100644 index 0000000..418a8a8 --- /dev/null +++ "b/src/KSY/S1238_\355\214\214\355\213\260.java" @@ -0,0 +1,63 @@ +package KSY; + +import java.util.*; +import java.io.*; + +//18568KB/ 2288ms + +public class S1238_파티 { + + static int[][] adjMatrix; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int X = Integer.parseInt(st.nextToken()); + + adjMatrix = new int[N+1][N+1]; + int INF = 1000000; + for(int i=1; i<=N; i++) { + for(int j=1; j<=N; j++) { + if(i == j) continue; + adjMatrix[i][j] = INF; + } + } + + for(int i=0; i max) + max = temp; + } + + sb.append(max); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} diff --git "a/src/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.java" "b/src/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.java" new file mode 100644 index 0000000..93694f6 --- /dev/null +++ "b/src/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.java" @@ -0,0 +1,66 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//35692KB/ 624ms + +public class S18111_마인크래프트 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int B = Integer.parseInt(st.nextToken()); + int[][] map = new int[N][M]; + int answer[] = new int[] {Integer.MAX_VALUE, 0}; // 시간 + int max=0, min=Integer.MAX_VALUE; + + // map + for(int i=0; i map[i][j]) + min = map[i][j]; + } + } + //최대값으로부터 차이값의 합이 가지고 있는 + + for(int ans=min; ans<=max; ans++) { // 최대값부터 하나씩 내려오며 확인 + int block = B, time=0; + for(int i=0; i 0) { + block -= gap; + time += gap; + } + } + } + if(block < 0) // 가진 블록보다 많이 사용 함 + continue; + + if(answer[0] >= time) { + answer[0] = time; + answer[1] = ans; + } + } + sb.append(answer[0]).append(" ").append(answer[1]); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + + } + +} diff --git "a/src/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.java" "b/src/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.java" new file mode 100644 index 0000000..c7fa39b --- /dev/null +++ "b/src/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.java" @@ -0,0 +1,90 @@ +package KSY; + +import java.io.*; +import java.util.*; + +// 109200KB/ 704ms + +public class S2206_벽부수고이동하기 { + + static int[] dr = new int[] { 0, 1, 0, -1 }; + static int[] dc = new int[] { 1, 0, -1, 0 }; + + public static void main(String[] args) throws IOException { + System.setIn(new FileInputStream("src/KSY/testcase.txt")); + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int[][] map = new int[N][M]; + boolean[][][] visited = new boolean[N][M][2]; + + for (int i = 0; i < N; i++) { + String str = br.readLine(); + for (int j = 0; j < M; j++) { + map[i][j] = (int) (str.charAt(j) - '0'); + } + } + + Queue que = new ArrayDeque<>(); + que.offer(new Point2(0, 0, 1, 1)); + visited[0][0][0] = true; + while (!que.isEmpty()) { + Point2 curr = que.poll(); + if (curr.r == N - 1 && curr.c == M - 1) { + sb.append(curr.value); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + return; + } + + for (int d = 0; d < 4; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + if (-1 < row && row < N && -1 < col && col < M) { + if (curr.flag == 0) { // 기회 없음 + if (map[row][col] == 0 && !visited[row][col][1]) { // 방문하지 않았고 벽이 아니라면 + visited[row][col][1] = true; + que.offer(new Point2(row, col, curr.value + 1, 0)); + } + } else { // 기회 있음 + // 부신다 + if (map[row][col] == 1 && !visited[row][col][1]) { + visited[row][col][1] = true; + que.offer(new Point2(row, col, curr.value + 1, 0)); + } + // 안 부신다 + if (!visited[row][col][0] && map[row][col] == 0) { + visited[row][col][0] = true; + que.offer(new Point2(row, col, curr.value + 1, 1)); + } + } + } + + } + + } + sb.append(-1); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} + +class Point2 { + int r, c, value; + int flag; + + Point2(int r, int c, int value, int flag) { + this.r = r; + this.c = c; + this.value = value; + this.flag = flag; + } +} \ No newline at end of file diff --git "a/src/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.java" "b/src/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.java" new file mode 100644 index 0000000..dc9b823 --- /dev/null +++ "b/src/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.java" @@ -0,0 +1,54 @@ +package KSY; + +import java.util.*; +import java.io.*; + +// 16684 180 + +public class S4949_균형잡힌세상 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + String str = br.readLine(); + while(!str.equals(".")) { + Stack stack = new Stack<>(); + boolean flag = false; + + for(int i=0; i 1000) - sum %= 1000; - } - //System.out.println(sum); - //0이아닌 수 만날때까지 - while(true) { - if(sum % 10 == 0) - answer++; - else - break; - sum /= 10; + int answer=0; + while(N >= 5) { + answer += N / 5; + N /= 5; } sb.append(answer); } + + bw.write(sb.toString()); bw.flush(); bw.close(); diff --git a/src/KSY/testcase.txt b/src/KSY/testcase.txt index 30d72cb..8f86c79 100644 --- a/src/KSY/testcase.txt +++ b/src/KSY/testcase.txt @@ -1,5 +1,5 @@ -1 -3 5 -1 3 -2 6 -8 9 +4 4 +0111 +1111 +1111 +1110 \ No newline at end of file From 9d1c3269ba00a3b9ddd64462c42b509f3d6f2ece Mon Sep 17 00:00:00 2001 From: Sina Date: Sun, 10 Sep 2023 23:59:50 +0900 Subject: [PATCH 18/27] FEAT --- .../S11723_\354\247\221\355\225\251.java" | 63 +++++++++++++++++++ ...\355\203\200\354\213\270\355\224\274.java" | 10 +++ 2 files changed, 73 insertions(+) create mode 100644 "src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" create mode 100644 "src/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\235\274\355\203\200\354\213\270\355\224\274.java" diff --git "a/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" "b/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" new file mode 100644 index 0000000..74dc89e --- /dev/null +++ "b/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" @@ -0,0 +1,63 @@ +package KSY.personal.Prectice; + +import java.io.*; +import java.util.*; + +public class S11723_집합 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + Set set = new HashSet<>(); + + int N = Integer.parseInt(br.readLine()); + for(int i=0; i Date: Tue, 12 Sep 2023 00:00:08 +0900 Subject: [PATCH 19/27] FEAT : 230912 --- ...\355\225\234\353\213\250\354\226\264.java" | 45 +++++++++++++++++ .../S7568_\353\215\251\354\271\230.java" | 50 +++++++++++++++++++ 2 files changed, 95 insertions(+) create mode 100644 "src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" create mode 100644 "src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" diff --git "a/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" "b/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" new file mode 100644 index 0000000..958eeec --- /dev/null +++ "b/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" @@ -0,0 +1,45 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S2179_비슷한단어 { + + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + Map> map = new HashMap<>(); + String maxString = ""; + + int N = Integer.parseInt(br.readLine()); + for(int i=0; i list = map.putIfAbsent(sub, new ArrayList<>()); + if(list == null || !list.contains(str)) + map.get(sub).add(str); + } + } + + + for(Map.Entry> m: map.entrySet()) { +// System.out.println("key : " + m.getKey() + " value : " + m.getValue()); + if(1 < m.getValue().size() && m.getKey().length() > maxString.length()) { // 문자열의 크기가 가장 크고, 해당하는 단어가 2개 이상일 때 +// System.out.println(maxString); + maxString = m.getKey(); + } + } + + sb.append(map.get(maxString).get(0)).append("\n"); + sb.append(map.get(maxString).get(1)); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} diff --git "a/src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" "b/src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" new file mode 100644 index 0000000..b7d126f --- /dev/null +++ "b/src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" @@ -0,0 +1,50 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +//11664KB/ 76ms + +public class S7568_덩치 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + Person[] people = new Person[N]; + int[] ranking = new int[N]; + for(int i=0; i people[j].x && people[i].y > people[j].y) + ranking[j]++; + else if(people[i].x < people[j].x && people[i].y < people[j].y) + ranking[i]++; + } + } + + for(int i=0; i Date: Wed, 13 Sep 2023 17:12:51 +0900 Subject: [PATCH 20/27] FEAT : 230913 --- ...\352\265\220\354\247\221\355\225\251.java" | 49 +++++++++ ...\354\202\254\354\232\251\354\236\220.java" | 62 +++++++++++ ...\355\206\240\353\247\210\355\206\240.java" | 101 ++++++++++++++++++ .../S11723_\354\247\221\355\225\251.java" | 4 +- .../personal/Prectice/S18110_Solvedac.java | 42 ++++++++ 5 files changed, 256 insertions(+), 2 deletions(-) create mode 100644 "src/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.java" create mode 100644 "src/KSY/Programmers_\353\266\210\353\237\211\354\202\254\354\232\251\354\236\220.java" create mode 100644 "src/KSY/S7569_\355\206\240\353\247\210\355\206\240.java" create mode 100644 src/KSY/personal/Prectice/S18110_Solvedac.java diff --git "a/src/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.java" "b/src/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.java" new file mode 100644 index 0000000..5000f19 --- /dev/null +++ "b/src/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.java" @@ -0,0 +1,49 @@ +package KSY; + +import java.util.*; +import java.io.*; + +//128,388 kb / 707 ms + +public class Programmers_문자열교집합 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int cnt=0; + + Map map = new HashMap<>(); + + // 그룹1 + st = new StringTokenizer(br.readLine()); + for(int i=0; i set = new HashSet<>(); + static Set> setset = new HashSet<>(); + static List[] list; + + public int main(String[] user_id, String[] banned_id) { + list = new ArrayList[banned_id.length]; + for(int i=0; i(); + + for(int i=0; i que = new ArrayDeque<>(); +// que.offer(new Tomato()); + + for (int k = 0; k < H; k++) { + for (int i = 0; i < N; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < M; j++) { + tomato[i][j][k] = Integer.parseInt(st.nextToken()); + if (tomato[i][j][k] == 1) { + que.offer(new Tomato(i, j, k, 0)); + visited[i][j][k] = true; + } + } + } + } + + while (!que.isEmpty()) { + Tomato curr = que.poll(); + if(que.isEmpty()) + answer = curr.cnt; + + for (int d = 0; d < 6; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + int hei = curr.h + dh[d]; + + if (-1 < row && row < N && -1 < col && col < M && -1 < hei && hei < H && !visited[row][col][hei] + && tomato[row][col][hei] == 0) { + visited[row][col][hei] = true; + que.offer(new Tomato(row, col, hei, curr.cnt+1)); + } + + } + + } + + boolean flag =false; + for (int i = 0; i < H; i++) { + for (int j = 0; j < N; j++) { + for (int k = 0; k < M; k++) { + if (tomato[j][k][i] == 0 && !visited[j][k][i]) { // 안 익은 토마토 인데 방문하지 않았다면 + flag = true; + break; + } + } + if(flag) + break; + } + if(flag) + break; + } + + if(flag) { + sb.append(-1); + } else { + sb.append(answer); + } + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} + +class Tomato { + int r, c, h, cnt; + + Tomato(int r, int c, int h, int cnt) { + this.r = r; + this.c = c; + this.h = h; + this.cnt = cnt; + } +} \ No newline at end of file diff --git "a/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" "b/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" index 74dc89e..64f1c5e 100644 --- "a/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" +++ "b/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" @@ -43,8 +43,8 @@ public static void main(String[] args) throws IOException { } break; case "all": - for(int n=1; n<=2; n++) { - set.add(i); + for(int n=1; n<=20; n++) { + set.add(n); } break; case "empty": diff --git a/src/KSY/personal/Prectice/S18110_Solvedac.java b/src/KSY/personal/Prectice/S18110_Solvedac.java new file mode 100644 index 0000000..5d5ead0 --- /dev/null +++ b/src/KSY/personal/Prectice/S18110_Solvedac.java @@ -0,0 +1,42 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +// 36816KB 320ms + +public class S18110_Solvedac { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + if(N == 0) + sb.append(0); + else if(N == 1) + sb.append(Integer.parseInt(br.readLine())); + else { + int[] nums = new int[N]; + for(int i=0; i Date: Sat, 16 Sep 2023 12:18:47 +0900 Subject: [PATCH 21/27] FEAT : 230916 --- build/classes/.gitignore | 5 -- build/classes/KSY/Candidate.class | Bin 0 -> 1086 bytes build/classes/KSY/Core.class | Bin 0 -> 369 bytes build/classes/KSY/Flower.class | Bin 0 -> 908 bytes build/classes/KSY/Node.class | Bin 0 -> 847 bytes build/classes/KSY/Point.class | Bin 0 -> 353 bytes build/classes/KSY/Point2.class | Bin 0 -> 465 bytes .../KSY/S1238_\355\214\214\355\213\260.class" | Bin 0 -> 2340 bytes .../S14501_\355\207\264\354\202\254.class" | Bin 0 -> 651 bytes ...354\227\260\352\265\254\354\206\214.class" | Bin 0 -> 4006 bytes build/classes/KSY/S16401.class | Bin 0 -> 1655 bytes ...54\262\2402\355\230\270\354\204\240.class" | Bin 0 -> 3811 bytes ...353\241\234\355\203\210\354\266\234.class" | Bin 0 -> 3185 bytes ...353\236\230\355\224\204\355\212\270.class" | Bin 0 -> 2351 bytes build/classes/KSY/S1946.class | Bin 0 -> 2371 bytes ...355\225\234\353\213\250\354\226\264.class" | Bin 0 -> 3044 bytes ...353\217\231\355\225\230\352\270\260.class" | Bin 0 -> 3128 bytes ...354\235\230\354\240\225\354\233\220.class" | Bin 0 -> 698 bytes build/classes/KSY/S2847.class | Bin 0 -> 1148 bytes ...352\265\254\355\225\230\352\270\260.class" | Bin 0 -> 2915 bytes ...355\236\214\354\204\270\354\203\201.class" | Bin 0 -> 2296 bytes ...353\215\224\355\225\230\352\270\260.class" | Bin 0 -> 1747 bytes ...354\226\264\352\260\200\352\270\260.class" | Bin 0 -> 3507 bytes ...352\262\260\355\225\230\352\270\260.class" | Bin 0 -> 3522 bytes build/classes/KSY/Wall.class | Bin 0 -> 366 bytes build/classes/KSY/input.txt | 61 ++++++++++++++++++ ...353\240\210\354\235\270\354\247\200.class" | Bin 0 -> 1431 bytes ...352\271\200\354\213\240\354\230\201.class" | Bin 0 -> 3475 bytes ...352\260\200\354\212\244\352\264\200.class" | Bin 0 -> 4111 bytes ...353\241\234\355\203\220\354\203\211.class" | Bin 0 -> 2212 bytes .../AlgoURa/CompleteBinaryTree1.class | Bin 0 -> 2141 bytes .../personal/AlgoURa/PermutationBitTest.class | Bin 0 -> 1300 bytes .../AlgoURa/PermutationBitTest2.class | Bin 0 -> 1303 bytes .../personal/AlgoURa/PermutationNPTest.class | Bin 0 -> 1477 bytes .../classes/KSY/personal/AlgoURa/Point.class | Bin 0 -> 820 bytes .../personal/AlgoURa/SlidingWindowTest.class | Bin 0 -> 3795 bytes .../AdjMatrixTest$Node.class" | Bin 0 -> 929 bytes .../AdjMatrixTest.class" | Bin 0 -> 2665 bytes .../MakeSpaceTest.class" | Bin 0 -> 1411 bytes .../NQueenTest1.class" | Bin 0 -> 1302 bytes .../SquareNumberTest.class" | Bin 0 -> 1511 bytes .../AdjMatrixTest$Node.class" | Bin 0 -> 927 bytes .../AdjMatrixTest.class" | Bin 0 -> 3105 bytes .../DijkstraTest$Node.class" | Bin 0 -> 614 bytes .../DijkstraTest.class" | Bin 0 -> 2482 bytes .../DisjoinSetTest.class" | Bin 0 -> 1539 bytes .../\354\243\274\354\260\2508/MSTPrim.class" | Bin 0 -> 1915 bytes .../MSTPrimPQTest$Vertex.class" | Bin 0 -> 963 bytes .../MSTPrimPQTest.class" | Bin 0 -> 2472 bytes .../BinomialCoefTest.class" | Bin 0 -> 1109 bytes .../FibonacciTest.class" | Bin 0 -> 1991 bytes .../MinCoinTest.class" | Bin 0 -> 987 bytes ...352\262\260\355\225\230\352\270\260.class" | Bin 0 -> 3415 bytes ...354\204\270\354\232\260\352\270\260.class" | Bin 0 -> 2950 bytes .../input.txt" | 7 ++ .../\355\232\214\354\260\2501/Soldier.class" | Bin 0 -> 713 bytes ...202\254\352\264\200\353\246\254main.class" | Bin 0 -> 3033 bytes ...264\200\353\246\254userCode$soldier.class" | Bin 0 -> 1182 bytes ...254\352\264\200\353\246\254userCode.class" | Bin 0 -> 2158 bytes ...354\271\230\353\243\214\353\262\225.class" | Bin 0 -> 1663 bytes ...354\227\264\355\216\270\354\247\221.class" | Bin 0 -> 2655 bytes ...54\225\224\355\230\270\353\254\2703.class" | Bin 0 -> 2544 bytes ...354\210\230\355\221\234\355\230\204.class" | Bin 0 -> 1611 bytes .../\355\232\214\354\260\2502/Node.class" | Bin 0 -> 396 bytes .../\355\232\214\354\260\2502/Soldier.class" | Bin 0 -> 713 bytes ...355\206\265\354\241\260\354\203\201.class" | Bin 0 -> 1450 bytes ...202\254\352\264\200\353\246\254main.class" | Bin 0 -> 3033 bytes ...264\200\353\246\254userCode$soldier.class" | Bin 0 -> 1182 bytes ...254\352\264\200\353\246\254userCode.class" | Bin 0 -> 2158 bytes ...\235\230\354\247\204\354\247\234BFS.class" | Bin 0 -> 3484 bytes ...354\234\204\354\210\234\355\232\214.class" | Bin 0 -> 2405 bytes ...353\242\260\354\260\276\352\270\260.class" | Bin 0 -> 479 bytes .../S2930_\355\236\231.class" | Bin 0 -> 2669 bytes .../S3282_01Knapsack.class" | Bin 0 -> 2260 bytes build/classes/KSY/personal/Point.class | Bin 0 -> 417 bytes .../KSY/personal/Practice/Person.class | Bin 0 -> 387 bytes ...353\217\231\355\225\230\352\270\260.class" | Bin 0 -> 1859 bytes .../S11723_\354\247\221\355\225\251.class" | Bin 0 -> 2845 bytes ...354\235\230\352\260\234\354\210\230.class" | Bin 0 -> 1565 bytes ...354\235\230\352\260\234\354\210\230.class" | Bin 0 -> 2736 bytes ...354\236\220\353\245\264\352\270\260.class" | Bin 0 -> 2142 bytes .../S7568_\353\215\251\354\271\230.class" | Bin 0 -> 2159 bytes .../SoonJonBu.class" | Bin 0 -> 2264 bytes .../testcase.txt" | 61 ++++++++++++++++++ ...355\227\230\353\214\200\353\271\204.class" | Bin 0 -> 4260 bytes ...0\353\214\200\353\271\204_practice1.class" | Bin 0 -> 4256 bytes ...355\227\230\353\214\200\353\271\204.class" | Bin 0 -> 2409 bytes ...3\254\264\354\235\230\355\202\244RE.class" | Bin 0 -> 2404 bytes ...355\203\200\354\213\270\355\224\274.class" | Bin 0 -> 431 bytes build/classes/KSY/testcase.txt | 5 ++ ...355\226\211\352\262\275\353\241\234.class" | Bin 0 -> 3568 bytes build/classes/S14940.class | Bin 0 -> 2832 bytes build/classes/S7576.class | Bin 0 -> 2461 bytes build/classes/knapsack$Thing.class | Bin 0 -> 1155 bytes build/classes/knapsack.class | Bin 0 -> 2605 bytes ...\353\217\231\355\225\230\352\270\260.java" | 2 +- .../S11723_\354\247\221\355\225\251.java" | 2 +- ...\354\235\230\352\260\234\354\210\230.java" | 2 +- ...\354\235\230\352\260\234\354\210\230.java" | 2 +- ...\354\236\220\353\245\264\352\270\260.java" | 52 +++++++++++++++ .../S7568_\353\215\251\354\271\230.java" | 2 +- 101 files changed, 191 insertions(+), 10 deletions(-) delete mode 100644 build/classes/.gitignore create mode 100644 build/classes/KSY/Candidate.class create mode 100644 build/classes/KSY/Core.class create mode 100644 build/classes/KSY/Flower.class create mode 100644 build/classes/KSY/Node.class create mode 100644 build/classes/KSY/Point.class create mode 100644 build/classes/KSY/Point2.class create mode 100644 "build/classes/KSY/S1238_\355\214\214\355\213\260.class" create mode 100644 "build/classes/KSY/S14501_\355\207\264\354\202\254.class" create mode 100644 "build/classes/KSY/S14502_\354\227\260\352\265\254\354\206\214.class" create mode 100644 build/classes/KSY/S16401.class create mode 100644 "build/classes/KSY/S16947_\354\204\234\354\232\270\354\247\200\355\225\230\354\262\2402\355\230\270\354\204\240.class" create mode 100644 "build/classes/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.class" create mode 100644 "build/classes/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.class" create mode 100644 build/classes/KSY/S1946.class create mode 100644 "build/classes/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.class" create mode 100644 "build/classes/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.class" create mode 100644 "build/classes/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.class" create mode 100644 build/classes/KSY/S2847.class create mode 100644 "build/classes/KSY/S3000_swea_\354\244\221\352\260\204\352\260\222\352\265\254\355\225\230\352\270\260.class" create mode 100644 "build/classes/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.class" create mode 100644 "build/classes/KSY/S9095_123\353\215\224\355\225\230\352\270\260.class" create mode 100644 "build/classes/KSY/S9205_\353\247\245\354\243\274\353\247\210\354\213\234\353\251\264\354\204\234\352\261\270\354\226\264\352\260\200\352\270\260.class" create mode 100644 "build/classes/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.class" create mode 100644 build/classes/KSY/Wall.class create mode 100644 build/classes/KSY/input.txt create mode 100644 "build/classes/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.class" create mode 100644 "build/classes/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.class" create mode 100644 "build/classes/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201_\352\260\200\354\212\244\352\264\200.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.class" create mode 100644 build/classes/KSY/personal/AlgoURa/CompleteBinaryTree1.class create mode 100644 build/classes/KSY/personal/AlgoURa/PermutationBitTest.class create mode 100644 build/classes/KSY/personal/AlgoURa/PermutationBitTest2.class create mode 100644 build/classes/KSY/personal/AlgoURa/PermutationNPTest.class create mode 100644 build/classes/KSY/personal/AlgoURa/Point.class create mode 100644 build/classes/KSY/personal/AlgoURa/SlidingWindowTest.class create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest$Node.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/NQueenTest1.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest$Node.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest$Node.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest$Vertex.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/MinCoinTest.class" create mode 100644 "build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.class" create mode 100644 "build/classes/KSY/personal/BeforeLunch/BJ2252_\354\244\204\354\204\270\354\232\260\352\270\260.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/Soldier.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254main.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode$soldier.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\203\210\353\241\234\354\232\264\353\266\210\353\251\264\354\246\235\354\271\230\353\243\214\353\262\225.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\235\264\354\247\204\354\210\230\355\221\234\355\230\204.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/Node.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/Soldier.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254main.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode$soldier.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\355\214\214\355\225\221\355\214\214\355\225\221\354\247\200\353\242\260\354\260\276\352\270\260.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.class" create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S3282_01Knapsack.class" create mode 100644 build/classes/KSY/personal/Point.class create mode 100644 build/classes/KSY/personal/Practice/Person.class create mode 100644 "build/classes/KSY/personal/Practice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.class" create mode 100644 "build/classes/KSY/personal/Practice/S11723_\354\247\221\355\225\251.class" create mode 100644 "build/classes/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.class" create mode 100644 "build/classes/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.class" create mode 100644 "build/classes/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.class" create mode 100644 "build/classes/KSY/personal/Practice/S7568_\353\215\251\354\271\230.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_\353\202\230\353\254\264\354\235\230\355\202\244RE.class" create mode 100644 "build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\235\274\355\203\200\354\213\270\355\224\274.class" create mode 100644 build/classes/KSY/testcase.txt create mode 100644 "build/classes/KSY/\354\227\254\355\226\211\352\262\275\353\241\234.class" create mode 100644 build/classes/S14940.class create mode 100644 build/classes/S7576.class create mode 100644 build/classes/knapsack$Thing.class create mode 100644 build/classes/knapsack.class rename "src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" => "src/KSY/personal/Practice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" (96%) rename "src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" => "src/KSY/personal/Practice/S11723_\354\247\221\355\225\251.java" (97%) rename "src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" => "src/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" (95%) rename "src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" => "src/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" (98%) create mode 100644 "src/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.java" rename "src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" => "src/KSY/personal/Practice/S7568_\353\215\251\354\271\230.java" (97%) diff --git a/build/classes/.gitignore b/build/classes/.gitignore deleted file mode 100644 index 7408121..0000000 --- a/build/classes/.gitignore +++ /dev/null @@ -1,5 +0,0 @@ -/KSY/ -/S14940.class -/S7576.class -/knapsack.class -/knapsack$Thing.class diff --git a/build/classes/KSY/Candidate.class b/build/classes/KSY/Candidate.class new file mode 100644 index 0000000000000000000000000000000000000000..83927f5e1fa23946d37f69f3fb5b0858af4cc7d8 GIT binary patch literal 1086 zcmZuv-*3`T6#gz03bhQxZKy-U-?X?fCSxMY5+yMb(LFFp_IQDcove^r_6HdsdC=_a zAkGlXX{{(2E~}6c5!MwIQA8Nx4bw7SkB-}hec&M{8-ot-x43PJyYG~ocjgC?eNJ|j zA=+_883zM~WNt3334s)dH67l0|B4TNw1_ikI<{%`sJ)!ln0DxSX+k#{QuFR-BeUN% zYz4P)N5<`Q1M>=1+{HZx`GogJ#{OG|m0W!Ryn+lKh{@zc#zlIq6@gC5vm)`Kigj$z zkoj1(G*=;>1=zmO|{W%@3;;Y}(llD&l$@@2getRh7>Dt0ND zYYCD7fm5SCMVszIMq2-hM4rwkgrxDm%SVI)oDwQS6wE7M3o*> l;wg1e@=-Ovi>RLe1vbI9kUR@O5AS+}cgM9JqvHOb`~@bT(d_^L literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Core.class b/build/classes/KSY/Core.class new file mode 100644 index 0000000000000000000000000000000000000000..4c2a110dd2183ca1dd861b69f6a09b4253816893 GIT binary patch literal 369 zcmXv}OHRU26g{skZN*9vzljc*2^~mGj0`j;hG;@0IzTawNLyc|SZGpw3{XL#j}%78?voCAi{g$S@4(m}8I&#l{R6Oam#XBAYj$K_#W; zb@@rJ@I6P=>m3PX` z$$k9w+#kooaoit2CZpG6^6)eoCY$05jPw8NRp7Fn36~0jZri)#<+Ij4^e)D@!UHgBu;Yg{m%D3XMX(o@(n;9*#I1M$2mU1MmyPrrwg%**AM;qiqRjol63uLSu)9)>)GlFaNsTwfjYZ zK&HYkTNm(_oE<9!4?e4{r&7<^y*;r`o-ww z^NX?z7pU30U9&&vG55;2W(X^5z?JVeY$50Nn9-XW6j8P$;DJ+Er7amIBlqJSm(@@_SjktSjv zHC-r6&exPBH;{8v@`tfrNS($T{A7;IY8f99UFCTPpZ9PA-oU3x5Mv}Zi6}6MBp68$ zs2T;BrfQOmBqtFCRK#=0X&%LBg&F}js78_aCN5xuj7q$3VGCtEz$W%^TQN(P4Yf9LXZ`3@gWC zD%y$AgZ9(@v5Z|21%}lux@(3bVMRZY49wB!(ikxmwv|?Hhhe$d?Y0gW^1CVXB10`x zKeE=?5>^;KJkwT=O)`~7JSL_}gi}WIku}5~j<`S{p>rTCAVv!u2LQaEu?~@_u{q1^(q3r7yR_+^y zYBSqubxXL(u>Su}QKRS*otb%|yK1)nbx0>hW@2OcSow>qN1Ne;`-Knpjqln~A#X78Xg7s=khcII}c0}h5I8q3Jh11q9LGf+;yOSB4bfp#mj3Mns* zd`0!JUi*wo-zl2ID$NDT0cqA~uB7V#S8$d77_Q;^9KoLwq=Xv_2pbCtw{Uxo;7>ZA S5H29(aECNG+@)&$cl{5;vBP!% literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Point.class b/build/classes/KSY/Point.class new file mode 100644 index 0000000000000000000000000000000000000000..e9bc0399cbacc644a936140fd3d7c7baf645da21 GIT binary patch literal 353 zcmX|6!AiqW5S&fYrcGm0t5rb{J+?hqm3mUV2tqKZ5Dj>e*BJDbnm|nb0`1AWKjA?S zLGa)Q_$ktF5cfs#FvIS=-JN-#-|rs)23Rqn5vqs&dH*Dlac06GG)Cf1^v5E;>K_kB zQJ4`ZWw?xxP~MfX%=QSSj_Y;Tx!dMbwFh|u(sP>chSO4a{~Ms_W42{rFO*bc$+lSvvz2U4xI{LR7k#@5B`>E$bb zo=qRuRcN%?OXr_y47O&5GG-=51uBch)frEyIj8rAT5mN+y|{>?UbsyecNod@(N^zNP~BH z&f?8_Zm-rb^cDkiNClG4;O}s&Z7|5E7Oyh|Hq55k+GJ2N1$wd-TG_Hsj1YX7R1rd$ z!I#Naf?$|Z;YUEYmqj(Hnxzi$vx{;-bh%A&gU0$#o%7J&@2|F`*@0M6{HPsFrpyt;J;*GY_;X zVNTR|`^(hhfM%><5{HQ42=l0t#INv9qPiqyqF#`QehH67@|>U%qzQ3PbQVL3G70Hl DliE+| literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S1238_\355\214\214\355\213\260.class" "b/build/classes/KSY/S1238_\355\214\214\355\213\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..9062d21674d10c50bb5be8cba1ff89b2e62a08f2 GIT binary patch literal 2340 zcmZuyTWnNS6kVtDxV?8S6bb{hMJnZCOCLiEjJ2g&3dN4J9iRvui_$yO+j86K%s6wW zEfpmyei%vo(?24F*hCW|m~@Cu_%SBLPr{FhpC*3sVPaxJP+aHEqdcbRnb~LWbM{_) z?{)V4`rl7?0qn;m1r-A8j*UbDBkdjgI?p}4a^>L{KPYfhJ8jGvfw+;F3WTH6X3Q2) zjfv?Y!%kZZ0-G;M1X?QlM(kN|?jh*{GR5Wklnq zK=oiUX2ee$X-n=4O1FL9%1GPuNV@5B*02%+n;ORkR}qa6L}IF2#?<;3VrI&=l8KCh zjRG5-Q&ut%3YRPjHVJGl8jf0VGn7bWZF(_{*-C5?*qBMj0y4U7X6%@eG283~TZ139 zGLt$1e`C4u8eT%Zf^E-~Yve-4HfMFbjO_xRjA@66e@o%M1hyKR87SDn?26d>vXhf$ z+MGCP8WUz(!7hQCqV1`Bd9%vsujpt*lR$+ml0T2}xfmLDqFJV~T|)y}rPRhctpdt> zbFl0!gXK)xvL%)df!ZRLaMmsrFmIP&_Ukx+AlZ=2k}j)gj=LiA;=ILoG?2R;RdinYtyRy>eDaVj}uCagty zrU8d_96`T8C224rnMxisHoe$q4ZWz99|Jl<@`9Q$7i`CshGQ5~FetFzDUAarl(5Yy zGp%D7VR}y)=?n=cD^iX`Aq8F)0w;BN;B}#@uU97UwvN*{!zX5>Qf6X8U~6OOMQnwP zS=AmybiCuFV<+>;$|9cC@vh{rXI^$uYR>5xmv7TE8P8_UOHEWq%+bW+$qb9&Hqujk zjvLCnI1(+ICYwt{dzP?#uNBexa`r;!XwO91mluj$Ohg`FrRwqr%5{!0#4s1fj~L<_ zCEr5BM=4oc(_97@g9rihhB^eAAu+DI~+j+t^Su#Ha- z!Zz7cY-e*^oR@5+>=302%A9ZfRJjZATkzYnCkO48W7hfUb(ED@Ls`!sz*Lx9Mqds`yWBPIWxRO@Zv{Oi$y<^XzsEf;*Dp9;@gq)Dj|3~-L3Ihu z?x41WI=|}IzJYfMYj5L(U+wT~{>t!WP4L@uYfpZ5LK{x#6YijI35N>D)V4x=U)y-`X4`et7v(a?!k2x5?g{R03GmGl z;Hw1e#MxcAsyGo8X4p0!^zov41B%}lR7;nCYxS$kICZ9_bs3|}7;9O^dt8QWw2O@e zzQZ1VuA#gZ+t}c}Y;Px<+t0>^u@MpejKr`RX>7q9YH$&?_yl#hg01+P@-^zd=dZ;r zGVLzM(mm|Jea`IPu?v4v{}-C@4`cj`X5m7M;0zb9Qy#z`agwwDEGP3h>=P#Ti$xp| zA9DnM#{HKZv0tG}Tt&CI&O!PuXM`l<1L7ggFaeXhZQ^rGVv01}E9P+?7Kzy@l9B;UjZbRa`X#U469B^8e_>fF%yum&72KIS+;@3azAYr(q6yNiyO5130Y zs-LjDnu3c88WaQ+^eE^R@(*|nk5ILWM^N=nU2f#+l6(F?MwO_S@A^afslZ4711F^x AW&i*H literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S14501_\355\207\264\354\202\254.class" "b/build/classes/KSY/S14501_\355\207\264\354\202\254.class" new file mode 100644 index 0000000000000000000000000000000000000000..8d76c4ac7dc7c6e5ffffec4db52a1a7f54bb66d3 GIT binary patch literal 651 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 DE^&hP literal 0 HcmV?d00001 diff --git a/build/classes/KSY/S16401.class b/build/classes/KSY/S16401.class new file mode 100644 index 0000000000000000000000000000000000000000..49077f0b8816144ddbb6a9494ee89131ca98beab GIT binary patch literal 1655 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 NfsA^7PfbO5@4v_Wzh3|V literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.class" "b/build/classes/KSY/S16954_\354\233\200\354\247\201\354\235\264\353\212\224\353\257\270\353\241\234\355\203\210\354\266\234.class" new file mode 100644 index 0000000000000000000000000000000000000000..7e52d1e6904ce0161861595788d959f830c12766 GIT binary patch literal 3185 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 OpOKru&xpo@EB^&`M(*1H literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.class" "b/build/classes/KSY/S18111_\353\247\210\354\235\270\355\201\254\353\236\230\355\224\204\355\212\270.class" new file mode 100644 index 0000000000000000000000000000000000000000..23da80e5ee6bc6ae60f10a03d48a3c6d47b40eb9 GIT binary patch literal 2351 zcmaJ?O>9(E6#nk~^mV3he%n`C{;|*>=#NuyfEE-fe*-Op6kErl@Mh+qOLbI9=xbdZb$da37sY7+K5A zr1J`b0@Xz=Gt&`?E=v^D&_Y>oxG+3y@`Y-1#V?xCSY!t9bcv=aZbh~1q+YJqyWnQ)j)HScE(lX#iHMU8m=Lmj9spOs^ zD%idT_`#fMN$`yV>&xJy1#207NiNYht7ySa)+YO|fN4RXSWSQ_Qm)A-EL0P)>HiGE*HTjdPiCBW+%h zI@Q>#VjuPkRI&z1*-HX7%`H#Y-pxMlmS7Grs3pixcrC)+gBMl2B(1s9#*|g`?itb9B77$zI#WV8aD*|n6h456=WdrhNzlw9kL|K_q8fAF~R1C_DI45O) zNKQ<}>+)SXhf{_8sN|ei@kWu8NM-U&uS3s`@F`ZW@xa*K@f>@1xph~+9X?N6d~z-M zQcqBxkF(;>3`8n0%^OMzYxM+u2$`)2S05J(XP?lsGS%t)q(OAHA`lDmA2!sHs` zi5d(%p2{S~8Kz}UFk1VFyzJ?>^u&0do-K|e1s4?XqPss+$R&(prW{+FpE(-aW#eEQ zXpG|&u#w{IXv9z2K}kTGu}{)u z5D=ftqdGPZEp`X%=CElFTYKlxK+XN4;Yf z2k+ug*ttwqEK`c+)GB_&F_^UuDZ4_RQc&eWj*$ zYM!!@sODbcw0{XtnGCzNsxp2133k=AM`#|c;@0B)v??@JbKY9KsZ~i|)0z_Y*u!3X z*f)bS_OO2jhcuN&e4U!VJsA#Yfg7mPyiP4(jb03UX(nJ@l#pt*z)b|?IT`k7UM)cB zv|ng`>F3_GPiQ{r=Nrv)0~IrNNC<@z00Ag(Gnc@?ZvBYQa+1Fux}Pp zDCxo0wppB=#jCBec#UgF*3=GJ(>rM8Ud1}8*v?wEvX1*%#~#+OkK94dGaWS;=YJr_ zQ9OluyodGpkbjQPu@PTk6K!n9J#4{G&gq?K7a=r>ZvFy}qEnp2Zqdi_I)Jb^kG&$!-$n{u;u^Ze`y2@$;h^{!hl>4o zpP1NLcoP?hKPcYCMdB2^kwzQ|_F}6TMiK_&+%IAn#t1vJM?^6SlYQAok7J}NFi8L7 zq!j2xlfrR!__%1o1k&v5wAhXerEcWJR%A(4p+FmNky3G;lP^cggI}4Ee3AD%uD~kt z7BER&lW*fs=2718;cwcPH~h><8!nLwPz$uR|z$M`C?n{LGcJ1F2QQ#3+F{)qG!)ZM;67C%uHIlYKO^2B=?SlgDQ0stz zrz@K>RJh^S;6;tV^0=8XdJ1DhhSjeRr451lcs8l02XxDn>)B0@ecsFq)W+u=MrmwJ zH!}i_p)>KS<38ImGb2&yOg%D@G;+3?&Eyr-3p6;V%xpN;J10@FN}#DCIBKSiSSDAn zX~odTd}tI{nYWT*>DH8jc6-8B(ST-&KPV6gE#+Iq8mv>Wc0o$|CiAv2reQr=1iX2} zjuCwGtiD85bximQHZrsdutSC6VZ$;~rwl!1SPC8x2v%hC^vYsCy>HR*Ahrs)WQGD| zjEj7z*o0OYMvICK*e+)~n4~J8vNZ=w`x00NEz_1*b_%SnVCgN`bJ;7)C79hB9>N}S zAX^|Ms%TEKRI{m$st6+@F+9xBsu<=QBoY;E*e_2VSb((b%0b#uDW^ljG8+yR%rw)c zA_~8Z^-&Fvp;N%eBBvw)1y+Sx?=Pf^E*w#Cm?UrlbWFxFwlQK@8jj)^P2_YdPtM4= zmZCyTL9D{Of^DY5otC9f#?3rgbR2#K@k%8fX&G;S_JWZyFG7K5+QX3hhPA-yLxq`>^TM+_%L zvH5A9_2nn-5e?^I3WyD_0&Ppx zymEc8YbjT_l`@x%biOao|nDLJDe`$&&!<`HN52PB-7bE zqxI<42-{V|5{-#ha){uX=dR?!tIf9N8X8|pKFe{+^UP83e*<9}`ia0c@=UnsVH-?V zXhTRV%6io@@eI@Ml84vKlPw}5VY$a-E2+^l`Ei2*G%jq@letQ(-Z;;Sq*{m5v*)NA zJxE)1eYT#wa6->H?OnlTqU_5StfV13uw2MDrCst48$sWEa{w1-d^9*JT!r};{Cl?* z;rrSVs~n{m@S&EYRzARg9anxV!*Uu~!MTT$mC}rBm?n8vXeBfx>H|eI-Nxz?HY7^e zl=udliwG65EnY$!cf#D+Rm9#R_MIppnkeFtp6$~(cpHZz9#6!39k(jWni7sv{`djK z9r0bq?h?8aQdY!?1OA{=LQf*-pT(PqRqrHX(m?fu#opwH3z%rtU?Q(h79 z20YhhdUv!42t%Du~~?%t{LXyzC*Njg*IIH{69{hI@$mL literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.class" "b/build/classes/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.class" new file mode 100644 index 0000000000000000000000000000000000000000..115cd54f526841ebc881d537b79aed0c548d184f GIT binary patch literal 3044 zcma)8*?SXJ6#v~Uon$fyv=j)4h!km|SU}bUQChY@7ins1-Ef*t+mv(?GZUfiOWpSc z6vZ6{R|K&&_WS&N^1;tn{|fQV7ap+w?qrwX=R+nl=bU@a@BGfW=iXoc{_!UO8}Ney zmq2iTw7(^~e%)c;WPgW9Jok1m=wD_vh zj~)t&*38h5kv0aq4Smo^E0|9T3c84y%GmU7=wmsx9}BTaL9l{{=(uGYV;UCYY5|vo zSDynX!Yred)L@!Cx=1r~tkz zV;9lq^b&oeh9<0Ht&$m*t_1W}QkYMbKv$qyVpu~iN*Kx=5{ZiCXpvTHE0E?wIY`$F zEO5{`?UJifYbKr`&nnizuVACVT*o3~#}h4kb!((UPpRxhzYkjkAlV3M2xFUok7XE? ztt2q7vFY;itJscP6x>{J=>(0KwlQp^HS9nuU8MB1Wl+Y<^Ldp)3pYhn?8I&byDIDJ zw3miG*el?-G6R+)kX;ywQ~{!3U!n1ww05M^`gnWXvQLy4OhWL z!Q&kgX1|6za3_0Z*dUhct6-@TSw^{A!#y&JTOS;hl-{dB#{efq!Z3&J5oc0FWQ0Kt z28IZS*`~*%GR)jUZ5{3?3I{NPQ3de|#;DM62nnv0t*_h3v@A#-kh3OVZQjcjIVf4z*Dw0V}Zjv~TS*?a$5^w+(?$>ZwI`EOCUOka9Bmv_Z9*_xp ztoQ>ISa?Xo!_umTR{ISuH1Vj0$MCp-GNN0ZPH@go^4^UnCGQimG8OHWM%&&PlG|IM3l|GLw!OyW{e>UsUxvaf4)CK#Q2Bk#0-q zmSwO{yw1kLGLUTEN&pw%c#Ysw;a3a)c`m@aY6`xyj#}kYs^v4lrxPGTg4G=xksOz6beg8Qun8K1NT-!d4<&>jvLcUXIllJVnpJ9a*Pf*DsBR{&cI3n;d8l>bwDcMO+L9cYj*hOK;E7w0F z@Xkzj4Pkf-Fx*)@A@Ok8Q?<|W(O01+ilVx&dCeqVn8eG?lX#uKqp~UGH_3VeYt z8T~h2SiZv7T=5NKUt5fDh7odB-xjUT(&`+oqVUa-0H1>I6x1nLu3(*l4h1^}bG?Ls ve7l4e{we6bh&tCrXfq^;x2DTh(5DI9%p}j#wF}>4lK(2xw|K}-)%gDb`&tVF literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.class" "b/build/classes/KSY/S2206_\353\262\275\353\266\200\354\210\230\352\263\240\354\235\264\353\217\231\355\225\230\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..35c0cbe92a09a1ade5bc99b9662e264a54e80802 GIT binary patch literal 3128 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 N%v9iYuBG7e{{ZK`=$8Nh literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.class" "b/build/classes/KSY/S2457_\352\263\265\354\243\274\353\213\230\354\235\230\354\240\225\354\233\220.class" new file mode 100644 index 0000000000000000000000000000000000000000..ea3fa115f4365d09fd2ac17d9731ee9d9a2c5a61 GIT binary patch literal 698 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 d9)Dv%irY*u9D literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.class" "b/build/classes/KSY/S4949_\352\267\240\355\230\225\354\236\241\355\236\214\354\204\270\354\203\201.class" new file mode 100644 index 0000000000000000000000000000000000000000..e3b90023102bcbbf4c95ad4f4a20daf56da964bd GIT binary patch literal 2296 zcmaJ@TTl~M82(O3vPoDg1cJs2Uhoo-kb;OPmKN|*Dhd?~MYMJa3oM2tCL5L7o0ZRX>X`qr6FosRZ9y9oisK4j1CIsbnD_kaIo zbLYX2KLKdLbp;NA^@j(BBLgjaTK1g&GdFkd%P;QUymjy9)w{E|?_R#7z$s8RrJd6v zF)cn3=^LHWqo#m+pAk3A4uO(T-JpQ8J29sFPy(+C7u*7?dyTk$G&4P_r;cl*FUaaiQK zX`w}_p^5`ID4?9vVi~<}TxP0!DV;?_s?>%TRP^9Qs;P~QQO&$oOB$rT?u4}KRdEDI z32USeOef75t6i*@- zMo)V%As~Dn7+e~q>oY21QV_R(HlxMT(pg+Z!pg9ju#siqoK=wm8{TzZR_-Ix6$n@* zmQis|4ieXRER&v;?_N+bW9>v^i8SAJYN-iARje=)81ZO|Ib3YE<=xJK;ut-@(s{m$ zd7d6+6FgB0>X0_+!T*>Av0Z6dqypvkVX#}P3gq%qh zrer=#MWB64+!iadgZQhg205Z7tpTgxB4^`3B9n^h2MsxetDiLJ8)c7S6Brr44S<7p zoaDSJe2Q=tTwV1!c)queeZ0zJz=Kj=Roj5;Dn5Df6jl?YjQ38SluH;#nvh;VY+FFZ z@B#wEKVVG`)j4eJT|g~&wsL2C4m)yaJhFhM;T(1z-H}DhUgtc1UqBl-_U?6+w7N@L zm3dqbIs-};?X8}Grz|vw@}Mi=xsA>&4h_xYEH~@sP#<(uy?)JPOgs%~NyOz7oVp0iw!=m{mkT2|BYlaqHn!z?L;LG@iWtpDhy!_yL>JCF^E~L!w398T|o`5VFPYpBfe#lza!o+Y^gg$ z`xV>q8{hu}^|*%}_#0t7K%;OWB1%yv0%#J|Xcn8WQ*7m*2AS)Vb{6qEF7nAQD)9#1 zWR|xG2j0Tl%zFdw;~iXLF*V~ayo<|>q=UX@@g8fSlb+uvGdK3*YkY{0SRMVexq^>b zO;?F2tI4+ig!Z3uXE(|oGGLd2&lFTBs8!IUaP*LDxq>z!{zbK@ad|3hT=(H}+~;2r PulpYh=o(*l;Pd|g_v0?{ literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S9095_123\353\215\224\355\225\230\352\270\260.class" "b/build/classes/KSY/S9095_123\353\215\224\355\225\230\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..ff9e74397c25d46d40775224ba653745624882a2 GIT binary patch literal 1747 zcmZ`(%~M-d6#w1uK9cnHEA&A@q_$8ST1ZM;ur#$Q{m|GzYC}P!T3(Vzcr_&Pya4^w6dW@b|ET=$t;e|vCMapxXLM|pF2QR;uu}hv)ER=PG1Ul>Q33SR}4IbJ^`PE zXEwmeuq_XopruH#AY&kFQ5!6z%; z7W#%>q7NGw!f__5SYh5;K(CR)&8HIRQ4C8ABjlom;cWH@q^AVB z>uBn=(#XX)8;Z-IFBo_cFR@~+Qpql41^UAAo#8f7#{9S_AcFGZWqI+6 zz(_mSJMcCg$eXVih}WO!6&oB#=B^q@U`jw;m8p9I;yTAk1J~pqQkU|T^0K^p-9V}? z$>fV=-c>9&$8Xcw=1;I7)2{qc&8pa5?)*`{^lCf(W*Vt4r&$G0d?4wW;fNE3XO~I6 znC6{qiPHjw!V%b=@~q6;Q&y?|%XQq)VezM?iWN6wUvXqN=-%0CA`&qUgQd#81o*gP zFX6276y++os>f^ae_dAxIZHL*$1cuB!+`5zmVdxe_)(vA3qHv*LWwvNvE zb(r%H(OtvSH9V78#{eZqDLGcdi5enP>lmG{;q>&0D$YE@*>R;~TwTMx=20^>W%1kK zIi2e#2$-7sDMBNrR>g(TWEGd@)-czjD@w9QS5;0L4-xJoi^^hBANQ}}NRMv%hd8l1u!B3AU!!X_G}aa_B{#&FmfY;eGVu9uDC%u3s`4>%8*= zEAS_J`I%kfR~)NzeY3$LW^jXXLiirDm?O)Bcu2qVX##{`Xagib3E{O62#}N*LLqlIH_3+0?y`Fq z613WCq-eFZwJ$6x6l%n(g@Q@iFdcOUbvomWO|MmMn&&>z_d+&V!kKpGTq(H^4miFqFbv3IVJ#uUK&D$5Q-x@xB``NR%E?v7l zboSd)yLtJkn`4(Xcm&G&%;RQt!c6v5H%I%dm@VL2A5X^ZjRHj#l?Mbojj1jx zh#~}Zc;OQ$ZHgzYJ-PmhFbFol)7#1)pW-}key|_=qXJ!PgWiV@7{W=z5 zv4A&g*%9JjI4Q4y6>QT34foT#Jhsib?rtk%b?vvzE-RzqL4k0dHcieY2Wb5v9ZT`B zfK)*;T#R?v2;u=$DmNAfu>{N2Y6as|0OV?Ou&kT~OIs#xD=e!7?#W|m&e>A|bm6-jE>)sTbVcRei439Q`2DPRN+vS zQO4nJ`eb{No{h4GKQ?Pj8EaFp;H4eoVh^j>?CN8MX5s@%n!&%}Q7jn4J>yu?K8^?4-@#``Q8CK{&j7jbqqc>+#fjhvhT*tjH+))9Jl|y|OOosSOR|@C?Cl&2j>>8pHl@z~gQ` z&bD(-(LXLA6xNDrjF6{wC?t%K;k!6-o-V1wF?@amhaIC`WazBbhtW8xjxW8Y$knPK zIEr z@~ZOK2(0orA8o@zcog&oM`jvsC8oC1CBwwZfKP+X9b=OR{=N%bvAEESYUz--^SY<5 zcpOKW|Ngp?a7ob^lJ6oT(Kd`j;gWa3mi`4ANAShk(r~d+y7~-!!`Q5ro>rq&nLLMp z19Oe1wrm)Sh@-T|C?jK8xWp)%(l=Blj55W4apEsZ@lyh4Ce9i985Fxt(_*lyd`Nj- z~uobqW z9DDg4cNhzKlZ0^!_u&O{y^6)S$WMf;?8sm71L^O05dY-)hgd3ns1Q0Tg@I*a6PAkz zznAuNe+bp0k2D*r#nb%GIm>UDajX@;!8-8)Hi+M2qxcsdlfWh!!Uk!eQ9gvNvI5)W zDr}eQ*gIPhkvp(cwqch%f+iWoZrO`wd5leBW1l>MR{10zm#1++zRdM`^1p=+c^QY~ zdpInAi6ip2m?QrHQ~n82`DeuBUtu`|;*T&?>(jp%8IMKs2EK!rI2u;Tt9Ti&a9FIR zu2=CICs2cY184AEMsSOK4zF|NC4vE*<;q7pefS{DBhR1jBk4T6G6pr8g4S{trbYT7>`r literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.class" "b/build/classes/KSY/SWEA_1767_\355\224\204\353\241\234\354\204\270\354\204\234\354\227\260\352\262\260\355\225\230\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..a7b5d82c8db36cb7f267fea418d68914f9388d66 GIT binary patch literal 3522 zcmai1{Z|y%8GdGVc4rv|5Ok1_)mp7_K|YKhixolxXv`)E1_)%u4~E?V7nfbSAA)Jx zG!03cG__5QO{}(wgqCV;tB?YQ)Y^}1*TvzIfr*`24N$3%6ds z`pNXwPtU&b$^2CniiA}|=1H?QVnzpR+xv&CU{ZoJ7>ip8s#q5 z;lZexOvNn;p8M1dt-@^!_trOZsmqKeMy- z*6AofzJ!9-aMWr`4fk8|F0((v$ctKIK{L{A#=~N63pF@UEMhz!X69Zyl`lq+X)42J zI4Yso+na{NMzS**4@U> zc3>yDPFP7l<1fkV7lAGLW(F#J%q|;Sb829~id&%$%M4j@6}t(2R(IFFv^t00_volc z1GyF;8R;1B^P!;*jUtVm8g}7fF=`@CO97>=*|D^&5KB)yoD{L_lTen8r9G9r17KP& zg4wU*QLykFu@nn&DVl?1D}#2uhP`-P#L&vrmSVWuAS2Pxj5e{V{hmnEuIxyk$TE6Y zK{Thr5yGb7Ac{qy*Nx0 zBW66ovJrW$R0@945l40C&>YV$E-s3xsUruP7zK6YLQ}y29KF4M6@yt`?dDIHb64zy z6%9Wv;vYb@cns+{A>z-8T4PCDtzww5WX}N&5yS*aBP=wp-(S(4i#U=h*kbv1CU?#j z9VwiocQX{aFN5@{R9|sOW1wR?PT^?@db1fkk&N@fKBGr3qZanvc!r0~CV}v`bUcf1 zi*smX#EQ~t^-8!b13SYJ>);^1BTPKclg{g3&PsNn8!yo11~J$AW`Tyq6WV*=5uu1NuuvpI0Do-z8sVL}C8j_ILnItI( z%n|!kRdH4@{tF$y#1!*MuzYCLTjAGm371vm>-aUU5Cdksy!z-6Bo0aI{swOc#}CoVKSnK7FEelv3n1eBc67@YT;85BFPPu&sWn!jq<`Of{H7=F0 zp3i(c3^!fmqJ(G4muwAamKSrzcrD)&<<81EY*^YVq81s5EqZzZ^V-N+4mRN{bg-FY zg_;LMjB){E&Y@*>0p36nZB@;qb^*Hr3#bcBdntKj4v)>@z<~uE zWKJDzTW8TZj~<_*%;3lrE)^Y{L0?8VgZ^pz?|p>iJx+(uHHEGP3*+HSZ@)memTt35NXQQpGZX_PD=5-?nbdk)d-__~aqakpf+Y5C&f2jecuaM{Dl zrA~)q9;4Mo-gi|@_i`&F|z&EKm6 zNQccqKamH&aC8#7o~UmlT)VLbO)z-N72^Q8=;4|mN)bjGPNE#oz=Kz?4sUSB70&0V z`!iwx5L@ss?)wia@j1UYWK>BmRNEvSPQ#DaaF+ho<74~;uall__$Te0BVoJo5BwD8 z8CMhjh6}6;g&tQ?f0UXB9DRVJ`CcKHaShT0mh>MiDF+rPEP!}1pQ^ngVcByDq zagasw88)a0NuQxe#eh^R--dRZA1#`=0qCE_Aq~-!Xo1t7Y4lA(xmHd#u47W7mja4B zlTbaR`*G>qxuMMCH$Io)lHY{W(P+O5C|CMC zhO3WUjw_O(s23M6uRDj_N+G9kiK7nk0V2guFy^|QvmHczCvn|{4a99D_V637fs%(f zYJ{KfE#~_BgXS(K@Tx@E3kCXxrMFQi|CjZpi32!; z`+nLLxSt{1<<~JU<0c|)gt+=0yf=+9PfefC$?+ej;SpoD)y7K0x!rI%+XZCK>>AM; z=@qi!oWLfb>7PKkY`7+1*o`xRy!6(ZbBi|&=XrSSMM~&x6dA7b$g@`|p-H$5<%)cT zVWk_y$A1KXZa#b1B2TgO0|fgJw(^T<2SM@Shz<2)l#QT|(3yA@AsgUF)9Kl8(Fm{Q zEWl^jFaqE_yokTxuk^KwrT)GRum_`T0F6cO<%iMVIZDG?0_P&#ssd0+MMRQF)%wlr MWWxCYt;_iEf6)vw3jhEB literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Wall.class b/build/classes/KSY/Wall.class new file mode 100644 index 0000000000000000000000000000000000000000..ea6ab219f0c4ceb6a3ca028781ff325a83bd6211 GIT binary patch literal 366 zcmXv}Jxjw-6g@9VlUQS0>nG^Y!J+M75vm}Hiy#Dx4%LX@2QM+yS7HM(byi%&+08mQ zIf`Ia9Q*+2KK8Kx4=?`5CVSyw#{| zx=r7U8CXQH2_A#KELtL7VMrBiyW}uvtKpHKh6>Aqi6I8HSaJrykhPG4F0)|^26R$t zqUCS2Ph3CR;%?wGPyYGBmUL`M`S@{AAbXlc06#^Nd2x)^NBbboR(v)pehwRIiUolvo x>LOE~?jrX@l7c+NOuxJb4f~WIV1%^7?+8XQMvR90C*JB literal 0 HcmV?d00001 diff --git a/build/classes/KSY/input.txt b/build/classes/KSY/input.txt new file mode 100644 index 0000000..387bd1b --- /dev/null +++ b/build/classes/KSY/input.txt @@ -0,0 +1,61 @@ +30 +2 +5 5 +2 +4 2 +2 +3 4 +4 +2 3 10 5 +4 +1 2 3 4 +20 +26 19 23 2 24 2 17 15 1 27 6 29 18 23 27 13 26 21 9 1 +20 +4 5 3 4 2 4 4 3 5 2 2 3 5 5 5 2 5 2 5 5 +20 +1 3 6 5 5 1 5 4 3 5 4 2 4 6 5 5 4 5 5 3 +20 +4 5 6 6 5 3 1 3 3 3 3 5 3 3 3 4 5 1 4 3 +20 +26 6 8 15 10 15 14 6 19 16 5 13 9 12 14 29 28 3 12 27 +30 +8 27 2 32 19 16 19 11 33 35 7 9 6 12 7 1 1 28 38 32 25 14 5 15 34 30 14 24 7 24 +30 +3 2 5 5 5 4 4 5 2 4 3 4 3 5 5 2 5 4 2 5 2 1 5 4 4 3 2 4 2 4 +30 +6 4 6 5 6 1 1 6 4 5 6 6 5 1 3 6 5 5 5 4 6 1 1 5 3 3 6 1 5 5 +30 +1 6 3 5 6 1 4 5 4 5 5 5 6 5 2 3 6 2 3 5 5 1 5 4 6 5 6 4 6 6 +30 +35 8 19 40 12 17 11 29 14 21 31 39 28 33 16 19 34 12 12 10 28 40 6 19 36 19 10 2 34 22 +50 +37 59 11 13 18 30 22 53 35 18 27 7 50 19 57 38 54 24 31 38 4 8 9 54 37 29 32 27 11 7 19 57 36 54 35 31 45 2 10 54 27 14 51 27 34 51 1 58 4 6 +50 +2 2 5 2 3 2 3 1 3 5 5 3 2 2 2 3 4 4 4 2 1 5 4 4 4 2 3 4 2 5 4 3 5 3 5 2 2 4 4 4 5 5 3 4 2 3 4 4 5 4 +50 +6 6 5 4 6 6 1 4 2 1 4 6 2 3 5 6 5 5 1 5 5 4 5 3 1 6 3 6 5 3 5 1 3 5 3 6 3 5 5 2 4 3 6 3 5 5 3 5 5 6 +50 +5 5 5 1 4 5 3 2 4 5 5 5 6 3 2 5 5 6 3 5 3 5 4 6 5 5 3 3 6 5 6 1 3 4 4 6 1 6 3 3 6 3 2 6 6 1 5 4 5 4 +50 +11 17 35 37 41 2 8 20 40 5 25 58 54 7 36 33 46 44 37 53 15 8 42 56 35 2 40 55 50 58 49 2 35 19 32 54 18 12 22 56 23 17 47 4 30 56 48 4 36 33 +70 +37 26 72 57 38 33 9 6 66 71 59 55 21 58 65 57 27 36 14 27 7 76 34 34 8 55 23 80 41 35 39 38 8 5 17 23 42 1 27 78 77 26 74 51 13 27 32 11 75 37 37 62 75 73 41 28 29 57 56 18 79 27 48 9 1 30 31 65 73 63 +70 +3 4 4 3 4 5 4 1 5 4 4 5 5 5 4 4 2 3 3 4 4 2 3 2 5 1 2 5 4 4 4 5 2 2 4 2 3 2 3 5 4 5 4 4 1 2 3 4 4 4 5 3 5 5 4 5 4 3 5 5 2 4 1 4 2 4 5 3 5 3 +70 +6 5 1 3 3 5 5 5 3 5 3 4 2 6 5 5 1 2 1 3 5 4 6 1 1 5 5 5 5 5 6 6 5 1 1 5 3 5 4 5 3 5 2 4 3 1 2 5 6 3 6 3 4 4 5 3 5 5 3 3 6 5 2 1 3 5 6 5 4 5 +70 +5 5 4 6 6 3 4 1 1 1 3 6 6 1 5 5 1 5 3 5 6 3 5 3 4 6 1 5 2 6 3 5 6 5 3 5 1 3 4 4 6 5 2 1 6 5 4 5 5 4 5 6 3 5 2 4 3 3 3 3 3 6 3 5 5 3 5 4 5 5 +70 +47 25 56 22 41 75 1 47 39 28 48 52 43 50 56 2 50 41 35 6 36 23 60 67 73 3 30 52 31 8 60 34 10 55 35 24 28 75 45 5 37 49 24 1 59 7 6 20 77 4 5 67 5 25 18 61 29 54 41 69 68 16 33 48 65 18 22 34 70 2 +100 +30 108 8 61 17 56 54 29 50 72 9 97 67 36 75 110 88 99 75 93 19 44 39 45 72 53 115 106 1 20 25 118 117 51 89 72 116 33 76 26 6 47 35 55 45 89 78 69 56 78 58 95 34 9 1 14 2 9 8 64 12 85 117 49 40 44 8 2 89 36 12 56 89 18 38 63 3 57 29 110 25 46 98 20 119 52 114 107 23 11 105 35 119 55 82 115 56 85 68 28 +100 +2 4 4 3 1 3 4 5 5 2 3 2 4 4 4 4 4 2 4 1 5 3 5 3 2 3 4 4 2 2 3 5 2 4 2 4 3 4 4 2 4 5 4 5 4 4 4 5 5 3 3 4 4 1 2 1 5 2 4 4 4 1 2 4 1 2 1 4 5 2 4 5 5 2 4 5 1 4 3 5 4 5 2 3 2 5 4 4 5 3 2 4 4 2 2 5 5 1 2 2 +100 +4 5 2 6 6 1 5 2 1 1 3 5 3 3 5 6 5 6 3 5 5 5 1 1 6 3 5 5 6 5 4 4 6 6 1 5 1 5 1 4 5 5 2 5 5 5 5 3 6 3 2 5 5 6 6 3 5 3 1 2 5 1 4 6 4 6 1 3 4 3 6 1 1 5 2 3 1 5 3 5 6 5 5 5 5 3 5 6 2 6 5 4 3 5 5 3 5 6 5 6 +100 +3 6 5 1 6 5 6 1 6 5 5 6 6 5 5 6 3 5 3 5 6 6 3 5 5 6 3 3 3 2 4 6 4 4 5 4 5 6 6 5 1 5 2 3 3 3 5 3 6 5 4 3 6 5 6 6 5 5 5 2 3 5 1 6 1 6 3 3 6 5 2 6 3 2 3 3 5 1 6 5 5 6 1 3 4 3 3 5 2 1 1 6 1 5 6 4 6 5 4 5 +100 +68 88 9 43 34 56 114 65 16 83 42 2 120 94 45 100 44 110 47 34 16 112 24 108 22 78 88 120 65 69 108 81 36 53 82 15 67 56 82 95 74 95 14 77 29 97 68 103 32 109 88 115 80 107 15 116 81 78 82 17 98 100 47 103 30 41 55 72 100 24 11 19 105 12 64 102 100 22 21 106 50 8 66 14 20 58 43 14 78 82 21 5 1 81 89 65 35 20 87 47 diff --git "a/build/classes/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.class" "b/build/classes/KSY/personal/Algo1_\354\204\234\354\232\270_19\353\260\230_\354\240\204\354\236\220\353\240\210\354\235\270\354\247\200.class" new file mode 100644 index 0000000000000000000000000000000000000000..a95e8c6688e512d2a0e601d3663b028b109c57ea GIT binary patch literal 1431 zcmb7D-%}G;6#j0qn}y9PffykYt+ccx0@)&J(Lk(FXj1}F!(=9-Gq?#WUAx)c*=(qN z^MMDaFYWZHGS$&1UX_QyNT+{5|BpVAzo0XvJvX5RB{Pnb$-U>?^Yi=moImzo{|?|1 zmL&KX)cJf-b#%9CTbilfFjwud<;ME2jg6ht#?zg~<|7FL zL+F9Frm3c8t*W`w1HJ4q1SSp3@X`$ac%r}{%-Acs3_m&*hzKxrWerPTtW`?7yQGy& zouMadmo>AXxdzt{9tH0kqslOreb2U1RI;KO7Q^ZIo$O(IdCxVh)f8_@o_$!>9nY|> zs)QbfaMR1M)lBYxi-c1Q-AzNyGfXvK)+|eRJ8>F)5_;c2p8vk;=@kW0oMG_s(venS zp3-t^9@W;hN=il;G0wtShQ4@PmqdX(eW2hx1{fquf9Pc_B9*wz@Y)|K7{te<+ckPU zEOV2<9hMnFLPGoqup?##7cfkz9Ufs)uR=VNC`cG(=zW{5>6&4#=&lSEV-h}n6LgbL z1s5?++150(rswWcOO)+6>oP`gnIpf#J&xNGg$_(Gu=CvUnt~K2X^=F>(XADR(RLBX zk{mQkERP_~Q(R|=wd>}n;|&GVm|^Jf?ACxVoQk&vFoao79RUzDcaZI1~~-jR9X&npCGLh zC(%VoLL>`h>E>xzmLdZ5vaySBaSM@c^k;|bI5!peO)mPo*+{M^geG%EF(l^}VbM#egk&942eQcJIzF%Ci%rP?m7(tZ;MmgCKS&DFFGQ#YNgpQZB4HUv z1QWDdY4jqCKIBQhi!-=~e*BEHc!G0HPSP#3n8TNpD~KQQ6*9y|2tVL!%o9I@SfdOJ tRC59)ERrP991b8yRuMNTst@8m#wCQAgj;_@rjzylg%s!hHraj1{|loGUzq>^ literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.class" "b/build/classes/KSY/personal/Algo3_\354\204\234\354\232\270_19\353\260\230_\352\271\200\354\213\240\354\230\201.class" new file mode 100644 index 0000000000000000000000000000000000000000..f9f6abf610e40b9183813330164a242e01317c20 GIT binary patch literal 3475 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 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.class" "b/build/classes/KSY/personal/AlgoURa/BJ2178_\353\257\270\353\241\234\355\203\220\354\203\211.class" new file mode 100644 index 0000000000000000000000000000000000000000..96004ecfd40999f5d5932e58dba55b51b7ad09f2 GIT binary patch literal 2212 zcma)7U2_v<6n@@xlT9`Y^n)#pe3ehrLKCPMum!ZOMFWLE(}E!iY?Gx;nr7>G z#IlFXk-R0)I8e-(`SYfolkc@n#Tm<$1=R4^v2%sdZiz+f zpUPMzCs!<#RWu4TxuHNDt0idB}~1Q zt5+@C$_`p)*0NRX5(q8nR@hb50Y=}WV=rD7@W|pARg5ph(6AG2GL7vTTCq<``&pl5 zKvi!pmdH}Pij&JntK}UkPFRK9P0N<%2Xq`nr+}X&%gSyGYz(*kw>BC&&?1*tb;P7W zpkPfot}6{k(52!vfd)4$L0B99p`aDK+To= zCrb{2@`hcM4NmE}h&11e6SsHqx8r?;z z&MbZ*F$@WOwOF}}cj&>ZWIGL?l8wyaUD*`{vMV;Wa1F8(azL*`J3A3$C;HIHyWNCg zY{X?W!@?#M&;kb`+~)H$?tO`^n4#5ooP+mBhlkjON7#+W*n{7&S9lN>^=K0jj_t!} z6+P$>Nkm)*%*t+yA&ely_}fGbS;pXhplHWcjFJs8u?=HLl45}7P zv4}h+AJP4ZNgO9jV3AM*D&AMos-i>1AiqMWI7Wv5jrA%%5RK2|u^nq4 YQ#s*yutA#rg)z@FCM577oqO=nzkSmD2><{9 literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/AlgoURa/CompleteBinaryTree1.class b/build/classes/KSY/personal/AlgoURa/CompleteBinaryTree1.class new file mode 100644 index 0000000000000000000000000000000000000000..69302a280259f0e488fd64ced3af5e7b6515d1a6 GIT binary patch literal 2141 zcma)6T~`}b6x}y7Fi9974Ik2iP`_$OEUC1hHh={RiVdZ0(qO0`8NvWlLlP#FF7dgK zKKWLk>hhs4JlJZXwM&=J{ulp%t6KM+nL;SIR$u1cIp^MU_TJ~5`{%#E{tnf_!WURHa;nZy= zZI1DZG^#6xV@Og*=&JCHKx@V^ieJqeRiCP6)n+!T&X%hmBQ#sJ*?OtO->KP5m?Fk? zyoFO5-Vx|@qt+dZMYnBZ>!P_?X9*H$3nK|u`wZ3J&pcOl%r(>2F^sbU+AX70Hy2hZ z5ewJ=&_9-H!3f^dFv=?J=eb%p>!yzP(J#eGFzcih>$Yu{iQ?3Y-mxRZ zll`J@7#0(D#~R0qpsn&+YA`2jd0mc5OBjpDYxwjz0e3W~*A3e!I$pWh2R*UrMp5_N zq%ZK9j#tqycVFm;$>CECdyNxwV50rh9A!%&oT=39qB(2Hq3b!~tr(JG@@*N*o^Rmi z7jxpU39m7|!dFQlCk{7vQ915h1M&gjDsAM;b2@jMvOzTf1&$F+lps17va zi=T0yuCz$HesuZtzP%ScODHmWdjsDiGW0cMXg`!eS{gD){A@dZiC;uXNj8EV-@)J= zsP~^Bk>ADXbV7ZEp~pBEz~Vj3Cm!Pifj^Mk!T9(COj7c`;T?R`*R(F7{Ycrl-MhiP zTJRiE=}-%ME=HOcxby5M*)Lv^Mp+uL!WxARvJ4T*-Aj%8sY8Nlj1un!3}PN}-+TZ+(5@PayJ<&@QrRW&9pG5|PQi!gr65+rf>++X2xR3H|Wwufz^M-=BjM?hu{f z7!6bJvn;|ek&lqcXan{*zC?jI!c?G%Qz7ee9EOWs;tM12585>d(M~qYv;ZsiQBB5B`L2 z`oyz!2Jtd}fPdg$_yOM5Nm0D;;AGOhv(L`nYpuPTkKf*Y0B{7CG(-eOFO_dvOSa$e zTv@XUwW@dHnzXLke!UsU!13HEC%A4m0u3>Nu6y!`EXYuJA7Mz9!J& zxJymOA`1*?ZnM6~x&rYD$900!0@18FFA$sdZreJdNEt}N5J;6A*S->FUzdwDTcEq- zRb*{m`i^>D3&w)G4y&1^|3sW;tGaYtfpm7Ew2r(S_>No6oAVmB32X@unt@ZZ$`$Fl zwx7Uu3~1>8gKqgzBe3fRGT1?Ws%US!q~lpd#hO)ZS)_ei#&8sz!B+2?&fB=s;X~Sp!2boqNt_}^PtA9o`c+D~PJIHW zHBA20Ei7E{efg+i;0(?RbOv5q{BR^i^WUN9n8J*PX`&0~LUn&@Vc;BQDcO?hT2nJv zQ#jnnUvnkQiV`$-rzWccdf99G6?@iEo3-uV&CaP#7^b38{x4z_n)1`@RN{x0(ubD9 z(?*%ez2)yFK3TMawqxuyHov43K^K4HVXzZh=&MvFpc`9h6X-!NBkJWhET)>Ce~0wV z7W!UeXK8!|!>_QnZAM$z`(A$qvxQM*$D@9B*NK75NnuUMj>R1F_7*$IlR7Mjua@W@d78 z{jpmr{)EVX5&85thXGC@L&Q5M+aP%i^V)?yymA=fQVwF8tdz`c4l_6(PK{`AAsj;* W`~Tq3(es7hGQB54^hLfG!NnhzO9$@& literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/AlgoURa/PermutationBitTest2.class b/build/classes/KSY/personal/AlgoURa/PermutationBitTest2.class new file mode 100644 index 0000000000000000000000000000000000000000..59656ecb0e98378ae2e90016a13d5f538eb9c883 GIT binary patch literal 1303 zcma)6+fvg|6kVqmLenT0u~sM|ir9-b-ci8|f@r0RW0e`l7Y{YoXq$A>)PWbr2Y zJM|`Gp*sv{PP4Ya!U7!=wqyHe1;Xjfyg+2iy=UnNqsu@XhCo-*cC2eb_D#7^wFG*L zZdq36rDv<>)nLSbV6$4b_`i_H*{ddPM<9{DQ(T8$@;%$BjA!OG>=5V)4w}AQHA`jb zIF=W~P7G-1|ATL7so`5S11SuWpenk(UD9^Vf}+i;maL8INMJ}2+bxhxZ<>;sS4n#e z?8S)E$y)Ra4rQY}g%|`z4MfqQytDzW?PU#gBBo*o4CsjI^zsHw91@6ge!s`XA*2h1 zKxXMxDA%@4n3F)G%%e8CjnpZbum!f1d|7^URn`OPl^!PzoWf~hbk%^@sb8m*>(nQ3 zR>PU!x&?(NJx?w*44lJxfll9Tiyw@nkok8gIxb*Z!xYg4bD_E$S{S&98A?`HU8`ya zs|p7zxi(kAEGt1H_p7oZpqJdHSGHzswOYwdb~~?HVVIJJ`PYb0Y3fg}Q>h>v6Un2BExQE_>?D%G1^J4;S7=i#NBNeIE*8FFOCTudq>-q?Y literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/AlgoURa/PermutationNPTest.class b/build/classes/KSY/personal/AlgoURa/PermutationNPTest.class new file mode 100644 index 0000000000000000000000000000000000000000..2c329a1d66b441b1740ae425a2035351f1033d28 GIT binary patch literal 1477 zcma)6O>@&$6g^LpqeKyj^Wl&ZnF57iE5vR?NNJO}4NzJaV`p&iOb8pr(F6rs^2l;q z_W2boIzu;X*pvk@ZHFJweg8+x&`pQdJx_KMI20NMJx|yOdzFW@_$sS z_u7%$G%V@=ze9>=pB1Uzc=CXk#-jlSB2~20+dL>(vmn;)$92d}i_q(X* zQzeR1G;ji^be#MzcZ_Q-44r#z6CdC-DYb);mlK(-Vzwrs&YC!j44(%b+7D5!ljR|* z6R=Ip;hex=6!a8`btz`wRK`FKAL_^pOvK`l;%mW7e1rw!Zpru!DMX)UT=D~P4G1in zxPT?<<+u8XZ;^l#?y`y#Zz&0Hw(E5DAiZ7_)>4!?ij3n)xp{Sq2jK}EsYXuy?scaX zw~3C6ItnuT6%$|Js#NS-hxv6XR-|Tp#FNd7XYdZWQ} zQV*PDaFt&NpmE0z=B)FS=PI}+?57y~ksAdDXX%#nFlV!Of$I^ThA@IrTIA#37&5_i z?Pnx6A7lI}rb}~AFtcj?VwBY-?IA|yQ<}6?_BD~xtOwl}^Uv`9W1QiVeS&!|=kIr4 z$i!-#*pBBRCYB91j7cUv#+0YH&S8vrQ}~1({W+#%aEmHeoA;rR(u&N zq%(K^8>O&0d zD_!e*jM$d8le4Yd58Xek`$(vd=q^aN+U>d0bp0u}>1Vi1r_>{9Tl)%?*w?x=S}E;8 z_jm2l0s94t3|P#WrohL!eNeP)KPmTSFmTu zxMExB%3-gJ$L?~j A`Tzg` literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/AlgoURa/Point.class b/build/classes/KSY/personal/AlgoURa/Point.class new file mode 100644 index 0000000000000000000000000000000000000000..5d6a5a87128c902357cc71ab864c8a2294f6c55c GIT binary patch literal 820 zcmaJ-T~E_s6n@^e+t}z}z=jA#K+&uvvC)`lGC~3~nBq|5V2M}eU1>(4v`gvu16+CM z5Aa6gqj{#45b5p!cC9+9rJPfz_BTtWhf7`_28(>L*Dir1{RW8WHv+Q zgnK>8WmjF_jn*irT9&1^7?gUj=M*4gT*W9#402U(<-stiB8L$Xl~v@EXj(-9BMjpW z*LNQEj@nMRlYmV&0-Jj+9=hV6CY5O4J!a4v|39n7khf#f&Q8FvP`#*E7uR$dip_}I zhugfH;#8`Qp#+IAHQg!@^(7T^&=?BMpcmTCrYnS*+1R>$>+ZehXYW3ry?*uc^yQD! z7dOQM;?i_GK971KwQc^p^jv1B^y)>F*J@ZK9x_>mJcOp?Ary^Y(vx0M8HGw+MT+(y zL7}&7e8QM9H^79U4KQWQ4^Vkec?p-ukHu3P)LF+A?qh~>Mly%Xn57?Wi1An)2}CK5 z1g2m_(xixOs)(9qd_ZM|>@6}%|IgJ8EKknLQVYn$If9aetFga^<@mk+8#3#i0RR91 literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/AlgoURa/SlidingWindowTest.class b/build/classes/KSY/personal/AlgoURa/SlidingWindowTest.class new file mode 100644 index 0000000000000000000000000000000000000000..5a9c188c2eccdcf32153a5e3f2c93ea7cbe776b4 GIT binary patch literal 3795 zcmbVO{d*i$6@G7av$NR@B;AlgEG=zKn-4-43Z$iJQqpZ{mL_fKhSa2JJK3Ei(@bX9 z+1b+I7i#_FOA&?o0oD(Kil~VuX`_JOipAgbC;tTh19`0PotfR8CHwHG?UTLto_p?l z&OPTn=gwRIzWO?Vd+@e`I)R->)8mP}ZWnTvW+n#B>D&BB}~nlP8^>+r)L}iW$=t?%o&`C6j#a8N;y)Vjh1GiIV~^HGVG!h9m7lv zX@!{)E#D{5kT#|*%_-WtK>vD;{hr7*ot)8ZE#v5RUqG0$9DSOi0bd(LJf|6!z{bwg0T0uT&4~6%Phy8JWc0ja>F^GdQ0(nysxuaGDYh*HpLwG>JVSx>m{P{doaRfv3Ew9-HCXT2z^O9@DN($$%j?kh{hOBVO+rnsu)!+7ZnpY z%^E$gnMM8hluUIp7_YKopS;-zrTT{?iBmzPQk_Z5XH{sJWO0(*mD^V&nOKz&IN z%NI%ivnpcJ{{c*?n8u7iB*QWvByN}vB&E4?DrRBQ+_X;d&Kl-wfXk~`Dso`wi5iwO zCNJ-Hgj9@nZ50I&tv)lOXJ%dbgkR<&IHR4HCrol)-a~dF&7NjAX{kXd7RRK`w3LgZy2!lFX6Y;=kCq8~aoc&1=y zWap}I(C;*EBee9pscO(}-jEj*Nru+e3q_On3gufEF97CsDjy<22f!|OnGM9)H^)=#actOGQ#BiM`ZK$|}uhU$??O6hws!n>+gxApe z;(U_6sp4CBkq$Y0a0IqisZSNHjO>_5$Yb*=b0g<#3x)eDD%Iu`hA+um)@uYUizyK{7;W&ES)Rb z8C^a!w6pI0-z784-gz*Wa~NVRKcYJ`xojbZRa{kYMPPe{fQEHGH>)Rx-7r#7o8o(& zv*%T;;g2InE!9nGx^?U zgI&fqnI*18zYZ zf#1iugxVxwLJ2z62#CM0Ve@$WwiRq!Mf)1M$Jfv^zKC5b*u8>#hHqcSo_OCf`bT;~ zyH}AM=n2cAH!L^y)t9&TMcN{+!V*$#5m#pkN82LxQhNy_ZIOsKJHCd8##fMD!ssGK zn+I1hwusa!9$ChjQ&N(2B}W62Bd%m5AQ^Qf$9+i|F|&w_ix?{FW?a1BTA~Hl605Wh z^(qUvtF69OS%%&lC0uLNHRX-VFy6$WWz2=o`UWm4qE%@PU%viV9$m$UFCjuvxHq~0 zlQ7Y6RsuE1X>0hbw~9&F1|L?A71(UW@79>FA;*eF$#B`$#i;PHH($Q~%p!`?_j$>S z5F{_2MLU0QBqy4%g(T`koD^!o9x|n${1_rPPLdmskQY<96?tkshTHHYw&F#S_@~&8 z-w@*(U+;flC;o{Jyn{}mqDRE}dAbR^L_g<8_!0Ubc8fIb732KA%wmtQu~$5Y`@}N8 zC*Pp_ZS;%3;egB0izGVPhfm;f`nN@_;*1{$LqaUzB6%Gm(o6UZXJMYd zgwNu0`;Xg}7%|HME literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest$Node.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/AdjMatrixTest$Node.class" new file mode 100644 index 0000000000000000000000000000000000000000..ffd35a5bbaebbd7e222eb6984f6536de2d9f0f16 GIT binary patch literal 929 zcmb7CO>fgc5Pg$`+6g9U)0DQffPn&bNNdW6I0TSNC8UT@q^6A&Ar6~l6&x8mvYo2` zhYQCd(NqG&58$`-Hy~!6AOzt+4<5grotZcDX21XV{0+bZ+}DsII4>G4XCT8U@P+4W zdA(qNS2(Bdzn&g_c;sw#`!7Wtx`%r*ir036uGEkr%=X2Ba6IAnoLB9>?8F4^K!&kA zWJEPW#!uj8{fyPCgqg>#@5WCF53Smn)9og6Z*!YDq;bJO7I{M2vYT0O*9OjEMxmks z4LYGvcYV1teAkxYo@jfLZ|Xrucuf(y>O65~;*qQqX)ok?KhfOSr6>yh2#8rVH9l6=52J7fb2ky|kLR(W zCMOs*-Ka*C_#!y(eUsSnq7`och(my zwThQcuv-3v!U$K3H%7S0cy0uXQL)Tsgvt@erkEAny2@KlIE`_Q31Z^uW2Z6B;&!s@o6(=3zUScq-A#rxcv>o0!mM6!t}z8QXMKv1j-{;(j3UmjGLJuV?1FB z?2M#hMq=2=SaMzXsMu3hRv-|0bB{V{ZN{*Y0+s&JNYS$>T~5Y3r8nN*`IwoutyD6r zVW&Wav&%{a!-H!Y4Z8%YRuvblgc(kzb2e`=jTsLr8Ff5kq^HI#`MIUpp0~ZIz-}2| zwSdq6I@4a%V6TSS4alMkS=*e^u@CzN)U0WT>HF@&dFfQqF1^=KFR;V$D`#7YU^HeV zlV+xrHy_k-2!{n+GI(F!{-*O@)ZwUfale!rbTs0afR;4pX_aYXw!#{k1cGl4{Llb% zt0BnKqoZLj0yrTpv>AoNoMq?uNm1sR4(uxCxjU0F7S5ZqIkwS7lzI`tfQJ6nT5y_=DKz6|M#ms7 z)AKnakuwJ;Wg~VL9oIkxYHD)Q%xo&=e1~^7+>poL z(=mb@3@e>VBFP}#@5@T_SV?G;7`EuyK+VzKo84V(UUN;S(A;S$j(JQ z`_0Yi4=9v4o%z(b3i2)ZRvVY#`H_MPUOuH7DB~ZX=Qr@ZjjK|;g>vrNPFY^HLtZ1s z_$=j@FPBjIIx5xkz2D)&Te1hzpclhL_#AVtDk!&Y*=O}4h zx1)!W2j_Wb4O}a9N7K-&p-u=57c?|84}aqVLutjkG$&!V(?kgm%r!m_E#u+n3yu+s|L-$qTQ)?cs{Kc!L1Rkt>FVQLv+AbCX7@nJflrf}o^kNTv z-N)Hgk1)gTW3c_y4zO7Vaf=9ITqmf{Vc5aim5;=MBvY29HpDo~a0fF;5^FiJrjVvC zNW8PuDg@ZN(jgd7R(2{=*_qO(+nkG)%5%slQ7&vQP6U?>UtxQO>WSOs}C#tf4$tK-tZD{}A^G or-)MSUq!ilBgzAW8mKFI$t1Y&5v{uLF+Sm2{-6i=|0z8G0>QFhUjP6A literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/MakeSpaceTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..b7a2339a7d3bdb631d32ce75187ac361752e8b33 GIT binary patch literal 1411 zcma)5O>Y}j6g|%~lZl;4nvYJJI^(pVO=~A16GBJ;r!M^<#l=kuE|x-sl!+OfY3;F@ z8S^DUH~AH;s91z0q*9A$)g2rD0vmongjiR!<-BpCv{Dzy8ozVzyYJ39=iT|^>2Hq! z%;SoVguvwch^_tt@+W1j=lHe!@Zw>TC}e@x7>2esk%4ZFw&t4^xt&8 zaO}F{*X-5Jn{G7{&_Y=upscSK8GX6sMT~^RwZL_KfvzRb_o4zzvblOL7%iG;ZJ(oD$G|_p7Mr(@Ppu)X|lMz!?J?x>7`01363z zBpV0UK})m6Vlh{dJf{u3iW#15w%Os3(sfEapd=g48qm?5!W`yxye=>lt0wp73Jtu0 z1rln>vvn#|v+-L5-ZYRzHxo`!<0TBe#7&wKR=L$t{JfpK2C>2?;KPdEa^zHRU2|Id z7n=yVp@!Z!a*D!sgTaO_845MkIa8b2C~RxO)JCn1JJ0rF$!Q7y%zTeN>Qp!G!rsBfjAd>8 zATx_Hv$%s5u@2)5IBLJFa6(v~y0m~e1vDa}oGoKZ5=o{470 zJzcjiQK@RHR%$P}XdDR;ARd4x;341*P{Y5+R&69MkmbGC+K08i_3x#5{@>$g0M6is zj)XwwMrqC7b%N0MWYxY<-S)q_EA5wmK7IM`Kj-X~J9WqLR-G_9twR$SyeGevc2#=Y z_N~o(P9+i$EBqG(k`=!ykXToy^g@B|W!H0~&*^5eWdZGyzvUQ6qThspUV(w4>p3g+ z+NKk%%FU`HFjVv_vRambtNhlY7VWrs;8GO0-u6Q!|mqIEzz3N17pB-!6E&^@vd&Sz9tNf(cdF zF@eLGcOJ=>)uH1iPGCwv_nhyef=2-*t*lcfbo3}IYa)eigVwBx4>2du z6FO1+D6BG5$d(ngZDJm$8Og6RUK{W>3vL5`gtI!%2n@%SlfPrz#G(qW@2VSBR;kHg zo2n1LLqO^fR=CwHvQt5-Ah2xWGw{_-H@qGAH8%{YdK30*A_o3<>=)keD@C&M%}u!* zzq5f$xT52-K!5wiZpvuK#8q75J-JC7RWbWZxB^DWuLl+9s;e4ju%l1&>OPK>B*`{U zqDQGpt4C=X&s3DN#uMyAjwU^uv*6s7dx*Y08VL+=?2Z?84AM562XF{O^imkc2V7B? ze`J~j=lm0ltTiz95J!u%4=}lp=?12?ji<&wW|I5JXpfLCWxlu_o9!n z`!UYklgu+sZ;p9X_R(eroWsZTdNGAh@G0{fsx4X^zqU9QEp6)&mVSY@XA$5pn9Qhc z5MWPR{u@IL%vkALmbO8hpM*%OGY78}Pcp7L$Ed&&)@ac>N|FhB$LLLQoW@E1W@(?r zsSdV9d=U#f&a>xZ(liAj+lOo1U1 G`0@>nYx!yb literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2507/SquareNumberTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..ff35d4ff43eefd6fb0ad497ddec53cc8277a54f0 GIT binary patch literal 1511 zcmb7@Uvm>>6vm%7*))H;(9)2UY79wL%obs#R?r5~wpdJ93X&43%%IzJCoXPx<7VTO zTd({G4C9Q>cp*2;Xq`zr!f@lApQU^Qhv9iQX;UaS?#%A{@9cSg=h?IWKKuI#fEnD1 zBO-9>a&1L#S$^AdO-G+|n%<4;roQvra4F?{<75$;!p%e@0dTB zx?{Rc{p#u+s}Tq!8m8kcxWO3#Q5h_!1%}Sst{q$uh?cavfU@ANSt&%Jsz@LyFk;y5 zu7J7fSOQ~)$82@ex8-`dx2Xi*+HC>d_+PkX3a*>BE08VSG6vYSz_;CIS*yo!RNzQ> z&6xkKR=A7Ty+!%cF`*hiP9$V!flH1dVI2!`%VF zHC8kr5ICvgU7TY5)<%n8C043dG^W;ZCXV+6(qYXc-}j!1X}nL(mQ3ZaKBZKZ7JVQv z{<3%T9ot#6`~=PsLP`{#-rL^k{#0(uP?^^lb=xX3zX21kS67 zVMxYaQ1J;qWy6@QmgTMqJAX ztElW6Go8TY9{=v9pF`oMg2SAvy#S10l&d6;V2nHR<$stg#_{V%NUv-nvxV1+7ho$SgnWGRst$g`M9o=r(tx zYZF9NzWEE~oboGT`G@&@PFZ6i_Cp>SNDLfv^W|^2T;|3+KlaVjHepCDV^=E|bGC75J{N1A8wLM+_3J3-A&2= z@x{jqHU$-bfWM``L7cmZh{gx|u(NaL&YUxI=6?V2`5S--xUV5aaCYlWr!T`O@P+4W zd)?sGzHm<8e?2|=@W|Qj^j?TKbcY8rir4poj?|DLThTI;(VE7y8!Dq{;2N&8E~4L;euuDTRj0`( zEEOH=1g%_D`X>apRQYYf#=i)rIDf(9SR~uPMJ(yK!z+EGIl8%^=YD`N|_Ft#ba$wIYvo=;6atGs;a z1V(A~n4R)5=07Hh3v5kf*ec}c%%YHisLelC{PASXejX%k)q+@Cp7zMs)}a6Z literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/AdjMatrixTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..18a83ba8b31d842f7e56baf7dfa1a34c60913fec GIT binary patch literal 3105 zcmb7GU2_vv7=BK&n@z)Ffs#UL3N0$6Y1&BCTH8`A2pZ@IkWwrKVViE-E%_qZ)D{%K zP-oN`XS~xZ(F+`J{1~SNi;Oo8GyVX_U*LGbA7Di4b2e$yRv0NvchBxQ=RME!ywCe? ze!KtEEdbBpeGM*w(2@91Bx~mKnY59NbSK9%CypDDJ73+r^WE2Nk?zsSUc=5=(*tJS z)}RP%m^7x0NYY4;NBT!5&4exB>9o?8-6h}-HVz6X2Qs6k4{lWGP~j1%?6J~jUm-PO z<_3(Bq$#keCzCLegGSDh&!v}&Jz?bq!aa|UsDr1a3@a^A9USf{Ba0Jqdb~rT@g1B_ zm|5G(r1Kg!2~;_&tV|@jHR;$n^8<7ULtDpwavy`%Az+&-k^6oyGIn@J{#H@N(q(n<;SjE+~O<-Atf9+a@8anI>6Fhbs$ z0!1!6_b4m2RB;_XjABd!8^uz!E}PadjtMf&${k7CUkM&)9F)K&b({wgX;%JVDr?X1 zlwjj2F34LK8O%)`Dcv#;IK1fqZOY19wmHg74a@b3LXHYluk2DY*~Lz^Yjudu2MFEO zq2Yq8i?#cxaj=4wHLYU?o%F_(nX}Dl`RbC6*YO4c$|4rnv*t?SR`#DPjVcZ2)Qv2` zw`B>w$z~bP6mkhuc0e}i70tgzxb$qsZNY2@=JeXGcRfCh$e^P2*AIAYJ|RpV2H zcfq?FnuGUy4qWh+76I${AJB^ncwf(_3Ot5NuG+w{!kLXSj7acW!8aezqiSfAe-2x& zW7|CHhkn4$Iqd3bnniH0ymSSAMz~!G1b#(}t6g=sdamKHoM_dYtG7n=Yf-;f>F2;3 z^=lj`er+D%A-`9SqH}mE&Vko?rOA==>WWABJ#|+XW^0tdO~rj3PfIp#hs}Nm?RGNQ zfh}yb0m{*U$FUnvQh*?ZZA1rqZ#VOI7|pclQy9Y@<~E3T`1T|0ca%6? z!1HLQ1_5Nbzmuvo(A|4Eax=DxF6^U55uCvbys`(g0d#ZL!_{4k*-6#98S4N?UcAVd zwQwyEj;7(DhI%119MaIj1pSRer1BD8=5bQ+HXh;OhN;l4&UwU!=5VC9_NLMoCi9*f zIPSv9X16kM4SnGoctzkB^v>dRtMUWR`jrjc=RTc9!riJ~Lono5qJFjIGt@Tw)u%tl z=CEHa$MCDlz!g>a)!M5Ie=rmq=4T7vN@*2G+Af*_#O5ZpbwpQ*BiM!>em(mrMn7pE zCD}M>4&XRWu-gnG!RI9B3pnk_+ErxYh$K^%M~Z?7&YedZ8OmD8ev-un&P6D1j~QP4O~xRhBDKlw|@JNlDgfQOZk>^Q4s1OHyW+q)aYJxxXZ3H~oGYZ%~}Flyd!| zlv`Iyxs#%X>pgcJ3$Q5_#l#mpPa%eAQ$QJ@&jO1!>$-+*p+K~b9;8R z>xx^{g>GG4__JK8+oie5M!_ZWzl_a{z7ub;4llDF-*q^Kil>z9!t)$HvWZ0;>}Qf6-Pk!&3bsTK+1(hiVGEQK6CF;SLvhU*TPT1;YG$ H58i(P8JMw2 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest$Node.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest$Node.class" new file mode 100644 index 0000000000000000000000000000000000000000..16bfadb371af0b25b0f246f17003728bb489b707 GIT binary patch literal 614 zcmb7B%TB^T6g^XrLan^T2l!aHfF@EGnwV%z49299U?NE3a=-}`Yirtq{Er)#x*#UT z_yK+k-(b8gE?mlD?rUbwIdkUg`~4HZKDJ~?4AqO~js759&#}3spISZV`ikq*r;q8& z^Pzrb4(>ePKNV(EZfFYw|0kNRUsgP&YvWhqo z45_+li^lN2Bit76Sb`y2ce>nabJq;|-(l46n;wJGbcSwMoSVVH%wMajfk6zaVcWv3 zS={r4Cu4)5@^2&P1%cn#CZQ4fuV9gGiU?GPnKV--&*_DW6jkahNQhF-Yj0T6iW8)@ z(gay;cY^#Y%_S5l76=PS(#aHIq^Zgvhb&fTs?F|WHAE+*keAU;K4g}{D&UR~+8T8d O)={Lagj!12MEnQD28&7n literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DijkstraTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..9a5bff34d5b50fb77a03bbd598e1e0d309934e6b GIT binary patch literal 2482 zcmb7G-EUK682`O(x6_`UcF=K<0z<~eXc@F@K!Jkb*aj5#f$KIcRphKa8>eee>p5p* z;0GFZ>8)NEqY_DGyi!88>84&86^x0A7bZsk0xrBW0YZJ=vvnI`B+#Vq$MgAnp7(j4 z_V&YXzXz}n?+I`)gwG^X(UNMIMP129+wvpDfj%XA_w)I?Uwv^f+M(q}P0LXFRnrpS zVpx+?#+7JZ(MO`aLpe2LF;pMXbj>=-;0%Qa8C>nftSZ6@kAx~zGt_ixy4o{V7*dUX zWhk#Q1iFeDB|oSb8ow_RUDid-WN7YsYCwm{SwYcshV`Lz*D|oAWoY`yVGc&@oXDsp zODpQ8fB-|SEu|HsiQXlSfOTY{!ZtgA|4f$hNt zY!ncDBrnO!rll4nY{F&+2Ztvwfa7kLEgTjhV++sG^9&n8tBQmNMbx663vDCt%R&q8 zDMSH{6@X)wmX9vP-d`M5b?u63aP=k$I}l=U6Yea33x;)}@Z3N)2%jL3&6F4Q{WF@ioL$w)(a@mxSz-dbCu$IqLCxz09M0n6cZo4FOqlZZ2 zs$r=U6hVTM&q{d7CSOvuk&6~5B_;G@fNbzgGwgX*ki3RpmhcKv)WO9up8KU*JWGwV zSnyP?X}l)j)fG*&f-T`ZUS|+WTq934?+Q^Qv?<02b#?73{YlL+WKiiZd3&_==%pPd zq1m*+U#+@Hgpm){$xvllib2v&RnHO(C7bKgxOPkWS@S_wZCb@rFTELw$}c$+Xt30+r>_Pk=6DrM5eYZ~<+k2J*r2c2ll(kjp` zN;{*yYUd2xU)yYvR?g7bStzC0yNHtGm`!vEch;;9oM$0Vr9bMdGuGRUms)|5$-FJw`g}Qk$?yj46#XZiL zIE9ld)B;ClaI|7L=B+47m4h!R$lf``Q?ex6=hhjtB_~BDi?Zu_c{b1y6NBzR$1FO7 zZn?_Y>x_AwG07S8P2odFOd>wr{ZnWNdSw6JkFY`ZlAu3w1Acptd1Zf0n)EZ-Uw6Iy zw=6k6L-iCckhtXPC$H7^{Vd^-TH|EsV9*ov-@+NP)f9Bw#|YUZQtyQus9hvgD7~D~ z7xxGKKb3!(^fB2-UUD}vNY1MxfsRkX;Z#Sa;Brjk9DhY8_$z)wa~#yI0R*W4HX=+v zF|F8)Hq_xXwjhbEND=2ewjqN?XxNS`Xu>tpdmkZuKpI~X{T5C0Sw!#y_TWdf;0{^& zo&FH~K@<8<#PAOe;9r`^|KSks)4+D&2=n0>t3?~DLkHVIqpTCB*Z`dsw6Yw!*){aq z)pZ-|c-`Ov6v7%{28IX=Lp{qN3zaG@%+eS}55?5V`Y=K#7mdI;F4CzAN!CKRd#F}Z ztQk3sQazq$O~|7_HJM@c&{3qSe%Mq`9TXvNzk=D<6+O1nr& Ki_`aAxc>*o%uKKV literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/DisjoinSetTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..771c15caa3af68605407cf60864d96b0d800d511 GIT binary patch literal 1539 zcmb7DO>Yxd6g|&ldz@iXAjT;S2?g4M9Y}`q(E^SG;Um<=B!D3TA|XASAxv;)qVc#D zn@W|~vS!BQK#D*Ok*8Biiv18jp&zo@w3Ep7K^X|KI-#O=EP%l4cTG<{Dt?9s-wfAPGuU*CKD`ma9@+9%xRjPH6?C%oV^Lmf$hbu;ou zX*Z-dZBNu@oO&oA#`!A?=yNh~ys#;dnBq1)?0RlEBB139lLE=({x!#dhHevGFa*|C zT+bPA&DNaYf~++hfu4$AmyJmoxN6@{Cc_&pAqOj;ptMN3S$Wgxg1`n7DWp}@YeGkc zT3vzeYAEYB&&atYmg}x}ji>VELfK$#pNUPdSStlmEzk8muK9AgaD}-VV|m{9dG}N; zUPbKtH`ptX3H_Kg(o!ybtj1vPztwR-AR8%NNnzqU z98|4TtPS2Mm;V?dzR+P4TkwT~8&;=E%DpRv$qbIrbfXl1l&$Tsq)JCs>9N>oH54+K zW^=P0ToW*=ek-UuW3HNw?8;djQrfYNzG|H21Tw10j54alTvL3*DdTeucQ#j{vIGCX z{F^}npYfTFlUU2xY{%=co;ySJiWzm-A%!};Wggkb#slQE;_oo$k+ZCc+YlDhzrA~- zP_+oPm*n8d3^BX;&2sH0#}bRd%;%BVjjZFp@LzO`4Cy#Qai{!H6qLV)@N8Ba{%59=e6h(QR%tUIBYpiO(G*F4 z-$Zg5J-*BiUTG&G258Q1iXV)a24avl6XCEmvNVMa>`a=v4AyODq(wS(i2tx&sK$JW zuVO9YhLT4uuQCsiUBuV(*hvwK7+kd|r&ArP^>oK{&q&On(|`pW zT}8n&9kL|okkvY7sd07f^6Xuujle!yxSum{m@`pihlXi!2?sEOQ5-=9M{$W!9mn9~ z1b)Iv{DLvu!71Fu_qc~L{=^S>h|_q=>gPCv7Z}G&oc&-FUg0>;f-axrGl8-H0h}5u A%m4rY literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrim.class" new file mode 100644 index 0000000000000000000000000000000000000000..a3467d58233a4cc469c38568cc2643c6b3140a8b GIT binary patch literal 1915 zcma)6?Qc_682_Ey+upX^33S}a*pMl29c(KC*6BcG2wK?-&@mka;jTR^ceJ<5?JXI` zWC+js|1;RdS~UbW)drPSe4v2yy9oqF)){RiKE-J2TBj-2qEvH@LS-K2fl zPL*u8m>M3RlzCr3jPjomh}nh7LEHD7X@O8KM@i&><2wE;WRsmV(vMUMGL8_MOvDfu zSUcdja;R1wm)?jyUXlWdflA&kjoO~0_(h@aUv#PhI|lwwm3_=pwjEcXC7ByosW!{P z++v@qBYt!`FQ@V&61+OHZdVR zSvV!_g7gfu3$!ljGVWB(X9?0SH`FmagAM~*9z!&HrRvMFiD&VgfTr$XHEy8Nu0-gI zqYc{>hT8=;CRa7-9F3zDJC#wA#jhAO(h~=z-(_Mqx&)#ute~19up!y`Bx-T=V2^>6 z!1@)eGOjO+(lhZq_A=@Z$9|_h!?b5NQVy2VgEh!jwyZOhgx_Eq{SvaP1V|2=4Q)~#R$2Ch%w%2wtF}FFv=m&SWySw!rQF-5c7^vrn91( zID;Iu9y6ZBIcjI{8QuxBS8*NZNrhS63@(t0;2J)J&C|fgNCuIk_yw;lQsc~h9_B;z z7-$s_(QKestp6MFI*qxY@)R2=7?2_u);dv(JuVj1pjB&4X?2eFDn7i_1k-3J{s#;V Bt1kcm literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest$Vertex.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest$Vertex.class" new file mode 100644 index 0000000000000000000000000000000000000000..b39ccf32a3a5087f0e3821047958fa3e26245379 GIT binary patch literal 963 zcmbVKO>fgc5Pg%RabnyixL-gElu{se5EcRd3D>l-|22g-e~(#SH{U&PezG+p`k>m?~7-`@kKCn9`^U;Akk1J z%uTYbaC9Id(f1{x5QGGB3FYU~8}23SYL_ByfQ}lW*syw4 z5KbD@qi%+8w!?w&dm{2woF_}ko);5twEw%obwYKJK3{hE z;kO#cfUsO0OE{}xnOm5s;s%Kv%E-VuoF`~GOD+QoM9eqeXiqL=;;t(=!bJn8aGIcZ z!f`Z^cReMp`P+=HsjK|{jyDWMGLE?5$=`6lWF~XkI7XYBtd-#gfs9(dh+`RRunG3R zOU|p1Z539y!6N@tDDZmn%-KRsoUO|1IKkH7XqPLBeAes_n6{S=QMZ>5VZP;50ds6k zl-L?|zZ&K_vyxrI0v0)9fRu((PZ1TEfCbKJ?r^N0V%YCsHu?XEGp{+$ILcfF z%%->tS=~=ugP9gV^({ubkfT{STGeiT1--}WpHMvb6kK(?mU@?PIX$nS!KYdPf`uk3 FKL9FX*_HqR literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2508/MSTPrimPQTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..47ac1a60776960189084cb24e86b04214f9017c9 GIT binary patch literal 2472 zcmbVO-ES0C6#w0w*}c2tAkebFN`dmBY)jh(T9!gvu!UAvwk>5#u`LSI-RUyz?(8x< z3oWRK7W{bd#l)n<#4k*ZiBXHT#G>)Vn22xsVNOP=QE0AE8dcI&2ju`6$EM;F2z7T?zu&CY*uB}7XY zRt3xMKQ#qa*ufEESUG=I5!2R_x}{<#c2S6|X61C!5$Kt04p(N+J>mmHjS4qB99|*p zQ9*AUduPunZyTvl!M`&zsGG)l-SUDO%1RZ~qCpfxl-jmL`1>J?0&DTOibheO&(w!( zCn(23hBZzVPCjCJ#xm^Tj=Y{HiZ)@Hba8rmTEP>Da6CENAIG=Rvb5oxil=axSk`Z( zQpEINZzNLI#nH;J^TBDlwM(~beMmtR?V_$D4DO%^Bp@7B5kn_wGJ;Y6IMBl7t1Igf zo?R-A<7onu%?L1yn>XX>qZ~addf_2bnHeEIqvBa1dd}%a^0X}?ol>EpkAWMx=5*E` zcCK!ZplL#dj((CedC}ZCy3xs*Gn^(yp2h%&vEZI8Fsm2@q2pPxBSo~9gH$Oknw6yM zUA)9SC1TGdT70ntA1IG2M_|?!e3l}Pa2ueUXN{a;>j~P>+e2d7Fq;!e;Tv^n711*)3)EYTy2D&7C&HczKd&BzXAEcPP44u&{hm`{_lTGIy_D-+VL2&wxbSN>c5NPmEsIxkZ^$T=13_qZvMqmr2br!f}~Xt@H!j#U_qu;4a+kPc*sifYZNVluX>6 QSMVyW;;uyL^BTN=1NyCCv;Y7A literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/BinomialCoefTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..196f7db6836085972e93b13cc8e13c636d036873 GIT binary patch literal 1109 zcmb7DO-~b16g{tlquojYHDzW)T^G%iU*1O_H@ zbH<8YuK1qi8kgOoKXcPEzP~sS*z@X z=WS34ZaWnLBl};XM)<;#<#+;Zsrl@VxLihXnV&afIEcd%hXfjTluug0?KqC$D051o1~p}xX)_d@iX)AF;(nD> zJKAor)*Wrfk&ze>XsK~h`mS&s22N1VN_fL1xsoz#AI&Nk+5DD&w2+;s5iCg|=4^XvhUtetFVbseNLJL4jD#ua@)nH7A?{{qGUWgp!d22{@)e zgdS&ztK`YxF1V}x8`$%v7LIWZ!vs;!HNNe~(ZEw38qq|Am&FwG_7Hpe0g1V{*t>!D z?6Gwm7!8-PPGy157xYAimFSSVhMDM)rmJ1=kQ|b07}d3Bi0P`XJx5cAqN{_trcABj z;IpB;+Pvu1SnaB!rOYVUvHLL5TYL?#Oq_ L6c}S-1Q&k+s(j@# literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/FibonacciTest.class" new file mode 100644 index 0000000000000000000000000000000000000000..a4df9c9d2db5bee6fe235bedb81a639521c52169 GIT binary patch literal 1991 zcma)6-%nd*7=FI~pg%Y`C~S-h3Nl8!4bH|;WQ>^)Nm<-tVobd7FYwwMW3n6l12&)U^Z;dGvL^lB_k7>?KJWAX`hI`< z)6W1#Q3=2!aN=reSuN_Na>3F}b;`^Yt}klplW!hB`Qf{9b;elbel}|?>18_rpFrz| zc2`qP&C03ss~dXO76{n|TQjFE`;35?ZTKD$2xc|YJ@RCDw*Ac`UtZ4_1e(qpmSJBI z@W$e4?oJoh^f0_=RiL0n;84=A^tnoYRWB`RtEMgxNfwBj)=Gx_b~kyYOD~0R8Y2OabVDgp_sX`OS8x`i0v-u^xDII))Pz;6*hJN}{6rW-cta+3jG@L3 zyb@2#OXCX8fe8v&`p0&{VwG8*L>QB}7yye^_wDeSDwVW*Wd(0xiXp8VrpcnlGPASs zwB$Oi;B8!{eW5~>U0MqabC=c?Bm#Ixpxud=tQ(FM%;GAk6s3j9*nBZ!2XIZG^ZC48 zsu<>)UJ7EKz2+3R_grrnNxUngUL*lGYNvyDaxHHxDYy=HV3SrX>ed?TPB;4s<2qm_ zlXzdjGCrUqyHH0G=!oq%;oU1(kx?uLagz=lUKxpSOZwELtHgf0ZC62L8S@P{5M7$A z3k)3;$p6v};CdInG)80WHhUE0bw^okU~LvXR6b z|As&~Rj8D*`i$XB@=W9VGAxUUJ`RYN50szd$5Esfltbl64x}SFT8`vkQTk}Xr-JKC z{8A|erT@eh4*f{QgEp>B^-V;mE3V#-4t|B@baO`D< z9IK*F`s}NszwWb&fvDPn!Oy=$$k8|D>M)2q4C30&h37f6kwb(W+R@MOb~%jg<K0y4o~+@`$_NV>7rFlcWZ5D05~kS)VBwk(MJu{-lnLu)**;q(I$3=gzQHGJsxs+_xC#5xvV}d~_^SxJ8Zd7)Zd$d|y@nn_30y!gMd)WXMvNH6c78%% z-ADf+MoQBM7<-WB>qp7ud^B3-^ZYYj=2M&=zFFYw^i7SNNel^oE205kZgd zV)B%s$3u!9QbJhX;Vi||dnaG_aVeiJ9AL`V9)+*H5UB2=H9<$-O}9tGD5;(#G=qLD zVGwT#f50$4VkBVCg>xW_998JXHl~S7M#4j$Dn_V^BC}?x$2eZ$CdD{z5qB8;gi6N* VZVTv4V2+%dnett}L+J?S{{jej&9ndj literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.class" "b/build/classes/KSY/personal/AlgoURa/\354\243\274\354\260\2509/\355\224\204\353\241\234\354\204\270\354\212\244\354\227\260\352\262\260\355\225\230\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..c3d51b91ea21dda3f997f11899af380eb66be925 GIT binary patch literal 3415 zcmbVOT~t)p75>h>cjm%)K}5$OFlw|hpoCG>u?i9uQAbe}5KCw*mznG2>M%2zAAiyx z+lDqxnx;RRCdQ-@C8ZB}P*@9S&FX3%+OE~rwffZ6mpt~R33=;FT`|+|oI5~`=A~<3 z?ml~;v(Mh&xA(sDm(PFqdjQ+;YZIEl_9MLm;f#~brBik?yf>LhpX{;2bGJU2yZxJ; z;ZLuQelqs<-01AwE8}x--2Qm-_NTAE`SI*+6NW(5S^K;lPTHwNxO@1l6Uz&TWBiW_ z=p*(;fwFu$ZznraH0UF4N~tsa9vtKrEuQ6QQay~ z-s>h(cD|5x1Xew2PupO$o%_n#Vo5jU=G%EqLt{VvcBJD@IRqZFV4*@vt1MKaLSSi^ zn{tj7MuweipFNzU=jyI>%ue>(Sy!%0N`ISj7=Vt|7V5ErPV>*XIe{Hr{}*@+(-^TO z9xEFLy<8NCz4@%0O0>$T1DzLRPA2cBQ#lh)2rO5qxan}Td%?@o(<7Az9 zk7LK3tcgbEId6-mGKD<7JNAfYF2^Q3WuoZ;4tp=<^3I5bW`s$M46j6nymrw;YXA+{ zB7tZTsA=%x|H78W{s1;$o7}XW!7py|u4jtUzQe*-v6GxJu(;$xU`0dY!+-?PirpsK z1eU3c6j;$z-bpxF3+;HCE;4pD=TOI>OSe4$X;kvQ*Mbjz6HDY`zlDG&9k5`+uU{?} zi_#FaP!7M8j#wy@`;X4!|6o-H(1q1<-*F2|QDvfM9&)wMW3w-P&Plm1IN1PBpicsF z@=HP_Bqwmn!q+4u^RGbL-w=J6x6dzd!Yqz0hdg0 z$}IH8|Kwxg1qrm7ktrrw%7&dyuw$1$qTh(uFk`A&sN@G*iQTI8b;zD~9O?t!2Pr{>KAzZcaI)2G}at;aR*ktOaG}F$?a8q%I zz?rdh*72ru*5M94Rv->~Hhn?L=_Iotw}v;s1x!ADqG=3Wx8aYhVV)rqHcNj0s%6 zixUI#+zfhm`Sgf?0`??2f<{Zwzsfg_emd_C8rN_rXwaz3-WF~Ql;xuy8I6tb3Q2lsO;ixMLhEYSDD#_$huB(XQGBk1(A*;Jc!qY^r z11oWq`+BhoL)>+Ss9!*cMZOwu^2B?@{kKH@L)!kzegELwNPy}7-~XpR_q#5aL0p`a1; z&EltTNgmg#6_-~|)fz)}#t>;yD)MvX)TmDcedbv4Z_-AKtY?ph(|C+>m_4?cY_u@) ztwehpk=@P;j_{?wgId0@`Pq#&`QAkod&tXP^k6^VTb;z{0J%Ac3=ZKEtuIplDvsa^ zjxBP4t9V1rsFkbf`1E&3dceHi7l}?g^}5!Pm9aH~U!rqY$H- zsAo5f6+amjf=p5RsP_E@c-C>ufNyAx;g~E$3w;FaB+I9l@bvIk(|}5GE$`8|`W3^J z?Y~hK5=SwuvV1fZdKG;4VanPuM1^*b)_@%8rD*>|A3mP$tZlE07@ma{sIW7yJig|@vf=2VT;-B^Rjl~o;@EYJ*hH#qhhlsMx6o$!j zjQqyQqr*;1s5G{D0pMMghMcQJiQ!2}GNAF(fiX%l)IGRK$xx}4L%$E75S!%>EWU+G zIsKg*B_fAwBSu}sCj*vQMOe9|w5Yp|rcx#{F`rC~R_3{on4D?8Q1?Xf!-o<(#~YHo zBgG+-CNCKl>+}5Sm}ST#EXaaNtlf)ZA+f^?i5)H_#u#ynyL5gIsuX4W?pG;#g{M+v Pwebh8z&MlA@ZNs`{>tDm literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/BeforeLunch/BJ2252_\354\244\204\354\204\270\354\232\260\352\270\260.class" "b/build/classes/KSY/personal/BeforeLunch/BJ2252_\354\244\204\354\204\270\354\232\260\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..8f105b90c42d1d7600a48a8697cd20c6a545ce55 GIT binary patch literal 2950 zcmb7GTW}L)6#o8p(@i#uU?D&Np?IT(wt*@Y8$>ChM$(H^sHF&OlWn_@CSkJy>Rl{~ z_X}Q8@rKs>pw6VlqT`D`_@d*CkG}b&_~wi=J{Z4$lMo8Q86UFy?|;sJ&UeoF&VTa# zKVNv3!=ITV(7 zw2cR1X4l?p|=&PY_u5tvsJ++-!pNHU#uXvH)}yqHTXmfTp?>>O}3 z%*K2fTTmcSU&*P4g}6k;qG{>s8O=E6h>pcrBH+oGPK2oE7tc#LWsk(IVku)PA!^SK z4w|+Z-)tIj(^herK(Hh`>s&$XqxUOxT#01@RWdb!0>*QEXt)#&GK?h}>aaqt8kwCk zpn^3QOLGM*y|(2@EGq>Tl(2MVoik}G$R(H-9arIM@*|ZcUCL;>S)*c(!x}aOEOhTdJc=(E<(HvsQv>(-4MF#(KSu8?au$%j(7@IR)m_ zH=JKcFE$8>It?3fvx=LhSJNe!j$06s)l4TWhPJE{8!FIJ!zOg7hzeZnX3oVLNjm0` zY3t}j7qO)cJ3|)AgjKQ{QE^*|%UQ=tgx1@(F&ecpq-VDba}#dYu?1`Zb)S*Qnq7mk zM)_rvGMP8ce7vE$1+ zw`I+&sbfIe_M{|>rCMBv2?A2msYK%3>=*sX5QcSF*v)K^C|hL|?j;kEl}zXu0m)rs zq|;`Sm={eCZd&OXVi;+8Vy{3`rF@=O{UT}H$VwPwyy2v5naW}&-AqJ^`(Z!! zV^qZf-f`s|l%zWDa)VBq2OOz*kB)nB9}6^WWIDO$2DeS-=K&oLx)Lk1aU|`GO85`y z7;{Lmdk*+Ib@r}U)9e;YR69ZMwWrvDcL5Go--2(?@(Fl9bHy5;QY@c-KJ|hE-!u5-!$p`$BeS?xD7jdg zsXjuJl!}ol%C&Zmq6IeZgH62q3_f6os z&J{VVt8LHW#x^CWRJTmx)>cnYQQSpMz@zN?3f*n0(&`;YZBPw(r_jxFn|sE*BH#^p zj_3c7N~g3oZ*{A09BpNLT2L$4^9QwpJ)H*pEdhNJJvsFD2E74&d$Y2uYs@DCzCg`e z`ERGtPwRKK`IJ^|91E$TH6O*Spf8~D&`Ip5LhqO+0-E&v>o|4USd;As9wY5IPFSMtXi zn{qgq!=c6;4)gc8ESCaVuIF&MTN<5Ti&?alEY=zpY6Hs@Wr?=%FT@T65XW4k`MwK5 z9K-?~=CnM5MR*OD;9Z{l0!wg;``^*t54Zw9bE^M>W%!NjKd}OTab(w^Nz@`FnmLKX zSS4=ZdNWpt?PwKoj?-bR5eeQOk~%rmN>bn{Jk77gq6^R9S(0X@xQ>{QkVb37YCMk@ z$juF6IbNim!a21RFX3fUYKxeUSGcOd4lxr)@hZt?5c_M~^D=_p@j8xibqMR-Js)j0 z;0;>Q_+5uLspn^8^Y9i|I%7J9xA6{1{1g9;NGlrSiQ>4sYG&l`x+mTvT1oqY{y6pD z=gz0_=b1vEiVsxOsc2FW=2{39AF^F8%3}_+N^C;tLGp3>(4 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" new file mode 100644 index 0000000..0fa4694 --- /dev/null +++ "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/input.txt" @@ -0,0 +1,7 @@ +3 +4 +1 1 2 +4 +1 1 3 +11 +1 1 3 3 2 4 1 3 2 9 \ No newline at end of file diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/Soldier.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/Soldier.class" new file mode 100644 index 0000000000000000000000000000000000000000..0526e86c1fa5ca6bb6439f2b25172ac6015561c3 GIT binary patch literal 713 zcma)3zi-n(7=33uP7~awq(7jvg~CE&BrGJhA_hQ67J&|~BEiJjIS~gtE>6OX7!eCY zCB(#p7%~*m2*H4u`BU2FUqF1{Ibwi?!S}uU?%jLuJOBLk?K^<$xKxHAaQR;F(A!h_ zAnVJ-yET2gKYjJ}=wRQQzI%Og@bQ`#WJxDhc^Q_#VoyGoULyNXyq&P8qM?A9`ga6` zFHlN%l}rWfG>EcX5x5ceputD7MSbGL6;-xAT)xl zo{eNeDl3iF-=l6f9}z7Jd+h(up}>4Fl+n}sa&MNW8f2q9Qg>rcymtKg&B@F0(cz2Z z59855@pSpyqB&aN6CR zVCfU}4Xn_*pl>}Uro<9LtWwV{?%@p1(vB3gpU{XM4UO2-B(F7`n>l(^nN@NRQ5zE| zENtCWTG}ZHGiiZ!Y*2^e?hu=W>wNjj4+tvnQL@G+E15cMp%iPS)q?#eWF4D0Pg)l= MTPzaXB52^^Z|G-=HUIzs literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254main.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254main.class" new file mode 100644 index 0000000000000000000000000000000000000000..3ad4902dc14aca74284c2c267698bf98e2839ec2 GIT binary patch literal 3033 zcmbVNTW}Lq82(PO$+nvXrI1=|(N+}FB1RB`&~jw)aZj+@AB%8QNDu`Fa z8{!2Oyz4llhH-d6a8k97Z@%b*qYu9L=8P{YzBtZ!nX!Inle7`5GuqB>&i|kP|Nh%| z_I&!shaUr2g;!O$1g_l{9S&wpJDawQWU%Y}3n$JW{ouPZCxYi+I`+evQ!9espF94; z;nUx}cmMZqpH3MGONAnE@jheR2qq0{G`M|apBc*u)P(!G_eA<5g90KVFejY0vN^-b z4H?P2>1ISxw%HmP=#esmJ3gDsvRj}|V(i+{-8tB^C%V12JJK^CEgA5ls-3}}&OWL3 zFb}Ej>WL0kn|lTHd{&l}%;yqmOCZ$yU#gV8;dI<=XM!EEWWq}1HVC)_twREe+)%Ml zVAcPD)X;!N9Zjeg@OC)JwGg;W$9ybcmAwhe?9Zo0OncB6Nt*0PZ#rfqhYUL*Wk;#O zjYejY8%tybR{p2b-|@%*g&_ zRRjd)&y0L}M?)K~Rjn9Uki zW1SoTyRdW?oWJMRIwXD8>)0SGskO`lIR{jZa+8iuIZ8!NQYykay3s?$Si)wp-asT0 zkpKn{UL-=BC{wE~B_c2+{CQb|_ zV`*8Po(hlg3t*N-Ri2wpi=1>D@?D$AhSRp~d>jM`CGOx(EEQ+1(VP+6-)CgXBv&LY z$)Ui_v$bEvSY@zeYQ)OqbDS+xDUr1n`;b(z|1Te<=)r8xOzB90xGo9qpKeAK0*N<@ zjHCl|YnV9>)h2QXZOBR^_H6!)QRS>~UtnCvmAFdgazMvH+{IGUdCAr3usg`~a^meO z?iRRYhUz7*cI6XEp1vB~%VsUsa0vIys1N)D;~Do59@KFJ4{<0)CSzLcZ4(Lbw=R~E zS?(b`B0U}zSUwB;|K0Pbj>nzToJ*Gy*6;+LQt@Qvs@B}VBhehvFbm4NoWjY{Cv!mgQO&2Qd75P0&9Dh z716=Hkk9XXhXDA3j|}hSBN12f+07@(=P^E~&SFs!8x({Nro63tsge*wYiZAV+g&X8JB)%aC^&Fj!v zbOBzzk7&ZLHN7!4$6tGz*}I+gA7$r&MULb{3kR{7`XvbPe+MTwgsU;k8|)SY5$6?^ z!U~MD6A$o8I>Jlg7((Rp8l1#hyoPlspdDw>fpfeoKEg(Pf=&3GH^i3+<7-|F-=YUU zVl#fm7W{$;e#bWaffk`MS~D{_%?vmx>|$gvlW%Y%ZsHVtm|`AY&NfcF-CVgDTPv?# zBil;46eoT&cNIpjFR#9)M@cu1xva#?Q&1oyN~=%E@ms0$GPio%#$S~g&cPn8YT#yO zx5MB$nTuaBLY>CWe1#ZSKIQ`40Bwp%`&1ro$rkQLg zrdY~_K8#{w?}hvomor~^V#g=ZHav;Z;j>6gAUy%QUlMqEg~02Sg-VIS9hJp;CFCh! z_44TnT{6>;o{NBBLBZ%%zi=;QL- zmAKNz+QBK*vDYo^UK{&%9s9JF{n^6ajB$MjE6B5kW?F77WsT=>f>IkV`IGFLpidaj zbLApZ+?lkSc)OfQE96rPi@-2nkW;02Pu&pi)yRdUVoNapgbAPBGBN=zeJ+?K zq&z)71v##cyc`#hSmFfAWu6A@HTuS2kp2{Tb<*X?>gM7;PMcp*{!F_Z&d{oo23W>f zT3JsjoWm4Zf%CYKMzF~8S;5>xrBBZB%l5I$g@2c)aVfprNYkt4^gb&8Q|k#-lS+A< zM3_qUY8rvjxJXWXITK`N7-S_AWHuXQW*B6Z(zQ+i;Vv`C)l87NVUVYpAk}P;xnYoJ a1hR1g2#;A%pROe{xQ-iS^#rX36Zj2?dIJ3b literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" new file mode 100644 index 0000000000000000000000000000000000000000..33eba8e1d7d1267b039ebea0c2223dc27b3bb3d4 GIT binary patch literal 2158 zcma)6Nl#l>6#lOLjKO}CAq=sZ6Oz~jApS}8i zyHv3AGr4u!3qzstq4mg$rmgIQ=;G=_d#$KYo6M!xQ%t7NFsHXm#Z)?)w2N_tx@77> z)+(0rw!+xS-SN5eP&kR>lT1`Ip30_*lM3!ocuBz!L_WAtZ=w!9DV@sN3#H7eoxg9b zrdh6eF1Kc-m#lnB=FXx~+(;4V=()AeQh+cFLE%MAXhd(4=4 zc!j%}#H@l!D0njWZ7V}CndDkdP#K?Sa7KvGq{ejUuo9kB5b`DS(+7n(9P%|d3 z;fjK%Cec6*(_pQDjeX!xjg8$y_PF zX5UFkV+PLZts#+;@ri7f*DY-o3UzK2$^*c(TkL~E@%~xaUv2|bvZ7&d9?&$2=L+3uaUHIs9!bY?Zf+QR$2RR8D zF0G{jwTf}Ne5*LCVTKTP%6-EfDK{eJ_A#Kau!X+JK86&2LvVg@2eFQC(IDG{`xq4v z+ET}j#|_aaNYp?Z+WG6jMZyWp)mo1I;@6%W>QSr-c zjeadpm>-gx2py9$R>2ypNEy=tx)|B0QM)zj9=H!Ff=5t0u!DzeD|dN8+GMsu;U5Yi z6jn}9m_141HWeQxmFdopYoEa%snuk9$}7fqTrtY@BIPAcDnx&-61_?g;0G;$2#F5S zkSIysAoO9}=G!9omN9ya^h$;Fik3whdIj(4{t57;SXCxH0^>C4L+Vr(!Hb}FuSsM$ zt_!8Oi-hCm?{rhTX39O`o~+8@*+PH7bL8ll5imrEXK0X@*rc9L$N}x^pIzHbQEtL+ zeXqyZ&vCZhIL(?M^GPy|^X-=A8Pn=dRd`N0JY78TzUC>>_w+sK<}DJ&hPJsynzI=- Z+EvHrUQ(E2eHZ4jz)`*=i~LUj{{dV!zFzsw~c_Py`yU8Xp+3ykSqr#xqyVY)QaBXxUb2NWdHIofJ?; z3OQ4Q7r_vG@C!5~E!!L`&tyz@!pP)JfpD^rHS&{&Ysvlkp;EeH6$MTv{|ChZrk^n^ zTc9<1Ik`nORdOwRdO*_CPS0jdr(_lEqKdFUb1lj$#1iA19u+M_*l-M&r>0ET%v~^z zoaw4)73kRTC2Xf$BD!hJ)ZIa}qf+@p zw0Eau8V=)#iavp+Ey#pjGN(;9grkTN!ZF;U$upL<&ZjmX8=@xy=ob(Xnfq9XqxceM z#&8_d&IugZ?TZ~W*4a~_2u?_dmj(7l6Fd2C1P1UbQ+5Y1$VHP)84BSPUgMA!%97}& zxaT<;>m4NgFy2rxvTZ81xkEUOGXkn3zsSobZs%UV4Yd(d40oE7+`P*Kvi%vC&D~7@ z_;7K4J;e;?>t7XMITL&md@Md=9QdicF)iS;?3_7UoB!f9DX?Aq&}1rwljjKRNtKN3 zwNb;V-8L0xc@t8FvYR!}Sn^7C|Hs8YDm#yTpm_W%0X(#Lv-wuJi*XfPeTSA2__5~J z_?B)k;3>XC^#HDWxC`QGG!Uebwn9&ngb}|JQpVn2L34TqdU_FU%jjB0cX9=h^fC^N z9$v!1pKxf%8&?)kUf;!i-nd_ht4-c&Jm8H7b)T+YSH+dMrfc!w0wTI!(X~d+nf-Jg z4V#y(!!5(};#4++XfR8awOJUY2W*DQI z$C1U`wESf8K3R@Y=RsUXidKM(E@6UJkf_J-4lNCn%rgRimGpfoE~;o&5fSWTmDIIu YCqn*!ztAY!8Q%LuI7wb2ln3d5083_}rT_o{ literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\210\230\354\227\264\355\216\270\354\247\221.class" new file mode 100644 index 0000000000000000000000000000000000000000..2e045ec6e5f880dc7b1fac971140ccb5a9c6fb31 GIT binary patch literal 2655 zcmb7F-&0dZ6#kY3ZW1n{!KgtHs9HgVXsy%|v=q=9L_tHb(Q3Vf3q(Q^lN$=Q)z;c- zt+lmQrCJ}HaVDMVi*?!{rPDv4e@GuX@Z6a`NWZ-ykO)3>GJCVT=bUf9^JDk?`Runp z0KAIt6%+_;KjaU1VtPCgjc8#{>+Hns*=tjOKfdjmy?1@)@sB$_Ggl{O?*1}+TO%4p`alQYTuJ!A21#1M{S(z^qOBzJi zwULb2j&&$k;LZz;e>`F6BP!OTLZCp>b7jcMV;2#;4!E#EhN((mUG1_eb-fOhp++jb zMDmMDnd9lAly6e887~XiNUUGRTVQo<-O_+KP>Zb!>I7CT2Fn*Q^g%tYVjH#-BBsR? zI`>F={xmb)*^v4aG-LykG(urdM$i)-)+3?wdfb6}?2vSKz5sxP>#<8^5t6VyqK_G- zt%639Hd&dl^kP`2FA2ke-LOmMud8SRQ?86^;iTR*AhYhv^>W@5Z!z}b4F#;p6}f;3 zLq!YTWTk5T{m-$>RI|74gad8Zub@3Yp=Ld)IDoepp&>0XB&*ykd7lkF0nsMy4yovr z_(l4;q!v!taD54VMl*tl4qe4R;p`uBd_>2{+wVU^7zTUkG7__yE zb(2YaYcdq(HL-!|5E~r`Vu$>MRGh^y-Oyq&Jwn5Zd^hrpy*7-{x>_1WrD05ic3$jDg+b=FJ}Nr^Q298xycFGP}-V=BhY>tsYT$2jl-K2q>u&hwEI85I{~ zwJR|htZ>AJk4d7so?BKeKFCL{Y?-%-4?|y^*M1??`Ogl^T=WpY&=X8Zf&8q`s4jQu zq_(WJ!yKKoiX=yP?8+Pid6A@6h+t8M*SRDBQaZ*l&hpHEpvPm`M|$&fh|M`D*~_<& zKqY=d3l1OFV&>zn;1b_qe>52n>IXuy1FXtzEDf@xPy+^yy$LAbjGcpDg)0yL1^)}T zPQv!HDR%HH#oRRR`vcNQ4fhSlyiONY- zcWz5#<5O(eYu%R;=ciF0kQov2bBlv@lbqu{$t{*P3j3HkL+v3U0S8 ztM?RprqEn~XaIOGp7-_tp#`zRB zEYZA3&5ZQ2MO0QidUi!-*9w{43#j7P1}C#w&Ky@U$J?3RM&_`E+3jF<{p@>Zuo?qw zqT~Gk6mCYU9Cz4uAE1JsRpK9ZR)K0!iW=d>Mp1!HqKY@W4qL}$7BEbe2MSydA}hxLL_aEV-;;u=r5%z7#pm+%?7Sz#68B0lHLLWDtF!Bw(v6sO3d zo7L7L{J6$h5junqUvj4K>2JYxd_~WKsKyQM*@^J`{Okel<7<4w2&8b6zizUT_4_Sn zDmj;CX1GN@vgR{r-x2LLcg9fq3{?usgqUNaawxcCE)@DEgo3@iFfLV!RxA}MXp`5C f6{f0cIkna;4^Z$gn&%i~YZfANUGMVz0!;h|QPzHf literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\225\224\355\230\270\353\254\2703.class" new file mode 100644 index 0000000000000000000000000000000000000000..734606e215fcb28575b37de77564388baf6a4388 GIT binary patch literal 2544 zcma)7OHfl+82(NYxXI=6Fc38gMMNtg8Yz}muv8GSk(V_VMEknH1p*<7$&Cg3un+p~ zvd%beI&?ad&eVl<5wOg3+0JxT*Uq%NE~<3hP94+l+$0bXXSz7|o^$^HeE;{q&iUox z4?hApj87HV1R8n*!@j5yi$}tG$k(}Y?dr;BxBt9()wgo}i~BdfZSvi}`sK>CrF%D) zniV(%%BJ*7x-X=MCwv1VQ^u$%Pl{r`;GXl+Ihh6T3PUFcn77BFMM@I;$r zqn?-@HKJxP5{@fy3zS=0!HCa4uqshdL4=&3Gci7H#Eh{shCXJ*6l@jn=4AeGG+`3m z&}TAY7q(-E0`I!O1m@zVF{5E8Dg|tko+m?2nq5O^Q{llAGDy_|+v_$}sUK8PjvA@7 zo8;G&GUn-`f;|G;Hu~O~2!_aBMJ-$sVV{ON)C)LCeN5&F+a-!DmF8aYRF_^v4x8W=-p?WPVh`b6_DVm-JA=7#Npz;m`Ln z>q%P?j-gXQhd@a_&$y}KIJ#KL`q2;|asc?7FyRotL;{5|^H>W0VWd zV;RXlnb0taAT2}^(!y%JpJuaWn~Kb*F{2=q*Qj}74Piu>-l#kgl6{pQmK+Ir2kEg1 z-X-OmTng;Skr?}J)%^N?=apiMGYsCxxen&uNHd%}U5v=4aHo!P=Zo|lyUB$WQ&BcU!ZO&AbOTjKD-Ri@GWdxMAag8^)91!coBR1 z9PLR_vpIBGb$I1Y07IoiC%?w%C-uH$49 z=eRg+E&7w_;o^+7C`_U~N1#ProfX+zN|Gp?FA<&+Ptij9pCq=e3RMcZt$q#ryi<6b z9%Ugt(da&#!eCVj=iRSxGGsBXX!I6%oVW3s4JnKcS=wdlLi*mkT~w8+-#q;N7RDP> zn3BnGKqe#1*9UOI&EW4~N~)QXIwqruA#Z0Qx|oC^{&iGfitkVqTk!^)^k-_{;n};W z#66z+i!J{*pBNiFLPLY7#D1}x@53SfTTvvA^GP^GRGIV}#AG^&b&)H#ID#1BO!p4a z1QQ7sK&9A+O9(L3b;3=10kUlpF3e(%#n6rixQsVhNFCUPw5JB=&B-mxa+8G(=awc(Th0Ento{Qv*} literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\235\264\354\247\204\354\210\230\355\221\234\355\230\204.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2501/\354\235\264\354\247\204\354\210\230\355\221\234\355\230\204.class" new file mode 100644 index 0000000000000000000000000000000000000000..e2eec02124763780a2e105ef0e70a479a0bdaa8c GIT binary patch literal 1611 zcmb7EU2hvj6g^|FJbnvj-2YPWT^;lt3n4JDpS0Uw!i(p zy}8bzFdVvLd}`=b!&=t!r8}bRGK4Rhmg!D21QW?62IY!f5h{Wh&=5kH;b6|R#C&75 zB%DQ~R22--oLx4mONL|0_1>o9eqz=crgHz2R)#{Z8m7f?BylU(qgQYp(^}3*O6t|M zvZ%SHZPhuV3^C8kwDoMhYvC9qgpOgRar?G#L}fu372$9kVHoPzvR19(61p%}ee(d0 zVVGm+33Upe)m^cw;W$PZ0+L?bCnv-95Hc#_ct$EU#&9gr*Cn~6B8HRF=~*J*bMnJe ziqig^hUYQC5Fug}DLKPnBDr4>6$zZ?NHQGmiIufnu`C=7XK4w-EWoGpjU8Gsxj78a3a6{s(9^fTwYgKn~GdAn)13#oqG)vSimVb)Se9_u|YofG3n{C;Ae^g76~bed$@@uQeqhE zcn9y2HY4~7MVbW()5LqYMM|ad5#Fc05aHj%2Q&*)lsSAzGfp;H3gr>TIAV^5KA2*1;^Lq*}f7Jc}>+H;2`4SP!Q?p z;8-Wo!5`pHk>oFkH?iRAaPK+ya5(qA_xb()0bmPDCUOibht3H^Q_))tj-H4%}0#9Bsumj>+b-JXjHvW@XXE1zu zN`B)q)E+~%@fYtzS_K`l6t`8Nq8*0(+IowudvuG1Jjym~%rcZ3Dv-^=SzGF3(e`B; z6S~5039Zt3A{tRw^%*QD9B5bWtJGMDpYG$)b$m0Thi<03u?$*7Ut>@eP^1o+n96W^ sf)-|IW>j6OX7!eCY zCB(#p7%~*m2*H4u`BU2FUqF1{Ibwi?!S}uU?%jLuJOBLk?K^<$xKxHAaQR;F(A!h_ zAnVJ-yET2gKYjJ}=wRQQzI%Og@bQ`#WJxDhc^Q_#VoyGoULyNXyq&P8qM?A9`ga6` zFHlN%l}rWfG>EcX5x5ceputD7MSbGL6;-xAT)xl zo{eNeDl3iF-=l6f9}z7Jd+h(up}>4Fl+n}sa&MNW8f2q9Qg>rcymtKg&B@F0(cz2Z z59855@pSpyqB&aN6CR zVCfU}4Xn_*pl>}Uro<9LtWwV{?%@p1(vB3gpU{XM4UO2-B(F7`n>l(^nN@NRQ5zE| zENtCWTG}ZHGiiZ!Y*2^e?hu=W>wNjj4+tvnQL@G+E15cMp%iPS)q?#eWF4D0Pg)l= MTPzaXB52^^Z|uy9H~;_u literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\352\263\265\355\206\265\354\241\260\354\203\201.class" new file mode 100644 index 0000000000000000000000000000000000000000..ef85e96408ab6cfd900e3f5345f37cde5d30ce55 GIT binary patch literal 1450 zcmb7EU2_vv7=BKYcAM=2ZGlojV5xj0wPY0mp$SDkT3tz7AP|Rob($R0g=BZ<b8+*Bdz;^_zgWBHY~KHVW9^p{&Wm3kZGQV`v2 z+uW&hzve8h+!htZFi?{`TxHl%jBG9C)tv<%<{8o@ujX^rl7hi~-CEcZBOupTq9$ZM z=27&T>TNEw`B}m>LN0}`nhb*l&-c_ULo$;sGo&sBRbe8D?G{W7Yfhdo7F&%KA#d=N zI`J4Q1{Gc}bLnZht4yg?kI-_(|5Fbll4@|zXBf|X8B3?6r03W2nvXfxsfbW{f!{Q+ zhhb+_Aun*;rB@aM?-0*^S?8n-2La)v>lpV@|s5hE3wwW&7 z^%d{fLI>GoQ^6hK+mpG;X*+L=PDmXRRWlv5lwIMzA1Hf8*gaI!#02*1QXOE}oq2l> z$;H!M2b}bQqXRzc$sjq(v2p` z=t@JHXG~7gotBJFi##0qGWrfoJ;AmIQOFKDb$~uc=(M&RFp4pf(%6Yz^vrI$r^qrM z!A#NPI>P)N6Sv0pKEb=sNlKuPm5Zcl8>fceTYMQpW?lBWE1!U&N@D1 z_z|fGZ|F}kEc}e))9X0P$n)@HoG(1YrG2sBEugssz96kjo>v&|zx-Qgmy8%4h>CLx zdvKaI=?u-nS(K?S%XF`x5HTGmX2c7NSfcMa?8jBQF z+4JciAASsA6<$^061Zk-bU2tX?QGgIlEJR?FC9OB^n>rt9uJ;BdF+R?r&k8QKljWJ zht7QW-h*phwCK?)Ypf%Wi=>iLqmQcjsWwuIRSj?nuvov}C|}RXc+{oqba6 zVIET5)e{}8HunnX`K&A{na?HCmO!ZYzf>uG!|Ax$&ICJR$%K{2Z4ht=T89J_xuIgA zz^eZPsi6UlI+{=~;O%gbYawu%js>`wRrV$LlpUo8 zHyW8qZY+@%SoxnylLKT~ZadGeGzNN|F(%T%uKe!ZrftRtOe1dE?X5cnw4Qx2Gb8(# zRS^(aFf;P$9Sv=`O2u-4`q`0mtiaW5qfJ~{o500^)>2f5Jkgw;utwW8T!WP=t`(R+ z6D4Bh%u&B4gNDlR5!^IqzzO)`*Ibz(U8JQ%?p<(1Yo{rj@wIv}U`j3sOq>kULA z5ed+M%{sP#=R(=->?nbKvnosWYcp~PL>iKXJKHJUSGd;5$`ndFM3 zB{>whb+-1a7^@7HOpREXe2%kaDkZYkVh@rk_WtFg6y2ZAnJFD95Z5Ka{nO2;LLl)* zk&$#@ZVfZXq1r?ap$%DS#GWmfF{+#u?hB0TxB^$oT=wbMk9$~ZIxo389dUi8a&AD_bVGU2 z^j~;UT`l{IW)4SQ7Ah`<2VP1lB^PQa*H+0IWnY!7Q=U^L&!s%CO1_Bl{3^MQGQZ)( zR*3CKJtJL0X*pxbKi?!8h9_|8IV^gIq6>@pmg#^n&5njIj=SO*-bbTGQ)ObNsbun7!L+|50`hSma1Pv~Unhs9%Zz|F?5;L%0gVyuofm5OH2n zDO`(jcH$tfq{F-vjv+)oufYpgi&I#K0@`sF9XQ9k;v?LEPp}c6^M?2mVSLSt;al|J zM{L5+*o)5BY?9XQQW{m5*SV5jOG}CfRDQi5B7FN8A1P+k=$1&2~@thP~HNywKOz=c=- E1YcCYumAu6 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode$soldier.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode$soldier.class" new file mode 100644 index 0000000000000000000000000000000000000000..5df1fa48639acc0626062c0f2ed6d08db6e6b568 GIT binary patch literal 1182 zcmbV~&u-H|5XQev96NChO$!u4p_Dd2>Pi@)2nkW;02Pu&pi)yRdUVoNapgbAPBGBN=zeJ+?K zq&z)71v##cyc`#hSmFfAWu6A@HTuS2kp2{Tb<*X?>gM7;PMcp*{!F_Z&d{oo23W>f zT3JsjoWm4Zf%CYKMzF~8S;5>xrBBZB%l5I$g@2c)aVfprNYkt4^gb&8Q|k#-lS+A< zM3_qUY8rvjxJXWXITK`N7-S_AWHuXQW*B6Z(zQ+i;Vv`C)l87NVUVYpAk}P;xnYoJ a1hR1g2#;A%pROe{xQ-iS^#rX36Zj38{{sR5 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\353\263\221\354\202\254\352\264\200\353\246\254userCode.class" new file mode 100644 index 0000000000000000000000000000000000000000..438ce4854e835c9334be9f545e566747bdac1d64 GIT binary patch literal 2158 zcma)6Nl#l>6#lOLjKO}CAq=sZ6Oz~jQ6+~&Is#16T1zlAA0ZI4?E&a~*!v=&zW%=EAhjY$1ocsRx_m^J* z#PE?9E``|LH{`~b1 z&q@V5Ka*Rxy)YCSA6O5qXxhr&k1no0u-A$TwaHw1J;h`S4RdZ!3%)-yNSj3x$(7KFLHi=m+WC9d zYMSMm=W=USddbSCWbP~)#f=n!j-FZjGzAF55ENdtC^S{6-mwZBr0c^u)Yn0w-Gm1< zJiL(--Zh~_A`xElqC?@z|K#jL5M4qo;71Soyy#V^uU2F=6Blria#-u@3az2CwnvPK zhgZ0pNz5v!gn}n?&$coIlS!`S1eNir24{o_O=?^zHQz!{t=~}!eQZZJZ@z*{dXl4;GZ$(( z@^-?D{KedH}ZC4h@);L~*88_~oW&94NHv4os62VUab@-A9;&{oai zV>z&hpBbuoOdRGpj{u_ugvELW$JT*uw7o=dxudgd7oB_PcH!fb2^-Nu2$FE19ONWq zxU`lA)GEg5@~z^mh8aTGDfcaRq}+&<+rxmu!WQ}>dl*vq4Z-=rZNxghLxXG&?qO6w zaQ9t>CkKBC95+OxAW;KtXy>m7=Lsi>tDMKst>N`*14b(FMjUwUBrt(Vf|z1_Gh7F# zhe2D!qbSftnD61H19pe!JUkbxfE_co&>b)i;VwkVaQ%_a9ZYYbUbZyWzfWSlK*cYz zHTtzYVSY$%Aaq2^SOsgWB4tbq=wf7}M(x(9d*D8x2p&Q0zz!a;t=#1WX_MIsg?}i7 zP*^!eVfHwMTU30QRHi#WseKB6q*jyZDX$pcbHymri8fFHB~A|yIQ zL!u;kjnId2i*JkETgK=S(km6xD_Rz5=oP%L`zOGYVpW;+2#k}Y52#aF1TTWxy(W?2 zs4kS^4ib)=ztc_Wnkn~$d$KBrXAAuS&!MAZM!*muo}xisVv~A0AqTXte|9}%igFWn z>w7)MevY&4#%b0BnNN~woNqTZ&zM$!s={;1;pyUu4>V7SzN_y^H*b+JHnhzx(wxnx Z(XKi^_maXK>$@%5L_z#3ezGVOa literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\230\201\354\244\200\354\235\264\354\235\230\354\247\204\354\247\234BFS.class" new file mode 100644 index 0000000000000000000000000000000000000000..56e79d5ad41f67fa4bea7df0f887550727f05e20 GIT binary patch literal 3484 zcmbVOTXYlG72VgCJkof;#2~-{oCm?!0V9IJp@`Dh0TLy~hS)VV^ubsj+XJ$sNF!sX zZJM-hLmqvX)FGj58WN{zn-WN58>Q*{mA)JP`_rz~)tcXaWUa>CXC&DYR)4y*G;`;k zd(YYDweNlVy(@14*omteDin6z-`y8XSjkj8W=4bU*Cx+idt&yV7taQ-oqKBT;>$aN zbCZwGU3g^f{Ofb)C+DUn=BA!&KiI9oqp;$nIcf%@W^5?f)qm28I11jOq?s62sOfNJ zX~&KR51EOOg1_4yikVJ2X(@zDrF(OquA*?vv4*T5N%n!%^7oa)S+Jdzeyp`SPqYl zTd+~XttC0_9#1*eh=JR%iHS{FPM8j@&F>eai(u%IhRt-h0Jc3nIA|rUfd?#ez)EUp zQm8A)iuUEiep=sRU@MxLM2T7;hw(ZaIvNoaH#X^Lz#TH$!N4s7%4u`4>@0)jXp(h8 zEUgMR7O-@sorQ?zDnTOVueJaqXi$3 zRd8=|wY|wz>wT?!(3S3SF&%Et)HJS9x19X^u;O>*zyGH9mrmY51tZG8cY9q#;r$LRWDv)IIT2R?L1#g58gLc?=pDl3@E|)|lgp z1($8$Bu){;kVOy;Wk8fQIij$9(HHTw8d1azB=8`WnFHjll04+WHXYMI{#muS*A3Nv z>%lbXEGe-X#h8ZEWVFRKN77c>GB7T>y>aP4S@v-QpTH+cNr`wgdVS^O?MW6tW#AD! z$`WCb_evrOu(2tu<1_fIhKW*caG6Zf{yA}=B-weElj^Pa;c*3Zvy7iK@Dx5zhBgxk zD@MPYi-VZoR2;;TUSPkq;fn^ou$k)Q zoEx`e68Z}UUUVgP>cB|C85g`$240qvNONIDV?MmX5N#Cyz9%92zQX!)0nL*_$cGO=ey<@P;V&4o1_dVVRjWFyqcdqVW_{>M@f;tgMw~&Ly&MKSQ#1 zfqhF^oTpkvKMQWDJWpqor~27rONgleow$4W4-I4<&0vP35bU^Q~UWqOPxY-844L;N~nE z`m$*3y96rVHjV8aS+sCw7iaFAMra!Q4rS5SH;ubHw`8z?2KTmlJgwd-bzkALDvM6a z4`0TSK$Yjjo1V+)_OxnKSa*pt+6+FJMIRR&pT&nOadbjc0WDBSu*8O6_WHSZ7Q+?zF`@yV`w^?42A>M}M8nlAl2q*M@zwb}t~gEcC7Sp2 zRJQu3FjnWA#Y2kw!x=o>s?#TNCZNyY)6;mY_Dlv(WblOyzC7VqVv&Lci?euIVUIC| z#yVpb=N7b7(?FoQBl`33xO3u4^&i zm(i=7J38T20dK%_;k`GuHoHJBZq48_{~5`%2a@Nfv58NEzh$V$a%@Kpb~Ed3%=SIZ z^kL@u7;_!LTG+hQJl&3G4$ zY8CHdYjC@|3tLneTU9T|C(xiyV!KM<4)r8z)miLR=dnvY&%4r#E&`A^Yowwuiz~!f zug)NgH(7Dp)hK?5w^)O_RSZ9({Ytbc3qQe6>D7L91V7`*i^D2}pL0}&L8AKwM;dYe z8^6S_IGV%`cg{y2*5TKb`su+8enVe;#Qy?*>(0H)-M`~VC;rv=JxA5}gBvrIU;jt0 z{}X3kfj-ZmRcZLMh6W8S8ey?@{)1bTS~Jh+`AbDg1IY`U=NTw{sYnCa1oJq6W#xs^ a+s^{G%}ZyOUn2XPmqKC`|3btSc;~;$Xq=e< literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2502/\354\244\221\354\234\204\354\210\234\355\232\214.class" new file mode 100644 index 0000000000000000000000000000000000000000..9ebc1e72f3f9cec5d86d9e262750ea0c105f7418 GIT binary patch literal 2405 zcmah~U2_vv7=BKhWRrC(PzX?{7)pT_+J?`H1+5ecR!WPc6ay-3)6=q$?#9ig4fw59 z0a3vjW*mk~X7Iup5oQvwqmCC|$b~ol3#a@5FBG4%X=t(SFqzGsbKZ~hywCfw_y7Iz zX8_x9Swn?D(}6@Xo{?_WvCVY6-(!r%ih}-aBwwraXb5?F`DS!209ePjc5o&7A__QR#XzuZ$KS@1FLU@LbCt zrb1|!Wn12h0+kJo{Q`kKw9`?EDgzPd0t>n=TlVBe2Bh0(4y2_(b+?l;)BUDvsr}Sp zz&mB}j+Q6lni(dq4~&?WEwHp<4sZ&O-kDFyjAuD^R>M*T;fG*3@vh!S5)I1*mX!tj zthDU1GdYhTN^>NP6#{FsZYn+>W0q2G@$#OIWvEqQKO+!rm`zq=zm8|IT0`uy)Ls&c=QXYZ-1CY)5WrNV;t|X4| z_C^C6uu-5wu@)_1{NEiq)}dL2u|`Kd;%c>t#7zS#dGoPsnFGsF*YXsWZ2~LGSbB5b zBSuSd1*X-&bJ)SsadIrqX*7peTT}G!)Ug$93Imf}GmT-ULn6_!880X;7UB$~rK^0T zFO^g5H$laQ((tmtB0oUiWtZ*A zVd)xp1qbLNW4c+^k&0`sQlR-kf%^Gss@&A73nLKdH4sEd!>f;1j^Bhzo-m*xtl>yG z|2fY}$4gQ6IcKD8ol|l4p;rC9W+18JjMy^o`Qk8+3kW8>9d8(T6DQc%W+o%;L4oGE z@XsP;ic99J9j0TicRG`ZD2&T zTyRVko;q<1WYp{l4yAM1Q|g3i$@(X$w3B681ExF7aZ@qiveh1S!QAH>^#wCG)BepBEPI^=h#!}8m#!8!NLdG(# z!-+i77Skh%v$kjEV^Z0~DDqSh#p+(HYl?N|Gqlbs1DVh8yFxGK5L-T`W_U?c*Kq;0 z9KQ)C=cc5Zsce>+v%5tB!)n%UCBJeN2&)3;Dy#~b?@CJe0pb5s+{O78d^j9UKm{YB$j|fxe_tE26(GToW$fsIrgvt2X^M4o9^bJu$9{s1^;~c=%^?^|1n8 zj|K}kS)JmlvH*E>JSd{UXyC@fD^1M>oGRcs_vby!!;+<0^z7BV~jKHpD>mf0uKqDWA9T9^%^#7Xcw%4e^4hx!{3Zj$7i%DmBH7XjS*gh-j0|ixnR%Hd zc8mhLk_VyyNb>@DoD6&n{6G<{9 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S2930_\355\236\231.class" new file mode 100644 index 0000000000000000000000000000000000000000..343fe68780fbaae6584b95a73183e75c1fbad030 GIT binary patch literal 2669 zcma)8T~JhI7=FHGm$SPZK*0r3Qw&XzpA{5RP%8Xu6-9+0{K*b*fW_sUb@wcYmHpA5 zTG@}KR+eQ$Gu@aMi^+^L&3M&KO*hSS+g-(77hN>c^PSygS;3iR_B-c0-}`;<`@GNl zzTdk)-n)GVz$SdHz#&kvx4qjR)+15V&_e!}=}Q-<&wl^Mjf?*2E9d{Z@y$kmd)=0e z8;(z3y{y0~uxLmd(flFJ81T3C4C%d=K=#(45ww~GvdSwu1)ST>KHZBfcvQHMEs)fqJlLGfbWU~EeZY+fn_Q1Z82*WeL^nLm#e72ddAL-F_dYb2S{Pk zRRUd$Dv6<*T%<9~RY)XWl)*1|ZOA~HFl8gH6DYRP*y)pqQcEltBF|pb!XtgHSJ8k+ z1>7XLPbQAQlJbiA!S!MbniMn&EKaKo7?wVuM^tRZHmV3~k*Ll!`jtdI$8b|cK*3`v zL@_HE^3!LN#El({=`m*T6WFexg@7-%@b_%EweT2oMw?*iMjAIgO za{DkbXqFivht1e6*?BU};r)9mI^EbKAj%{gtt$3mKdVa%hjpV*pn4%6<`I+RllE$H zK&m(>u%bLLpTX2dH`-~kRKZiJM7LojqSIlX(2d|}8J`YxN%&7cfJ}zJ1BX={k-_sA z`YFpk>%}n~SMW?`f!Ot_;#p{n(x4U{lvjp*e+1m&XPMqhYEDOZ6^O7QBoP6DJC0ixQ0P z91dG!Hlo8)GNNJ>r+D3jnE>}^WD<#F{Iq2Jx%*<3Li)g1x$y!$@Ja~TBUG769O z1taQ^2bU*oER>NFrWuyKBwhar$|!Lfc0v_p_L;G8s@K%a(VJm>>l|&VWND_t+;&Ur zJ+V&<+s#VBIkuK|GZyL9cLilf%bV?zH4+Y1gUQ1#3phAq8{|{rm!EIJw`=_*+~3(^ zFP~B@pE-Q0i4A<`^2>ufzD7dgu&x;yxYGldv$;$vKb8v}e_=9-6CU%(Z7LhsIC1fSwF zTE9#Gu2Pzd&uLrcRN~|pJb8^PN0Bo_=d%@jsi06nnSxruB%C33Z|0&93i$7iuGTB) cP;iVtRV`lR`3KpK8S*zz39Wra8xCCm4=R|P(f|Me literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S3282_01Knapsack.class" "b/build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2503/S3282_01Knapsack.class" new file mode 100644 index 0000000000000000000000000000000000000000..53e46f62a380eaa1958cae269ed69270cded5163 GIT binary patch literal 2260 zcmb7F-%}e^6#j15WRvaE7TUBxe_K>iAfZs8mWoR0k4PYGgQbYJEM$R&u!+g0&{pd& zd~qD#>Nr05VrTG0r_!0wilZ~m^hFgu0eLzq$PJy}xeX3@v~0$=|oXZVAO&nvXVL zZaUm!8>x&jI;BDp*g9!kF+vH$9uGxFCe2YtK=knm^XU=r7 z$aCDXEvJ*)y1)ei8O5*_WLjG1L9VNWv7Tj3h^m#04X5$$e3& zI1?6qHb?$1^bX!RZCJLzj=G^pDTJ7lw(Ri^iAg&-J8GsJD`{s`R0(X$TUp6aIJ$bG zqJ|z;4!W{qV`kcnpEr%TnO3n|pnByjY^Smgy_?2#;n;`0*so&WnheISW|$=%2k?x5 zOTzOPz{zV%9y&DaLaj{IvjSCh8=3?zXsE{X(x{H$OGbt38KR0q8-O23lPH335U5!J zAI&4BL)5 zZl-l~;RIczjC97Nj&T)HKXGwKAgto#3b|RwN`wlC`jbHLE>H$*j&QiYd8}+25^yFOdGT8 zwYqRP5ccAA_TWL8pEq>8iA%B@Qz_Gq3p8#N)w)y_GfWoSF)Upe0=w(N>vOtd=*1|n z-0uZ*F9^0B<2oktq&Ue!jwIKUI;Lc5+%vM+q=q$b%f5GyC9;_bsY&U0E3X+%Br|lU z80m4g`nC`199+b6ktGDEsi&rK5r-FXq<0DJgNt~fuRe!kchT9V zC~fX}QL}{ZL8)5AsbijMPYz)o-a(`!_AMZy47=~+tm_WWea@nF$waQH4_(RujSSx4u5!tW#0TaV{USAN!5Ihezc-<`wd$`MM{DxoyfEGRW` zY6j-q!teGgw;ui3(3rzm4pu`B2|h{5RT(5#SFnd~o&1!e7MsyPZ7Z4UpymuYi;=NQ zSjP$Km`F_TfJE<2M%4AN-prs1-Z-w>f~lq5<_HiV87^ zMqwZ*OoW7mrhIK&UlOb+6o_R*P#E{swT|3yJ;&QoMs4<8o@5GW2Lt2Ie zg(0?FsHMO#DI<;qS5q>QNH8cB+qDkb=Z57U>xN^Ip^9hfPEGf1p8pla;M8t0OV literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/Practice/Person.class b/build/classes/KSY/personal/Practice/Person.class new file mode 100644 index 0000000000000000000000000000000000000000..384dfdcccd88d731c76dd5dd59446ba1e2aceb50 GIT binary patch literal 387 zcmaJ+%Syvg5IvKoX^pWjpJ0(L+b)cPFHqbFLa=C|T5u&d@ltPziKMCMN4WPFT)HTt z3qQbL(QgpvM%OORFz3wc%*XfJJAe%=6<`qRN4<0RMkb>;5~15oM3AaLy4_4Ez$8?L z;#Rn!hz9P7Ka@dApgV@gxF=Y9DpKh_A>Z`8R-a%V#Fx@W4vvE&W(c`vt3L%o*+Cwb z&Z-UyuvqD+NFI-`eVLpJKa_-8Ck{l|7m3pRPc+jjH6pBZ{`0y^uzT@13FM*Do2tF- z&8?k_&xfb4*T+@;0~&lf$G;m4cES7%g5dNOC_S&xd7iaU+AD|=!y9sfVhR`H!frO@*+DVAh6ccE(wl~S9_S&r1 z5PHrTPDn)vBt)cMX@%klOB|4TL7X_knFCP79hHV}cjGuwjfAwjZ{EzjneTlw@9htd zzx@ut5LRS(1fo|{=~ziK%SA)Y$7W15Yw1}nmKqp1J9Pf$!_U9@TVKnN z1dgn#@2j!AYAna5GpkzG67XHn4c)pV&=QHx3rG{ioEAh20wH+e6F8jE4Q;AY$Y|!A zn#pSdt%+h*&Cjc*ZqIj=lC`3j1$qOLRVnFizP{&k}sY$xY8K z%IIkV{<^7KHu&cRj@7|WSFBz1uH8l-2_cFztX;9fQZ|6jkiwm<66k64*%)3R7Yz)1 z0}@FP-H6#Q#nWn1v(rwPW!l38n5Vi@*Knf0y18#lU=d&e9ZNjE8fx!{kH8B z#!Dfb$B2NRHOSe0CD0a$K3V%9`+Lj=bAg-MfxIWH19u3QLU`GZ7BI9m%gGbOtC)~6 zE^xGgG;UbhvSx-ZwMS}1WT&cN(c!g=~GbG z1iX=WJWAhbyeVU5PmAs;K?t)*3CJb8DtUI46p1@$O*NN!X2MOnpRJcM*;u=MwZE}> zc08F6n%Q>>MteEKay-H9PQ~m1WpZ%bb!b*Fx`-*halYKHRM5>LMV;@ez`>NIW^X0c zl5_rLT;pj?6)R>|o7C+~qO-{r)Nk{MQy_P|!T=8?-ZA{joW(c_j@~m>`0qL9AiuU5 z@Z$i#A=iQ9LCyj=gu@JSgtA1-Q9F#MgTD5<$2El0H7M!(=&0gk70)DU=%(g0HP2Vk zTSb4ehJkby=cZ~HO80JJxQfwHsY}|##Vx!t?A?`oidR}xeA40rOnOFTY1n@k=k_g< zh68ue-X$ykK_yUMH@zMZN5b5mUI9aMb%o0zisYjJp(MH}S=)uo; z3u)G+4?p2;#&2Q12Y3hXvPu)E;RbH9>`C0iA|)R^z9NDvtlkZbB14@Y?=fqZQUISZ zgRA?JC)m~Hm@x+bHka|*(PV^Wbjui!F(ibHNp{R5{x4ep=3nd)ykdj`p)GNl2h0Bg Dmo2~q literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S11723_\354\247\221\355\225\251.class" "b/build/classes/KSY/personal/Practice/S11723_\354\247\221\355\225\251.class" new file mode 100644 index 0000000000000000000000000000000000000000..82e5d58d99e1100ee44165d08716e811a29dc6e6 GIT binary patch literal 2845 zcma)7+jA3T6#tzz$tLMSp`}2$DA)oiZHeVlY*VVGfCO4vNbLng+$P(0X_|y&Q(7)w zi^@eRC-fMpBcu54KfsG4FOCn6<517H+oX-8j+x1Rd%kn_e7|$f z@0{<)C*OPrU?aYekVh!p?eF$P)mS_dRzjY(m=e&nfa>vAS8raw;m~i%3y&||lwcvu zJFE;To{$pm^R)IHRs%Z0R zM1m_TBmR-Nt`5prie-d60k6aaCyt%=;B}$|&xq_iOIYmAX;R+dL@`zhqvsg>w2^r{ zhbW;e2l&pIrVH?^2}{!8TN8Q)y{Q-I-7?Ctma7&?a1p10ws8ulLS>+Sx}LDeKw}WctkTwm7UDcRQ4NQLO@#S|MMBp?o}Eg(->>RU z=BGpC;RPABs3X|906{?~!UA{s(}j1U9t{$9GN6XFV*+m@wuxZ3&*Fg7(TJC2>=b|c`Rr)p-ioP%ks)rUUDzkXk9OWtk0g{3cS;s~vl+eR`|V)z z+w@3ZUr4p1i+w4##*N50W)Mn`m?sMk zpOA4xtQkkeIM%gHpt^e; z8}>|KBd;}emWmWM--WlvnqOl}l0JdPZm~6vraH+brLd#U?y`5+IaBc6;$!)oef+RJ z*!AZquk{ZbCfa%RfrhX1+5s97YruNrk)7A5_5P_AUQfE5MXf39y@tz4l394g5N;$f z$wH?gR3-5{3*ClrKZ!>y97t<^Vd0=5{E);?1~7rz;j)xC?&8or1oF_C#O)lKzC2vT z{3=Tdhl|1~MA__2RsIa=M2?T*hP$2|8pB<2=3LXTHY1xj$}KeoNeC-j2Hj`@l@wUN zntYsu(`C7b1Yy)hCAJdl^(SX5t5O(F;do^VZ}9(ZK?e&29WL|bB}!k!QW=w?l8e2G ziO|4Q*v3@Y%QWc10{n`F_ydcGTaheSLUXZ{mh%nn#&W8_GgN~WRLi$;6H2L#FI_)h zt_QJ(LU7Xv%IO5(qNhBx!CB`2Cc1)i_>iM&pfQ}s7}K_qj^iVKvtchO zxPXgH=q}oikMRlY9L+pjVy%N?shE0e%IqEF{xP*5`W0X&oznFvl^0NILR&g->%q+dsdUQ elfqdoOgw+XN`-&HKFLYT6_FS*pK;K6`1~K~-<)ay literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.class" "b/build/classes/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.class" new file mode 100644 index 0000000000000000000000000000000000000000..7a529ba815a8972d7a59fcf3eadc9682ef96eb45 GIT binary patch literal 1565 zcmb7^-EJFI5Xb+=-t9VO`(?*XThf$}2JF^}>yo&DOP~o2xOF~=OM)pB*7ixd#a^5B zx`7u!TyTvl1QO~+Df4lYh&*!(ky8GLA zUv7PR*MKH)wdqEwxa(Ez6$3flIbyds70zcw$*Vo2gf17(w)z&~ZTEaNc(0 ze5+QH?scnFl>(7`y=+yNE!S4-?xyD5vYP@E`TtLrrPrEeI|9ezH}XBgg6G=KT2@ho zuY6RN4bQGSO#=~usIO($Q@Mp5iGhAv*cME;R#&AfD@)R3BM zr_^!J5DlE!2Y$u1Jq7=az{zd+g_gHN-;pc&xQPVL@)GMU-f0hXktytkO3+ax6~h>F z(PMbrAW6a)K}u5M$dnR*^C)cEF;u2n>iH7AiCHELtm-;cs*+fn`ec8k-xXfy{8V%`G z1P0@|z3#e{%tRV9CSLUky?Q4E75J=)*YLW4zOFL=FAn__T{Uq{wTHf1Z8dMHvvVfq z{he~P-sD-$a@W`q(S1sq^;B|MEjz`syIR>0fztYZ^6o8A-YoGF_vCXsKmjq&FQ*dX zG}k4a9V~cO`GYyD;Ww;-MRrx8-g3)w)>d6T{9lj9xVjt+g9XM{2ncY-*MWb7s}x7U zQ9s*8=zCur=3j|{5T4-Q>?m+N$W;V_LH;asESs4^qQeUreQO+<^Eh!uapKpUsp zcq+e%5$=p~=h-&SwJ|=oiFC1z=jP9CVB$wSpV4C47cj?y8<<*ofYD$^e}G6#k7=Rm z`x$>wDxrIi{uqntN+~(Ef$0rgNp2v=FR!?RP~1~w1F0jVJwx6k*OO$O;m#~;JBNNO zvFYF9{3Zq<`9#z(h!1fJEe!ebPBD5$f(0ycjG%%yct+6P5(>D^*ps-5H?d5gleml( sTGMF#G>V+*c$=q&pgp2f-M|e4Q3E3e(#+^z(8ZxY{fxdttpMKr2bN8Uw*UYD literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.class" "b/build/classes/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.class" new file mode 100644 index 0000000000000000000000000000000000000000..5958a56cb8a923288af69a1c6ac9673061b3218a GIT binary patch literal 2736 zcmb7GTXPge6#ja5W+xejgj^QLO$8A*K(as}To%JsbR{IA53MY&z$aa`ke24eR_ZX z``hmTtineILIO*7r267{r{LwXb|${7V5faI?Zi_n)~sEA@apGhu73K>)lbj=`SmAP zUp;R?6PR$5-oKw;+S5)UCs2{kd9Lpsb0}t= zA-gPYNN3!v>vwT=taUF}Z_N!lm7sqMm54~G)`A&G^%iC!B2eA!W}Tkm@PJd;V-IBL zvbH;ywljO}f-Aqv%E$)g+C&%)7Up3#-TQ}KPoS;)f25nB*|6~`t^1hqPdIs(is8g%lTs+x3Ib&dB7J&qA(HWmg1p9PQe*`*s%wlf`LwfhKadpcENNdcVBB^ z9o7qkB$&}40}0X;4ha*hu|cM=(nJTkq_mNEP6ZTrQ?YEGA(njw*O#$u6=0B8 z<<)r!h_j{WW(b>!9yG{YAGVOf9-a>JVNeoWpgz`mdznq_#iIuHvBWAtx*i<0kijrjc0TW92L+mA$=eev z2cJA1U~uy%d3@`6VA}`{9G_{vObpI@1H}73 z6Cn(QGvu+1O~Im>s=|H55rNq$-%cOhY3Eh*GjNjKBYoIOAKjeEr0ij)5>$lr5R6)+ znVZL|%H-XG$L=C<*1}tOo9!%>D;Cm@>>E5rGu{F1l6!17EH`fv9Tk#Hlqw{T)X46w zM)qzsvU78kD=o~XT@}CDILg1-;mfGzQ^Tk35)~mt`HraRS(vLd;1`>C*)+~k8tY3+ znE!8+3T0vi3($xrF04c|TIl!=${J_xlo5#YjL4womvJoU8^_&!wfB^8ZwX7Tpluu- zRITnC#hMZlCEV9Nj!o2Tp=MhN50 z%i2a!H-;m%*)iltQ9UKrP#l9dhGWad@D!hCB^Y6a-*(hcu0kEEaS!HT4Zk^jzS6Drb-WTFkyhe~S^!Yk<5$*!|)oyZo-N2g$It*+w(8FrpK&^p( zQTG>bd{c6f8%Un~M5mHH3BuO6vZ=kRQR2F|sZ$?8v<#)*-f{tY_^Z>pi0Vzv{TFZk zp@3|Z;&0klG!IZ&s0ey5->r1Mgjg(PJj-~yF5$J%$}1|aGVTht#5-!_=6IKqg|znaopHdCq};164v?hc2o@*Hl_;l0jO6C~zHcs#&`LtFfv1 z3O@K4+sa9P$r)hXP5yC|`$`%w=Cgui(E52)MlhFTkYe=+W{sjoiZz!SyG9Uek`UFm zM78Efh73|;f2S7J6gGdhP~G3vqR{zuiZbgJ-W`0e!g6$CEeo6=BwMkb*X0Jb)-Lp7 zGxqRie2m&OM~~kpNh*0vR|N@8f_7>Wv{Pl!b`xGnjxhG|L`tYM1yw!Fss*NL;5vU^ QO1$P=Q-}RSdJW;+KV~><_5c6? literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.class" "b/build/classes/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..38a1a70edec57b1aa08c1a1090a4d8b994c89250 GIT binary patch literal 2142 zcmb7ETWl0n82--gY-eY8)@{4pg>8WX<i5k*2RE>!*#wVYQPevYmu|D`{NVI-uw-*|!iIdFCIsf%L z-~XTg`@iph4WJuus&EOkpG=O%il$vE$TrfBl{RC^z5DmGxFm>KcI|4O_ti0tM7I3$=4GSp83K`P}H#8j{)CdF< zR^A*a=TfG9#z2ijZ7l^cuC03v%9ox!J z^h!9s&q9* z4x^h!uBz6s9*ruZtC&e%DLH0NM-w&(xFo!A6`V}F5~0_JFg8h+ng!Oku4&RX>_Z4! zq|sJ_Uoont=MhzGTLb)vZ8;MB4uQrc@PlP%8GThR(YNYo!!A~@P-Zb#fDVzu#iJ7F zc63M#o#bK#!=nL-#D^Bdq}85PNUNzTNcRe?tDvbgP_;@&%T|^=`_KhV#l9u7%Z`+hv(3z;`ybfsGQ}9Z5vlg zI{I;vU0W*HboaE5^|uXscp>HEk{k@`7{Uv@RYtLB<}(5tTKgV9-Xdu%Oc#>U569^<7BYokNQLKz56)6=(PLX7xY^Ti= zmKnN58d^ zkG4;vX9fokDp6$`PtD?)9?#P1dc0= zgo9zvorU?RcNQn8^eCBFT#IN8NaW)FDV)~gG*B`vHn@xT<+h+l?_1dM9LNFbt3-dwm#y{S#!g5K$##=yuF z7g98h(<2?7(|BlbPNqJIE&9C zf+E)8E&ks@6z`%D?{kXZ#s=KMMtp=#_!P~U#b(T5E576Y2S)sf5n+oqea*+7fR z3?n+@gF53AuQJRqKI%9LTJ^~X$G^l;-+XY!QSm#QwB-`UhwRz?-Ol&>ewY0G@3%hy zID(rJA%Wdzlc{*#_6j-I%Ere$E8{yEJDxn+(|c_4w~xR0{hK=yVSx>E)-@}hwcMHb zXnM}h_yY9!ir+3I6ZB9_SAXXnzB8K%>vCUx`dlA`iyQ{3l((~ThJoW{1_q0rGjrS z7}$z!0wD#@tbkM3u0`nAVPc0Or&VA}tfoo(xQ<5bQbxN8e$A+IJyVous{#I!=lBZz z3j!@G;75!8D*B3Ep^q78$9@(qS7Z&>fR2&EYN`af7aa;iC%IU|@Mu6H(Xj_{Wp(f| zq?M}zq=y8W0yIJ2RH`&obh6}GM>nD>*B%4CI4Yo#Y%G`oiI-Q(U-X@9yn^{cZr*mC z8w&LaoKz{l@{B7;$_bn{@Ty8F>e`Eb;HzU03FY^iKqQt(w2wzA88&bZBLZTPzl4&E z8F)RAEGd4H1}@+t2hGaoZFh>$V~MAksS?_+;S$5_RE{a-_@+Q-Ef$`lb|rxFylmjD zpc;OzlDaDLq=73chAnS~Q{7l&OgSTI zj}x#u0FO@~hdh+NUQ1u?Eb0qsR_U3EkOs0^pSN>)wRKu2p0QdgCFgz8v)p-Z5JsLz z(A!a0u#2`yo~enLlUcgJmW$D{)nViR;N+(aYGU9fe@yqwBOwwJ&yo zBgj1rg!smN$*1I3oTuO!*V1D@;n6~*&d&mbH49;Rla3KP0X z588_3%VkXUX?=jdH zF~i^Kef4#{@;;6(<3vj7%NXj@nza&6Da+{Uo8BBTJNtD@0+Sl?W4YL~mhS4QvS(32i_(fXvvT^RI` zfyZr4n3}rz&MJlv0t`)^%7#HpINvZ{!W)-X4Swn9EMcOAw>wI(_?uGH*FjP5a<7AA zHjwZ(QrHsUD*A442qNY{DeByMrbyQT9Gs@Dcq!!!|s?cKnDP_!X`AgR+0n zA|&>RbzI~-c*d|-9OU9Yf_>r`ce5(-CoC$9hZ)TBt3m8z2~KgV_|!^bY(o*(*hG^=$Hl|eahL}e4)gpFx2krZ zGU|28G@%o9#dnb?4nTj%WHpH;iAH81(al6|NW8<|JZ$_;kM6F}U;O`XB-D5562g1` E0bbPlWdHyG literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.class" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/SoonJonBu.class" new file mode 100644 index 0000000000000000000000000000000000000000..aed24f7f5ee84af96cdd402f6036811fa479cc8e GIT binary patch literal 2264 zcma)7&vR2%6#j1VlGmn>rlkdGU#f-Dk_JgYfr9;kv``FflR_W}MddYplvmQ1PJSqC z92VW_US%9bS#-mOE=v6|Zk_QTa9lgOL7l-Fch&ga`$Aeq7ABK-?>qOrbH498=e+#z z&)44pIEV_$=`W_fa5MzX!Fg`5G>lIN}hMYA;)#fBLe9}^PvN&rOFIcmATVVTSA!p^YR?(67HKSI(;gke=C;tc7L8e)>99Ljx zbY^lBbf#Q%-1$KXBXs&!&R!}z1-GPQmq45HateuLx_+XgQ=nBHRLV|1k;z%EYZn_4 z!HYV&p3x(7yHvIp4ZMVI3LsPO@Dj_AQWoa6t;N9*I=)*n% z-L-F(lP-m%e$-X7iu2T=?K!-dxRm3O7j-LS3eq%f7Z)pKOHyX3qRC``wh;me13H3| z(;)+|;8o@+$RcjSpQdO};maqE7zm*;gaI7aaqOuID&5Iq(YjqS@EVx0pMQeJg2CUaoLK-vBAR!5yHt;eINZT0$0R%}W zC&kmQ=dF3RsUxs0Q?_z9r>vz~XZcgp(~?cfKpN9@EftDMT&1UUx@6!Y4)DBGw&dfCIwtwe7`TeJXje2CJ*uJ(;~mM5{V$gIThKlD za|Uc&ml)o&XxE8B7K$D>X=I1d7|IkX#hg9v$XRKwPiR~=Ds~f!pR=t|5Yp$aLDpBT zlt`_to?1x)2K~43F2PlB4a6Ry`5`wxwD1~KMjfr(OIJEzJKDH5q8&TvwUc{|CoiZl z3rw!jvhy2sTwaCw2)ifuuVL@7yo_wd-LAa05kNEZgc+$-<%oGtBZ_`TY2r7A{fyp1 zB$AGgo|J_S{ z3Ef5`@pPwlP1^6Q5WMfE3%(y!RZ*ytcnomtz+w4HO=fli8SVlO8qjxHRh zWenX4eYb}JZxEmSoI;X2wm)&6Rp=*Z4I$9J!PjZ1-A4|S^%9&TJNY4u(REBI3fxEv z%5v^*^^Z+#o`OA$+RKXc5z#({LB^0-{18EgXHV87`n)F5!1E+BDN)BWx&Vts z`E@h%9<~%%7oC-9V-4EbJRLZQ9vtFb0!R7B(n=3cje)uv19-EhM)wvq8sJxI>>$|7 zbuGRpep$~HOY&`Kf>&*BXa%8|xh$$$+N6Pnp1WUtB8wY|nQ`qN3`)k`8m@4&hPUhB ze~zt#>ixLM!K>^5@f>5$RuGPLE&HpKM9|n}-mm_tJz#vVdE*=&;55OFvpLR?Vv;R# zmV_tx;+di~MN66;lEM{CE1KT;U9Hg!B3q-m4@YV=$JxyDjOkZR)`o@+GzwpHU;_=p zw*gZ$kuqOlHOe^>mXyO}Hxe^roVi$}D=iD*ybq2bZ=W3D=M?Kn;o9 Rd4g-?cS9i&a8$g7e*ya&oge@J literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" new file mode 100644 index 0000000..387bd1b --- /dev/null +++ "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/testcase.txt" @@ -0,0 +1,61 @@ +30 +2 +5 5 +2 +4 2 +2 +3 4 +4 +2 3 10 5 +4 +1 2 3 4 +20 +26 19 23 2 24 2 17 15 1 27 6 29 18 23 27 13 26 21 9 1 +20 +4 5 3 4 2 4 4 3 5 2 2 3 5 5 5 2 5 2 5 5 +20 +1 3 6 5 5 1 5 4 3 5 4 2 4 6 5 5 4 5 5 3 +20 +4 5 6 6 5 3 1 3 3 3 3 5 3 3 3 4 5 1 4 3 +20 +26 6 8 15 10 15 14 6 19 16 5 13 9 12 14 29 28 3 12 27 +30 +8 27 2 32 19 16 19 11 33 35 7 9 6 12 7 1 1 28 38 32 25 14 5 15 34 30 14 24 7 24 +30 +3 2 5 5 5 4 4 5 2 4 3 4 3 5 5 2 5 4 2 5 2 1 5 4 4 3 2 4 2 4 +30 +6 4 6 5 6 1 1 6 4 5 6 6 5 1 3 6 5 5 5 4 6 1 1 5 3 3 6 1 5 5 +30 +1 6 3 5 6 1 4 5 4 5 5 5 6 5 2 3 6 2 3 5 5 1 5 4 6 5 6 4 6 6 +30 +35 8 19 40 12 17 11 29 14 21 31 39 28 33 16 19 34 12 12 10 28 40 6 19 36 19 10 2 34 22 +50 +37 59 11 13 18 30 22 53 35 18 27 7 50 19 57 38 54 24 31 38 4 8 9 54 37 29 32 27 11 7 19 57 36 54 35 31 45 2 10 54 27 14 51 27 34 51 1 58 4 6 +50 +2 2 5 2 3 2 3 1 3 5 5 3 2 2 2 3 4 4 4 2 1 5 4 4 4 2 3 4 2 5 4 3 5 3 5 2 2 4 4 4 5 5 3 4 2 3 4 4 5 4 +50 +6 6 5 4 6 6 1 4 2 1 4 6 2 3 5 6 5 5 1 5 5 4 5 3 1 6 3 6 5 3 5 1 3 5 3 6 3 5 5 2 4 3 6 3 5 5 3 5 5 6 +50 +5 5 5 1 4 5 3 2 4 5 5 5 6 3 2 5 5 6 3 5 3 5 4 6 5 5 3 3 6 5 6 1 3 4 4 6 1 6 3 3 6 3 2 6 6 1 5 4 5 4 +50 +11 17 35 37 41 2 8 20 40 5 25 58 54 7 36 33 46 44 37 53 15 8 42 56 35 2 40 55 50 58 49 2 35 19 32 54 18 12 22 56 23 17 47 4 30 56 48 4 36 33 +70 +37 26 72 57 38 33 9 6 66 71 59 55 21 58 65 57 27 36 14 27 7 76 34 34 8 55 23 80 41 35 39 38 8 5 17 23 42 1 27 78 77 26 74 51 13 27 32 11 75 37 37 62 75 73 41 28 29 57 56 18 79 27 48 9 1 30 31 65 73 63 +70 +3 4 4 3 4 5 4 1 5 4 4 5 5 5 4 4 2 3 3 4 4 2 3 2 5 1 2 5 4 4 4 5 2 2 4 2 3 2 3 5 4 5 4 4 1 2 3 4 4 4 5 3 5 5 4 5 4 3 5 5 2 4 1 4 2 4 5 3 5 3 +70 +6 5 1 3 3 5 5 5 3 5 3 4 2 6 5 5 1 2 1 3 5 4 6 1 1 5 5 5 5 5 6 6 5 1 1 5 3 5 4 5 3 5 2 4 3 1 2 5 6 3 6 3 4 4 5 3 5 5 3 3 6 5 2 1 3 5 6 5 4 5 +70 +5 5 4 6 6 3 4 1 1 1 3 6 6 1 5 5 1 5 3 5 6 3 5 3 4 6 1 5 2 6 3 5 6 5 3 5 1 3 4 4 6 5 2 1 6 5 4 5 5 4 5 6 3 5 2 4 3 3 3 3 3 6 3 5 5 3 5 4 5 5 +70 +47 25 56 22 41 75 1 47 39 28 48 52 43 50 56 2 50 41 35 6 36 23 60 67 73 3 30 52 31 8 60 34 10 55 35 24 28 75 45 5 37 49 24 1 59 7 6 20 77 4 5 67 5 25 18 61 29 54 41 69 68 16 33 48 65 18 22 34 70 2 +100 +30 108 8 61 17 56 54 29 50 72 9 97 67 36 75 110 88 99 75 93 19 44 39 45 72 53 115 106 1 20 25 118 117 51 89 72 116 33 76 26 6 47 35 55 45 89 78 69 56 78 58 95 34 9 1 14 2 9 8 64 12 85 117 49 40 44 8 2 89 36 12 56 89 18 38 63 3 57 29 110 25 46 98 20 119 52 114 107 23 11 105 35 119 55 82 115 56 85 68 28 +100 +2 4 4 3 1 3 4 5 5 2 3 2 4 4 4 4 4 2 4 1 5 3 5 3 2 3 4 4 2 2 3 5 2 4 2 4 3 4 4 2 4 5 4 5 4 4 4 5 5 3 3 4 4 1 2 1 5 2 4 4 4 1 2 4 1 2 1 4 5 2 4 5 5 2 4 5 1 4 3 5 4 5 2 3 2 5 4 4 5 3 2 4 4 2 2 5 5 1 2 2 +100 +4 5 2 6 6 1 5 2 1 1 3 5 3 3 5 6 5 6 3 5 5 5 1 1 6 3 5 5 6 5 4 4 6 6 1 5 1 5 1 4 5 5 2 5 5 5 5 3 6 3 2 5 5 6 6 3 5 3 1 2 5 1 4 6 4 6 1 3 4 3 6 1 1 5 2 3 1 5 3 5 6 5 5 5 5 3 5 6 2 6 5 4 3 5 5 3 5 6 5 6 +100 +3 6 5 1 6 5 6 1 6 5 5 6 6 5 5 6 3 5 3 5 6 6 3 5 5 6 3 3 3 2 4 6 4 4 5 4 5 6 6 5 1 5 2 3 3 3 5 3 6 5 4 3 6 5 6 6 5 5 5 2 3 5 1 6 1 6 3 3 6 5 2 6 3 2 3 3 5 1 6 5 5 6 1 3 4 3 3 5 2 1 1 6 1 5 6 4 6 5 4 5 +100 +68 88 9 43 34 56 114 65 16 83 42 2 120 94 45 100 44 110 47 34 16 112 24 108 22 78 88 120 65 69 108 81 36 53 82 15 67 56 82 95 74 95 14 77 29 97 68 103 32 109 88 115 80 107 15 116 81 78 82 17 98 100 47 103 30 41 55 72 100 24 11 19 105 12 64 102 100 22 21 106 50 8 66 14 20 58 43 14 78 82 21 5 1 81 89 65 35 20 87 47 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204.class" new file mode 100644 index 0000000000000000000000000000000000000000..5399dfb10956b2c78b08cce2c11649e9ec540e6d GIT binary patch literal 4260 zcmb7GYjBk16@K2`Z!cLsB!r738!#Z3WPuGNq#(f{pw=Y`QG#HE0$-9%vas32-3`RH zDs6+J;)N;&0V(meMXf@hn^ln3-fM6FI_;m%^hZ0LCQQf9*clya`keRM+$8prnaz8D z&vTx0p7VYmeERMc04wlY4;%{1tLqy|JHzorN6dapVkhYt+A(^EQl^7&n5 z<;zwrU$JZKya$Ft?jCEORT{Not)+F1d%{gg1#hw=X+<~0*i|9^Hu1Nazby)`NUXDq z^V7E1jGn7c#v`%TN(Fa3oal;j*^y{e$iHsO`mRW{IUJXrYa+2ovP!{OT(VWc*wE1& z_Q8p1CZ-@)VMNQKXQg z84D)6lRnJGJn`>lg&D=ykyBZ+)rSRG$_T7!trqP=CDQHJy^=946ltjXD{c_dZ~$JSk3?nGc#e-9lFZun>sx3+$-8v@42f-&&u}0 zCY}--3u;&Vx9wR2&zN}DMpg0oC&a~c&tU3E*336eJcsA$oYg|TF_DTlijU3smWg9J z(UTo^Y<*aX7fhUx!sOa7@|2lVCSDYyu9j$5qK)URcq^mgXyje9Mk>Sj3d5@E*gxTV zR%%pEgjYqiymAsrE1tAdMp0Cg>yuW~-dd|uS9g!-pc${5cmr=TEv(MYaI9IOusC$R zDu-VdFW#aFpBy|V2hS@kok$JW$$Iz#ch%J3q`xlw-BG#XdvZluOy2&VOlIiO;Kf5e z1rHHsCD0^FG+LrotHk_06Ibwkva?AFL-F=d$^FFH$%*YD58mgT=7Mv3WcyD|{0u+m z`NV#Un>;)q8Or6o{8{|*eKq(jaM4%a(G_nB%iBYwpYzlQrEFj>uXgg2!9&GUnCy9_ z3h0(KK)0+9x@8&CEh~an~w;L*7mOn47`;O9(Vv!jgtQ1p86ej}Ty}4FA9lZo znhR*Wgyx2Rv|K=I29cF6=LNLq8_u$Z)t)pu-XPK={J99ehwXB<2iaD!eUxoA+sD}6 z$Mz80aK0xmkw(`EtWIGo2M_8&MG7GfzM==g6xML?kRFtzP|Cq0dN41Ac}`~rUrV7N zgM%qdm(igV%nY7P!JWa=GhG=RS<;8rG>)cmd`TK7dz@-^A9nN(uqlhjzwbANL;Mu7kJe99wO7$taJot{`L5(SY9+$`U2^=5O zm`~~(uVxCNjYkc(#U!Q=?P;9N`)(RbN)92QZ zs#{4>6&7Kwc4Q{kd7p*_uFSwY1n8huJ}p_ReLO3Ax{W4{-OQT;Ce;}j=bg8vu+VQ5 zc0c?A+$qfJLnD{&DJ-imFm}uQ0mit;p$hx3vv=qZqhSm1eqaOTa61v*$>4=(c_Y6Z zt5L*9GJslCaBeL>F@)|S+dkgaswEO!((=p0Qcbc$6Y7I2_ZmO;ebWU$AGj?3*LhmJ zTtyg{ebvr2Dfj|@e_fAKevRy-VaH_2Ju>}qAcM;%hWh0unvU>!t8)f(b-sgTVV<)Mga5KLq?4Be*9$f#D50M`#_a|^)gQ)~J-`Fhf zlUd%&hv5zL?kDg00oalCOIf=w%YD6U14mDXvLj(qi@snvFU-Bd}i?`f%6_$r|6{!r-ft1DFtzO@@p4V* z=Z9&QemhBWHR+11dvb(wH$CB3N7j>z*;J`^R;I94(qU17;g|eo4%^AErFW0NjQWzI z{PwnyeEB_>Y(0w81_|iy9lA2=)IvTCz+r0mDH?s6@qdP;=~*o1xPmIL;@U{m-9`%fw6G+IEL)SLN0zJ-NFohqL=x=ObPhu;p`sg5GVb!dx!pEyvh6R z`n#UY0aQOft8#FXb@&7;?TgH=(-g%Sa^K5Xy+oPzG9E8exUW*~uTk15%I7tH)1TGu z25ih(!ML$CE0aYeMjUtW)J*(>J*SrXG%dF6JF)G2EUp_8u&GlrJ;!z3JpXb ztP1!8g~7T&;p{pI#@K@R7B{`kgXj3{pC5x{N*0Nb{edQ4dcV|23})l6G!lhh>-&E5 EZ%d8zJ^%m! literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.class" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230814_\354\213\234\355\227\230\353\214\200\353\271\204_practice1.class" new file mode 100644 index 0000000000000000000000000000000000000000..d62fe1504d5ff0b571434e59d8dad889db49733c GIT binary patch literal 4256 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 AE&u=k literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.class" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\233\224_230828_A\355\230\225_\354\213\234\355\227\230\353\214\200\353\271\204.class" new file mode 100644 index 0000000000000000000000000000000000000000..7b32fd38529b445695e1764780360a5732414c82 GIT binary patch literal 2409 zcmbVOTWl0n82--QW_Na$Ld%x6P-rPi3$$BqYiaS)a$V>J*$S?J?d`#8!=13wcAXZ)>8uZ`i5fyjyQ{f>MF9!Y(rv2=&Z+6s#0jHRsrGCX7%rowFFl(1+b97ub}| z!~&1TXc<{6re}>NYs^wnh6 zRIEpXq_Iv#4K_<@3$wQXs2Ht)rD+K)$1|oSu`~-*&0*=uS@UTv`X!ic8n$BxJ1Lc8 zV=bUL!Wz!jpiM;pL5blBQd_|AU_c^K(TH7gSL-6A#iI&HchA+i(9Fd)>ByN0rcFf~ zJd*3v8lFMBfSc8i%QhBRS>Nz*Ayw?bJ_UOPRul*pLWYu-F=%8o?8gCyNb8v_n@RFo zsue;CLUXmsS!N+$t)d6dDmWsrY~l1S-5Szx z6k%plkMd$U>O&17H=Yv^b&}w54bLOO>#L{JMlvqYxD>31xXz}CWoW|*8RDeC8is!4 zMmJvMku`4g^QFqqq8eg_tXioeNm(pI!+^Xe&QaMd(n9#AoFC4CL@qldEoU?&3YJ(R zm1Qj)dS;N!%9gnAZ0Kl)w`RVf7heoc3tMz_DgSJT(4UR69*?9&GQE6QGl#tLGLOmZ zsKGNuH!*Ww7=&g!!439deN4vVrq#uGOBI-qgehA;&RRH(5rg;97q;}+nJztDn2`#S z3eIzmg;Tjq%#g!Lp!UB;c9ZM})Pi9-{{b5%&Sb6%wE*9OZ|9~w+@BZRDp%>2tCy=* z+`zYwng`2J!XV2jJLp*odPGhBkp^ey?-L z5f3tIm9%^c&96C!q^?T6Kj>;K?VZ9gzjF#Nl%A53OGwIJJG)D$224 zRAZ-TL5b+#=skoM(T!c=C|V1Ra+x^T0vJY;IM<4uJUz`8X%=;O2^ls`i&%{;Eb?g= zrO07~EwmT+F-plv{J&z1l8Y>E<18hGTyEhU&cjVcKat4@`J4D2ui#Z?A%V?!jW#cH z^D!7AL|c3?U)&fK8| z6%i{g)SU^9h(T%6jV5YLi`MAg1+Gj?NKABT!Ig=LM(TI&^g*TFxR`tX^Z)1k=llLw z`~8EjzXh-pZz*sH>^R=h9m<&5TsmbWL-*eP;QqCdsdp|ZSS;OH((u|}sd5d05 zW5A12fz7#WEVML0%gk9ZBWKoGLzapXl*tg33+UC0fl{#=6$;iYh-$}$oMjGZSc`Q6 z?wn~w$f|7SzJxoEh`bc6C+AtjP5ItlGi%1%O(Sk*6;uh7&)OckS1|kd`ePa%$0h-X z44q!U_@6gaY(R~qu}(!Lwn%9!qc;zz;LXNTw+NP#*@Pvr)C;Vd#nP6y=E7RAOEB9t z?7&WzQ9946nn!bjIh@Hsqlys162lXuHjm+9heV>H7Q5xCJqwT)p0bhdoz1gd$%Qg$ z$|sTxn~FyGB-f`jJdOPVUS>ZoYgk}Kb?&7vq$c9UvjU<@53pni41#bP-n3O5IfNe+%v^du6p^yAEh%RFzg9|Ikh5j)pn zWb6T{Af@0E=U7KNpN*MvI0>v>a#+{NV!(RPC&xbEpu}m+ufko3tKjP1JOS_Lwpry@ zn&sEeuU0s~HNc$@MJT3|Wt3gCESGMaF1joNM8_mbx`X-zR^G;{NmO=EVng>A*f@de z32bhjL@hNTYPL;a*900`CeheEfhSwHjAP$zG=*KRuzL)DI>R1kSeaFNCvmh}ZYFSS zk5Bi0qwZ0iVgDF5maDqI+&7NnyxXQLa$EN?RC^68!+xRrb?-;hcX`?w)|}zM7`EBR z0(Cdx8N+(o<*h(n+@0wO`*m$@o9qc|!vUcOq=P$S@C|Fz!+r-(_(xGJm-ub8x^7MX zMjzTJigdrb-xUwj>#D*bP1oH0a!*vc))V&B20O>mrMt)ReDJiCJW@JC>Ey6m=x*IL zI_=$BI}T$U@vYn%l?rMVGzwPwG+Ap4 pl|l#wM->dyT;ceK|0oEp!tob;?%?ub&osmJh!@g)laDxX^ literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\235\274\355\203\200\354\213\270\355\224\274.class" "b/build/classes/KSY/personal/\354\213\234\355\227\230\353\214\200\353\271\204/\354\235\274\355\203\200\354\213\270\355\224\274.class" new file mode 100644 index 0000000000000000000000000000000000000000..819a5ab196e7f15b8d8a99daa5d760d7edd86539 GIT binary patch literal 431 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 literal 0 HcmV?d00001 diff --git "a/src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" "b/src/KSY/personal/Practice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" similarity index 96% rename from "src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" rename to "src/KSY/personal/Practice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" index 4293768..df11104 100644 --- "a/src/KSY/personal/Prectice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" +++ "b/src/KSY/personal/Practice/S11048_\354\235\264\353\217\231\355\225\230\352\270\260.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; diff --git "a/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" "b/src/KSY/personal/Practice/S11723_\354\247\221\355\225\251.java" similarity index 97% rename from "src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" rename to "src/KSY/personal/Practice/S11723_\354\247\221\355\225\251.java" index 74dc89e..66aa5c0 100644 --- "a/src/KSY/personal/Prectice/S11723_\354\247\221\355\225\251.java" +++ "b/src/KSY/personal/Practice/S11723_\354\247\221\355\225\251.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.io.*; import java.util.*; diff --git "a/src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" "b/src/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" similarity index 95% rename from "src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" rename to "src/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" index cce964b..65ca087 100644 --- "a/src/KSY/personal/Prectice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" +++ "b/src/KSY/personal/Practice/S1676_\355\214\251\355\206\240\353\246\254\354\226\2740\354\235\230\352\260\234\354\210\230.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; diff --git "a/src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" "b/src/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" similarity index 98% rename from "src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" rename to "src/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" index 72d6737..57079c1 100644 --- "a/src/KSY/personal/Prectice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" +++ "b/src/KSY/personal/Practice/S1780_\354\242\205\354\235\264\354\235\230\352\260\234\354\210\230.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.io.*; import java.util.*; diff --git "a/src/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.java" "b/src/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.java" new file mode 100644 index 0000000..82a7ace --- /dev/null +++ "b/src/KSY/personal/Practice/S2805_\353\202\230\353\254\264\354\236\220\353\245\264\352\270\260.java" @@ -0,0 +1,52 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +//179320KB/ 784ms + +public class S2805_나무자르기 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); // 나무의 개수 + long M = Integer.parseInt(st.nextToken()); // 가져야할 나무의 높이 + st = new StringTokenizer(br.readLine()); + + long[] trees = new long[N]; + long end=0, mid=0, start=0; + for(int i=0; i= 0; i--) { + if(trees[i] <= mid) { + break; + } + sum += trees[i] - mid; + } + if(sum >= M) { // 주의 + start = mid + 1; + } else { + end = mid; + } + mid = (end + start)/2; + } + if(mid-1 < 0) + sb.append(0); + else + sb.append(mid-1); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} diff --git "a/src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" "b/src/KSY/personal/Practice/S7568_\353\215\251\354\271\230.java" similarity index 97% rename from "src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" rename to "src/KSY/personal/Practice/S7568_\353\215\251\354\271\230.java" index b7d126f..04c0e17 100644 --- "a/src/KSY/personal/Prectice/S7568_\353\215\251\354\271\230.java" +++ "b/src/KSY/personal/Practice/S7568_\353\215\251\354\271\230.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; From 132d2aededd5a8689f26cfe6c686ffc2212903e8 Mon Sep 17 00:00:00 2001 From: Sina Date: Sun, 1 Oct 2023 15:30:40 +0900 Subject: [PATCH 22/27] FEAT : 231001 --- src/KSY/S1005_ACM_Craft.java | 70 +++++ ...\352\261\260\354\247\223\353\247\220.java" | 104 ++++++++ ...\353\223\234\353\212\224\354\210\230.java" | 25 ++ ...\353\205\270\353\257\270\353\241\234.java" | 94 +++++++ ...\353\247\220\355\225\264\354\232\224.java" | 47 ++++ ...\353\246\254\352\262\214\354\236\204.java" | 97 +++++++ ...\353\254\270\354\240\234\354\247\221.java" | 56 ++++ ...\355\224\274\355\225\230\352\270\260.java" | 136 ++++++++++ src/KSY/S18809_Gaaaaaaaaaarden.java | 252 ++++++++++++++++++ ...\355\225\234\353\213\250\354\226\264.java" | 48 ++-- ...\354\210\234\354\234\204\355\201\220.java" | 81 ++++++ ...\353\206\215\353\260\260\354\266\224.java" | 81 ++++++ .../Prectice/S15642_N\352\263\274M_4.java" | 45 ++++ ...\353\247\210\354\212\244\355\204\260.java" | 57 ++++ .../Prectice/S16554_N\352\263\274M5.java" | 59 ++++ ...\355\206\265\352\263\204\355\225\231.java" | 89 +++++++ ...\353\247\214\353\223\244\352\270\260.java" | 70 +++++ 17 files changed, 1396 insertions(+), 15 deletions(-) create mode 100644 src/KSY/S1005_ACM_Craft.java create mode 100644 "src/KSY/S1043_\352\261\260\354\247\223\353\247\220.java" create mode 100644 "src/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.java" create mode 100644 "src/KSY/S14500_\355\205\214\355\201\254\353\205\270\353\257\270\353\241\234.java" create mode 100644 "src/KSY/S1655_\352\260\200\354\232\264\353\215\260\353\245\274\353\247\220\355\225\264\354\232\224.java" create mode 100644 "src/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.java" create mode 100644 "src/KSY/S1766_\353\254\270\354\240\234\354\247\221.java" create mode 100644 "src/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.java" create mode 100644 src/KSY/S18809_Gaaaaaaaaaarden.java create mode 100644 "src/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.java" create mode 100644 "src/KSY/personal/Prectice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" create mode 100644 "src/KSY/personal/Prectice/S15642_N\352\263\274M_4.java" create mode 100644 "src/KSY/personal/Prectice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.java" create mode 100644 "src/KSY/personal/Prectice/S16554_N\352\263\274M5.java" create mode 100644 "src/KSY/personal/Prectice/S2108_\355\206\265\352\263\204\355\225\231.java" create mode 100644 "src/KSY/personal/Prectice/S2630_\354\203\211\354\242\205\354\235\264\353\247\214\353\223\244\352\270\260.java" diff --git a/src/KSY/S1005_ACM_Craft.java b/src/KSY/S1005_ACM_Craft.java new file mode 100644 index 0000000..9e50db5 --- /dev/null +++ b/src/KSY/S1005_ACM_Craft.java @@ -0,0 +1,70 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class S1005_ACM_Craft { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); // 건물 개수 + int K = Integer.parseInt(st.nextToken()); // 순서 규칙 개수 + + Map> graph = new HashMap<>(); + int[] before = new int[N+1]; + Map> child = new HashMap<>(); + for(int i=1; i<=N; i++) { + graph.put(i, new ArrayList<>()); + child.put(i, new ArrayList<>()); + } + + // 건물 짓는 비용 + int[] costs = new int[N]; + st = new StringTokenizer(br.readLine()); + for(int i=0; i que = new ArrayDeque(); + for(int i=1; i<=N; i++) { + if(before[i] == 0) { + que.offer(i); + } + } + + while(!que.isEmpty()) { + int curr = que.poll(); + after[] + + } + + int W = Integer.parseInt(br.readLine()); // 승리를 위해 지어야 할 건물 + + + } + + } + +} +class Building{ + int time, totalTime; + Building(int time, int totalTime){ + this.time = time, this.totalTime = totalTime; + } +} \ No newline at end of file diff --git "a/src/KSY/S1043_\352\261\260\354\247\223\353\247\220.java" "b/src/KSY/S1043_\352\261\260\354\247\223\353\247\220.java" new file mode 100644 index 0000000..de81fb1 --- /dev/null +++ "b/src/KSY/S1043_\352\261\260\354\247\223\353\247\220.java" @@ -0,0 +1,104 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//11752KB/ 80ms + +public class S1043_거짓말 { + + static int[] parents; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + int answer=0; + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); // 사람 수 + int M = Integer.parseInt(st.nextToken()); // 파티 수 + parents = new int[N+1]; // 속한 파티 집합 + for(int i=1; i<=N; i++) { + parents[i] = i; + } + + st = new StringTokenizer(br.readLine()); + int K = Integer.parseInt(st.nextToken()); // 거짓말 아는 사람 수 + boolean[] knows = new boolean[N+1]; + for (int k = 0; k < K; k++) { + knows[ Integer.parseInt(st.nextToken())] = true; // 거짓말을 아는 사람 표시 + } + + List> parties = new ArrayList<>(); // 파티 리스트 + for (int i = 0; i < M; i++) { // 파티 입력 받기 + st = new StringTokenizer(br.readLine()); + int cnt = Integer.parseInt(st.nextToken()); // 파티 인원 + + List party = new ArrayList<>(); + for (int j = 0; j < cnt; j++) { + int temp = Integer.parseInt(st.nextToken()); + party.add(temp); + + if(j < 1) // 1개 이하 + continue; + + union(party.get(j-1), temp); // 둘이 같은 집단에 속해있다 + } + parties.add(party); + } + + for(int i=0; i que = new ArrayDeque<>(); + que.offer(new int[][] {{1, 1, 1, 1}}); // 도형1 + que.offer(new int[][] {{1, 1}, {1, 1}}); // 도형2 + que.offer(new int[][] {{1, 0}, {1, 0}, {1, 1}}); // 도형3 + que.offer(new int[][] {{1, 0}, {1, 1}, {0, 1}}); // 도형4 + que.offer(new int[][] {{0, 1}, {1, 1}, {1, 0}}); // 도형4-2 + que.offer(new int[][] {{0, 1}, {0, 1}, {1, 1}}); // 도형3-2 + que.offer(new int[][] {{1, 1, 1}, {0, 1, 0}}); // 도형5 + que.offer(new int[][] {{0, 1, 0}, {1, 1, 1}}); // 도형5 + + while(!que.isEmpty()) { + int[][] curr = que.poll(); + check(curr); + direc4(curr, 0); + } + + sb.append(answer); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + + + public static void direc4(int[][] miro, int d) { + if(d < 3) { + int[][] newmiro = new int[miro[0].length][miro.length];// 90도 돌린 도형 + for(int i=0; i=0; j--) { + newmiro[i][miro.length-j-1] = miro[j][i]; + } + } + check(newmiro); + direc4(newmiro, d+1); + } + } + + public static void check(int[][] miro) { + for(int i=0; i<=N-miro.length; i++) { + for(int j=0; j<=M-miro[0].length; j++) { + int temp = 0; + + for(int k=0; k minHeap = new PriorityQueue<>(); + PriorityQueue maxHeap = new PriorityQueue<>(Collections.reverseOrder()); + + int N = Integer.parseInt(br.readLine()); + maxHeap.offer(Integer.parseInt(br.readLine())); // 첫 숫자 + sb.append(maxHeap.peek()).append("\n"); + + for(int i=0; i maxHeap.peek()) { + minHeap.offer(number); + if(maxHeap.size() < minHeap.size()) { + maxHeap.offer(minHeap.poll()); + } + } else { + maxHeap.offer(number); + if(maxHeap.size() - minHeap.size() > 1) { + minHeap.offer(maxHeap.poll()); + } + } + + + sb.append(maxHeap.peek()).append("\n"); + } + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} diff --git "a/src/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.java" "b/src/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.java" new file mode 100644 index 0000000..75c431f --- /dev/null +++ "b/src/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.java" @@ -0,0 +1,97 @@ +package KSY; + +import java.util.*; +import java.io.*; + +//12216KB/ 88ms + +public class S16928_뱀과사다리게임 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int[] map = new int[101]; + Arrays.fill(map, 100); + map[1] = 0; + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); // 사다리 수 + int M = Integer.parseInt(st.nextToken()); // 뱀의 수 + + int[] ladders = new int[101]; + int[] snacks = new int[101]; + int answer = 100; // 이동 횟수(최악의 경우로 초기화) + + for (int i = 0; i < N; i++) { // 사다리 + st = new StringTokenizer(br.readLine()); + int from = Integer.parseInt(st.nextToken()); + int to = Integer.parseInt(st.nextToken()); + ladders[from] = to; + } + + for (int i = 0; i < M; i++) { // 뱀 + st = new StringTokenizer(br.readLine()); + int from = Integer.parseInt(st.nextToken()); + int to = Integer.parseInt(st.nextToken()); + snacks[from] = to; + } + + Queue que = new ArrayDeque<>(); + que.offer(new Pos(0, 1)); + + while (!que.isEmpty()) { + Pos curr = que.poll(); + if (curr.cnt > map[curr.pos]) + continue; + map[curr.pos] = curr.cnt; + + if(curr.pos == 100) // 안 하면 메모리 초과 + break; + + for (int d = 1; d <= 6; d++) { + if (curr.pos + d < 101) { + if (curr.cnt + 1 < map[curr.pos + d]) { +// boolean flag = false; +// que.offer(new Pos(curr.cnt + 1, curr.pos + d)); + int point = curr.pos + d; + Pos pos = new Pos(curr.cnt + 1, point); + + int ladder = ladders[curr.pos + d]; + int snack = snacks[curr.pos + d]; + + if (ladder != 0) { // 사다리가 있다면 +// map[ladder] = curr.cnt + 1; +// que.offer(new Pos(curr.cnt + 1, ladder)); +// flag = true; + point = ladder; + } + + if (snack != 0) { // 뱀이 있다면 (else-if -> if : 12% -> 22%) +// map[snack] = curr.cnt + 1; +// que.offer(new Pos(curr.cnt + 1, snack)); +// flag = true; + point = snack; + } + + map[point] = curr.cnt + 1; + pos.pos = point; + que.offer(pos); + } + } + } + } + System.out.println(map[100]); + } + +} + +class Pos { + int cnt, pos; + + Pos(int cnt, int pos) { + this.cnt = cnt; + this.pos = pos; + } +} \ No newline at end of file diff --git "a/src/KSY/S1766_\353\254\270\354\240\234\354\247\221.java" "b/src/KSY/S1766_\353\254\270\354\240\234\354\247\221.java" new file mode 100644 index 0000000..9e982f1 --- /dev/null +++ "b/src/KSY/S1766_\353\254\270\354\240\234\354\247\221.java" @@ -0,0 +1,56 @@ +package KSY; + +import java.io.*; +import java.util.*; + +// 52556KB/ 516ms + +public class S1766_문제집 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + + Map> graph = new HashMap<>(); // 가야하는 애들 + for(int i=1; i<=N; i++) { + graph.put(i, new ArrayList<>()); + } + + int[] costs = new int[N+1]; + for(int i=0; i que = new PriorityQueue<>(); + for(int i=1; i<=N; i++) { + if(costs[i] == 0) { + que.offer(i); + } + } + + while(!que.isEmpty()) { + int curr = que.poll(); + sb.append(curr).append(" "); + for(int c : graph.get(curr)) { + costs[c]--; + if(costs[c] == 0) { + que.offer(c); + } + } + } + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} \ No newline at end of file diff --git "a/src/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.java" "b/src/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.java" new file mode 100644 index 0000000..fe5da99 --- /dev/null +++ "b/src/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.java" @@ -0,0 +1,136 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S18428_감시피하기 { + + static char[][] map; + static int candi_length, N; + static List teachers; + static Queue que ; + + static int[] dr = new int[] {1, -1, 0, 0}; + static int[] dc = new int[] {0, 0, 1, -1}; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + N = Integer.parseInt(br.readLine()); + List candidate = new ArrayList(); + teachers = new ArrayList(); + + map = new char[N][N]; + for(int i=0; i=candi_length-3) p[cnt--] = 1; + boolean answer = false; + + do { + // map copy + char[][] temp = new char[N][N]; + for(int m=0; m(); + boolean[][] visited = new boolean[N][N]; + for(int i=0; i 0 && p[i-1]>=p[i]) i--; + if(i == 0) + return false; + + int j = candi_length-1; + while(p[i-1] >= p[j]) j--; + swap(p, i-1, j); + + int k=candi_length-1; + while(k>i) + swap(p, i++, k--); + return true; + } + + public static void swap(int[] p, int i, int j) { + int temp = p[i]; + p[i] = p[j]; + p[j] = temp; + } + +} + +class Position{ + int r, c; + Position(int r, int c){ + this.r = r; this.c = c; + } +} \ No newline at end of file diff --git a/src/KSY/S18809_Gaaaaaaaaaarden.java b/src/KSY/S18809_Gaaaaaaaaaarden.java new file mode 100644 index 0000000..1de2f16 --- /dev/null +++ b/src/KSY/S18809_Gaaaaaaaaaarden.java @@ -0,0 +1,252 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class S18809_Gaaaaaaaaaarden { + + static List able = new ArrayList<>(); + static int[] dr = new int[] { 0, 1, 0, -1 }; + static int[] dc = new int[] { 1, 0, -1, 0 }; + static int N, M, map[][]; + static Set checked = new HashSet<>(); + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + int G = Integer.parseInt(st.nextToken()); // 초록 배양액 + int R = Integer.parseInt(st.nextToken()); // 빨간 배양액 + int river = 0, answer = 0; + + // 0: 호수, 1: 배양액 뿌릴 수 없는 땅, 2: 배양액 뿌릴 수 있는 땅 + map = new int[N][M]; + for (int i = 0; i < N; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < M; j++) { + map[i][j] = Integer.parseInt(st.nextToken()); + if (map[i][j] == 2) { + able.add(new Cell(i, j, 0)); + } else if (map[i][j] == 0) { + river++; + } + } + } +// System.out.println("river: " + river); + + int p[] = new int[able.size()]; + int cnt = able.size() - 1; + while (cnt >= able.size() - (G + R)) + p[cnt--] = 1; + do { // 배양액 놓을 위치 선정 + + int[] selected = new int[G + R]; // 선택된 위치의 able 인덱스 번호들 + int idx = 0; + for (int i = 0; i < able.size(); i++) { + if (p[i] == 1) { + selected[idx++] = i; + } + } + + int p2[] = new int[G + R]; // Green vs Red + int cnt2 = p2.length - 1; + while (cnt2 >= p2.length - G) + p2[cnt2--] = 1; + + do { // 초록색(1), 빨간색(0) 분리 + + // map 분리 + int[][] greenmap = new int[N][M]; + int[][] redmap = new int[N][M]; +// Arrays.fill(greenmap, -1); +// Arrays.fill(redmap, -1); +// for (int i = 0; i < N; i++) { +// greenmap[i] = map[i].clone(); +// redmap[i] = map[i].clone(); +// } + +// Queue greenque = new ArrayDeque<>(); +// Queue redque = new ArrayDeque<>(); + Queue que = new ArrayDeque<>(); + + for (int i = 0; i < p2.length; i++) { + Cell c = able.get(selected[i]); + if (p2[i] == 1) { // 초록색이라면 + greenmap[c.r][c.c] = -1; + c.color = 'g'; + que.offer(c); + } else { // 빨강색이라면 + redmap[c.r][c.c] = -1; + c.color = 'r'; + que.offer(c); + } + } +// //tempmap 출력 +// System.out.println("before"); +// for(int i=0; i answer) { + answer = answertemp; + // tempmap 재출력 + for (int i = 0; i < N; i++) { + System.out.println(Arrays.toString(greenmap[i])); + } + System.out.println(); + for (int i = 0; i < N; i++) { + System.out.println(Arrays.toString(redmap[i])); + } + System.out.println("=======" + answertemp); + + } +// sb.append(answer).append("\n"); + + } while (NP(p2)); + + } while (NP(p)); + sb.append(answer); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +// public static int checkSameTime(int[][] map1, int[][] map2) { // 둘이 같은 시간에 방문한 위치 확인 +// int cnt = 0; +// for (int i = 0; i < N; i++) { +// for (int j = 0; j < M; j++) { +// if (map1[i][j] != 0 && map1[i][j] == map2[i][j]) { +// cnt++; +// } +// } +// } +// return cnt; +// } + + public static int BFS(int[][] greenmap, int[][] redmap, Queue que) { +// int tempanswer = 0; + int[][] tempmap = new int[N][M]; + while (!que.isEmpty()) { // que에 값이 있을 때까지 + Cell curr = que.poll(); + // 해당 cell이 이미 꽃을 피운 곳이라면 탐색 중지 + if (checked.contains(curr)) + continue; + + for (int d = 0; d < 4; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + if (-1 < row && row < N && -1 < col && col < M && map[row][col] != 0) { // 범위를 벗어나지 않고 호수가 아님 + if (curr.color == 'g') { // 초록색일 때 + if (redmap[row][col] == curr.cnt + 1) { // 배양 +// tempanswer++; + tempmap[row][col] = 1; + checked.add(new Cell(row, col, 0)); + } else if (greenmap[row][col] == 0) { + greenmap[row][col] = curr.cnt + 1; + Cell c = new Cell(row, col, curr.cnt + 1); + c.color = 'g'; + que.offer(c); + } + } else if (curr.color == 'r') { // 빨간색일 때 + if (greenmap[row][col] == curr.cnt + 1) { // 배양 +// tempanswer++; + tempmap[row][col] = 1; + checked.add(new Cell(row, col, 0)); + } else if (redmap[row][col] == 0) { + redmap[row][col] = curr.cnt + 1; + Cell c = new Cell(row, col, curr.cnt + 1); + c.color = 'r'; + que.offer(c); + } + } + } + } + } +// System.out.println("tempmap"); +// for(int i=0;i 0 && p[i - 1] >= p[i]) + i--; + if (i == 0) + return false; + + int j = p.length - 1; + while (p[i - 1] >= p[j]) + j--; + swap(p, i - 1, j); + + int k = p.length - 1; + while (k > i) + swap(p, k--, i++); + + return true; + } + + public static void swap(int[] p, int i, int j) { + int temp = p[i]; + p[i] = p[j]; + p[j] = temp; + } +} + +class Cell { + int r, c, cnt; + char color; + + Cell(int r, int c, int cnt) { + this.r = r; + this.c = c; + this.cnt = cnt; + } + + @Override + public int hashCode() { + int prime = 31; + int result = 1; + result = prime * result + r; + result = prime * result + c; + return result; + } + + @Override + public boolean equals(Object obj) { + Cell c = (Cell) obj; + return hashCode() == obj.hashCode(); + } + +} \ No newline at end of file diff --git "a/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" "b/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" index 958eeec..2557471 100644 --- "a/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" +++ "b/src/KSY/S2179_\353\271\204\354\212\267\355\225\234\353\213\250\354\226\264.java" @@ -3,43 +3,61 @@ import java.util.*; import java.io.*; +//37968KB 1992ms + public class S2179_비슷한단어 { - public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); StringBuilder sb = new StringBuilder(); - Map> map = new HashMap<>(); + Map> map = new HashMap<>(); String maxString = ""; + int minIndex = Integer.MAX_VALUE; - int N = Integer.parseInt(br.readLine()); + int N = Integer.parseInt(br.readLine()); // 문자 개수 for(int i=0; i list = map.putIfAbsent(sub, new ArrayList<>()); - if(list == null || !list.contains(str)) - map.get(sub).add(str); + List list = map.putIfAbsent(sub, new ArrayList<>()); + if(list == null || !list.contains(candi)) // 같은 단어 제외 + map.get(sub).add(candi); } } - - for(Map.Entry> m: map.entrySet()) { + for(Map.Entry> m: map.entrySet()) { // System.out.println("key : " + m.getKey() + " value : " + m.getValue()); - if(1 < m.getValue().size() && m.getKey().length() > maxString.length()) { // 문자열의 크기가 가장 크고, 해당하는 단어가 2개 이상일 때 + if(1 < m.getValue().size()) { // 리스트 크기가 1이상 + if(m.getKey().length() > maxString.length() || (m.getKey().length() == maxString.length() && m.getValue().get(0).idx < minIndex)) { + // 문자열의 크기가 가장 크고, 해당하는 단어가 2개 이상일 때 // System.out.println(maxString); maxString = m.getKey(); + minIndex = m.getValue().get(0).idx; + } } - } + - sb.append(map.get(maxString).get(0)).append("\n"); - sb.append(map.get(maxString).get(1)); + } + sb.append(map.get(maxString).get(0).str).append("\n"); + sb.append(map.get(maxString).get(1).str); bw.write(sb.toString()); bw.flush(); bw.close(); - } - } + +class Candi{ // implements Comparable{ + int idx; + String str; + Candi(int idx, String str){ + this.idx = idx; this.str = str; + } + @Override + public boolean equals(Object obj) { + return str.equals(((Candi)obj).str); + } + +} \ No newline at end of file diff --git "a/src/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.java" "b/src/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.java" new file mode 100644 index 0000000..16f6597 --- /dev/null +++ "b/src/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.java" @@ -0,0 +1,81 @@ +package KSY; + +import java.util.*; +import java.io.*; + +//447296KB/ 2952ms + +public class S7662_이중우선순위큐 { + + static Map live; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int N = Integer.parseInt(br.readLine()); + PriorityQueue pqMin = new PriorityQueue<>(); + PriorityQueue pqMax = new PriorityQueue<>(Collections.reverseOrder()); + live = new HashMap<>(); //큐 안에 존재하는 수 & 개수 + + for(int i=0; i que) { + int curr=-1; + while(!que.isEmpty()) { + curr = que.poll(); + if(live.getOrDefault(curr, 0) == 0) // 지울 값이 없다면 + continue; + + if(live.get(curr) == 1) { // 지울 값이 한 개 있다면 + live.remove(curr); + } + else // 지울 수 있는 값 한개 이상 + live.put(curr, live.get(curr)-1); // 존재하는 curr 중 1개 삭제 + break; + + } + return curr; + } + +} diff --git "a/src/KSY/personal/Prectice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" "b/src/KSY/personal/Prectice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" new file mode 100644 index 0000000..2e9a8f0 --- /dev/null +++ "b/src/KSY/personal/Prectice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" @@ -0,0 +1,81 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +//13484KB/ 116ms + +public class S1012_유기농배추 { + + static int[] dr = new int[] {1, -1, 0, 0}; + static int[] dc = new int[] {0, 0, 1, -1}; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=0; test que = new ArrayDeque<>(); + + + for(int i=0; i> dogam = new HashMap<>(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + String[] monsters = new String[N+1]; + + for(int i=1; i<=N; i++) { + monsters[i] = br.readLine(); + char upper = Character.toUpperCase(monsters[i].charAt(0)); + dogam.putIfAbsent(upper, new ArrayList<>()); + dogam.get(upper).add(new Monster(i, monsters[i])); + } + for(int i=0; i map = new ArrayList<>(); //값, count + double sum=0; + + int N = Integer.parseInt(br.readLine()); + int[] numbers = new int[N]; + for(int i=0; i answer[] = new ArrayList[N]; + + for(int i=0; i(); + + for(int i=0; i= maxCnt) { + maxCnt = tempCnt; + answer[tempCnt].add(numbers[i-1]); + } + checkNum = numbers[i]; + tempCnt = 1; + } + if(N != 1 && i == N-1) + answer[tempCnt].add(numbers[i]); + } + + for(int i=N-1; i>=0; i--) { + if(answer[i].size() == 1) { + sb.append(answer[i].get(0)).append("\n"); + break; + } else if(answer[i].size() > 1) { + sb.append(answer[i].get(1)).append("\n"); + break; + } + } + + } + + //범위 + sb.append(numbers[N-1] - numbers[0]); + + + bw.write(sb.toString()); + bw.flush(); + bw.close(); + + } + +} diff --git "a/src/KSY/personal/Prectice/S2630_\354\203\211\354\242\205\354\235\264\353\247\214\353\223\244\352\270\260.java" "b/src/KSY/personal/Prectice/S2630_\354\203\211\354\242\205\354\235\264\353\247\214\353\223\244\352\270\260.java" new file mode 100644 index 0000000..818d9b3 --- /dev/null +++ "b/src/KSY/personal/Prectice/S2630_\354\203\211\354\242\205\354\235\264\353\247\214\353\223\244\352\270\260.java" @@ -0,0 +1,70 @@ +package KSY.personal.Prectice; + +import java.util.*; +import java.io.*; + +//13644KB/ 112ms + +public class S2630_색종이만들기 { + + static int[][] map ; + static int answer[] = new int[] {0, 0}; // white, blue + static int[] dr = new int[] {1, 0, 0, 1}; + static int[] dc = new int[] {1, 0, 1, 0}; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + + // map 입력받기 + map = new int[N][N]; + for(int i=0; i Date: Sun, 1 Oct 2023 16:24:31 +0900 Subject: [PATCH 23/27] FEAT : 231001 --- build/classes/KSY/Node.class | Bin 847 -> 1074 bytes .../S14501_\355\207\264\354\202\254.class" | Bin 651 -> 1591 bytes ...355\225\234\353\213\250\354\226\264.class" | Bin 3044 -> 3336 bytes .../KSY/S14501_\355\207\264\354\202\254.java" | 6 +- src/KSY/S18809_Gaaaaaaaaaarden.java | 88 ++++-------------- ...\354\235\264\353\262\244\355\212\270.java" | 22 +++++ ...\353\206\215\353\260\260\354\266\224.java" | 2 +- .../Practice/S15642_N\352\263\274M_4.java" | 2 +- ...\353\247\210\354\212\244\355\204\260.java" | 2 +- .../Practice/S16554_N\352\263\274M5.java" | 2 +- ...\355\230\270\354\260\276\352\270\260.java" | 40 ++++++++ .../personal/Practice/S18110_Solvedac.java | 2 +- ...\355\206\265\352\263\204\355\225\231.java" | 2 +- ...\353\247\214\353\223\244\352\270\260.java" | 2 +- 14 files changed, 90 insertions(+), 80 deletions(-) create mode 100644 "src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2505/\354\264\233\353\266\210\354\235\264\353\262\244\355\212\270.java" create mode 100644 "src/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.java" diff --git a/build/classes/KSY/Node.class b/build/classes/KSY/Node.class index 3a75d61244fe59dca16f7866e20bd55e71f627af..9cefe95e9fdaa072d48fc9bf7209a47f19d71910 100644 GIT binary patch literal 1074 zcmZuvU2hUW6g{(iuS-E}i&{kdW|y{rf?qUEw26_3?ZZ}*KA8bl+)7!pF8u+%_&KP2op;f0fUUqdvu|t;_gaR%?IEWcR-5;l+&0DCcLtr;=3552 zajdw;5No@7jBSe{o}av^LYDC94sXAC&Idk5)UkBOHv3&FDz7#sb$MQD$z_K0N%!NS z+3Og#j4QYn!PWoT#nuEwNkEhtGPBf72i{ST!KD+Tya}kOb(ucvu7dNpK<(G9 zq1`r~m|_A_dbv_9m0$jTfAH(wXjSx${zNyseeMix3aCuU^WmmElVMt$eBF8tIpPb@ z3PGYtrD>rZVpeDm(voq8UKO%lP(*;vgm#3uwseT3mN`V~Gr1(p(>~`uYm`{2k-5+o9VQ>{Kli|#^3Mms>VKlyDJc zmv7O_|Hqf1mo%X-QC1LATp^pf@AEw+B%vky4cQ$*^98vh+)Sxs6zG~7qd3OxPZZ%* w71>DPXo~3yB^`a=UVsiz&#)S1^0{2!~g&Q literal 847 zcmaKq%We}f6o!ANX)Z%TN@%%X+^iA_HB=flP3firDIzM1DU~XOkTW&GWnxE;6O}C+ z9tM_3NFc$UXMtBh98XFo5-AINJjdt%{GVh0`2FP@fDnx$atx&>(P4Yf9LXZ`3@gWC zD%y$AgZ9(@v5Z|21%}lux@(3bVMRZY49wB!(ikxmwv|?Hhhe$d?Y0gW^1CVXB10`x zKeE=?5>^;KJkwT=O)`~7JSL_}gi}WIku}5~j<`S{p>rTCAVv!u2LQaEu?~@_u{q1^(q3r7yR_+^y zYBSqubxXL(u>Su}QKRS*otb%|yK1)nbx0>hW@2OcSow>qN1Ne;`-Knpjqln~A#X78Xg7s=khcII}c0}h5I8q3Jh11q9LGf+;yOSB4bfp#mj3Mns* zd`0!JUi*wo-zl2ID$NDT0cqA~uB7V#S8$d77_Q;^9KoLwq=Xv_2pbCtw{Uxo;7>ZA S5H29(aECNG+@)&$cl{5;vBP!% diff --git "a/build/classes/KSY/S14501_\355\207\264\354\202\254.class" "b/build/classes/KSY/S14501_\355\207\264\354\202\254.class" index 8d76c4ac7dc7c6e5ffffec4db52a1a7f54bb66d3..e4b70239034f48cf0e5aceb8f4b7fa736c53f5ec 100644 GIT binary patch literal 1591 zcmZ`(U3VH)6x|nQxM506la{8WennFQZ7fL*QA6uT(nhg_#1K<4)jGg5P76aE2Ce#} zt84W||A8+)`QnS!Ra~<42k2kXU*KBCePi$ z__bmwU0hhq%rD&h`~J^=ef5KcCUE?=`H7jXna*B%qkP+{cmkrpUrs>QEzh%^J%MAp zdG&RnQMIxHkxRB?d#?zDlc^m6ZI#Cc!WfMq3PWHlZ#!0@RWDoawpp%O0u%X0#jNd^ zuC3m?hnn}1-4rE{HQ~a#yS@js6 z!qWmFMK2zZQ)T-ISpx|?qr7-l;B<0mN@~ZzB+ja&=SaSv6qKh#iR2LS*InCFcP2 znJx)T`fU6$3c9q?vTO9&Kn9~q>&r1LgN+@b$yGHV0w_)tlHT1g^#)F(UCsujwt%uB8K}+l@PxV}Gu= zt|6y{zV$!Av|+&0DZ8AE!@(Gw zOhSjspAL(69cR2*rjAFv>sn3#VXGwib0$a{rj}`%!<);ybo6qM7Cp0aXWiWQZ>hu< zIKy!Ow-{o|7t=QfsP1wBg$_7ghs(&{21TTTm@JCTpO_;{qSRa zM*PDF#<-6K2{?{%zC|&C6NEj8(n>F5g^eCt}__L9ED{l z=rT`MDQA;%Y)bi4At2DGBf zy4AUQP8>W7tmn^dbd1&8Cs|kfS2>B$?6^dwyO$!Dm*w0iVXAYZz3bevOc_g3iv`b8F|aFQ*+|vRD?8BTnXYX&H^L^j!Ie(1Z zHGb5uw=Q1=p5nTOOJVNcZ=Nmga*cE+GntH^Tq+G_P-UNT6?&g$w#F>`hAYoKhq?Bj zu7brH^Ax`NaC7P0NTMy~rFmzVNN+=|%kr}jUw|;rYb;S@4?*Tf)*CFP(cbH> zf4EsOVkqSl254fr!3(Ug|8`H-!>lxTiHM!=DN8odYS6|Cg*(#L=FnSZ(9UXwHy%y2 zTQYGM71uh)t}$3kT%ku3R%dTGYAHq+6%VQ$U@D=?014J>blk^J5(XRSl-igT?TlC* zGR<>p?Hisk`4&AI-HMzc+O@Y~1{>LAd$RJAo9{D46c^5OXawkGtHH}`lFi$r*3wA4 zJL(8d8oc7j@N~sCOQ4tS2Cq3Nub}FqQrN@}$A{My!J^vRItISh!j?7BR;$t{pL3VN z8|)Sj%3^I&tHcP4y#{acmO@({=~@uoBtD2m%N+RI2KzZ6>n^L)&Uk}g!^O+C*E_p|e1qn4nsn_EQ8J?)GA(Jw;otX4%`dC(4F`Gb?9SDkj|X&7A(2aZj0( zudx?tV{AhF_ zqbZbaW?yHdnQi*hEOT*~u?{NDi!LYaL|a@m_61ZhVER%-PiD^b=}8sTgW9poKGTy% ztVy#@5%Tr3$MmJ?Qc~I*(mkf0W{b0EO0!Lg=W!?UsuQV`t;{SLPVnUagGZS&RO?RD z=a8wsz|NreI8#kMd1seU*6_G;uR~;y;&5ieG!c|_N6>S2P60dg=XB%2aOGM!OWFq$g4-)a~`13?y($4bT$ zWgH!t^f6wV_8~r#SV}P0n8@!;;x8Ui)0wPhGetEsQMFQ{b}&sH=P`AfQgw#M)j8?; zKvIr9B!@{maEg9e<)~wPDjO;a)jm%1IW8&Q$rpTyo9SvBXZQ*a6>2kIb3mG@O7(D- z-FT@{>o_Mfjas=7&dW>}%5BcihEIq$a)EC|a0^R>?rssB>>$KNNgJYNGMA(QvPHpG zE^|eSzZF9HcaQx}jvYi@y^H!@P}c-?5MM?t@@f2_k*iUlQKk{rs8dS8Eyl@Iqgvgh zbYRx>FS)LNwqRt$JO6NHBEy0Vt;44^dT#>?h6fDRi+w)|KNmmov%LLcY_HtXzj%HB E0S)|-VgLXD delta 1409 zcmZ{k*>e+>KG89n zv2@x91nHz(qf1e+2@?_OmmTxe z)b#MM!6U>J?)c!KBkwVTIQ3xunhK) zwEyy~^`+RSvDYs1mbjlFZP$BCm1XbtuFPiGZ*YLL!atm_cEpq82}j+8!67H7Co_6T z3>ls>c-lev1l69H2$CXe@GQ?Mw2^qGD{;`86V~UjUvRcFsVEM&Rdy_vwYz^TF<{l} z)bNtQ%N$nNRld5=D+(pOtKl_+*J%(b*53IR=#=xO!COq(M|`0bw!u626yBlacxJ?L zzGv{heaUyGqVT#r^W1ugDqT@+@=0af87plc)pn^Z_7&~UrbSi%q8sZQg%O$$GuLOQ zQw=wVbzq%#%zsb#e_|9wt@ywmIRd@${$xVqn0?NFK>6%&AgsH7$BO}~*X|3{W!LAZ zyU4w@K6kA)&49Cv_}#UEX||bucX1#`OGGz4rv4LcJ1@|lr^C%J^hAPY@K=_aLDQe7 z*Tr#498{i%T#nnZ?sgHI45;FO>Cf@#soC?Bnkv?ceJ5v6n4UZXiagn2MZ`Z%i$i!^ z2{jYZJf@as+*$PGIjH!QkYjn$v9wAk)9b{O2T+H-Vr3U z7YmQb5WB(c$zJD=Rc*-eYK}Lma=b0yyEAgbJ?JtHValjeNRW_JuZksXWGQtlr&+99 z<=S^~3%wM}%~>I*wS-Ala#U=ei~lUExy%}_P^MtD(y36DtW_;p)~R;Fs+&p`Wxa$) zhy_l2gnUd^g{oPK`vGz?)E%7QLtIp;Fdy+TZZ@hle8NeQS*KP>p+1x5HmgETNm?J9 z8RH9?$>TtbY4Q5mE+W4aTR?sTdDb7lYdDOWD z)Qq6c3o43#R!ZR4_)eopqg able = new ArrayList<>(); static int[] dr = new int[] { 0, 1, 0, -1 }; static int[] dc = new int[] { 1, 0, -1, 0 }; static int N, M, map[][]; - static Set checked = new HashSet<>(); public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); @@ -21,7 +22,7 @@ public static void main(String[] args) throws IOException { M = Integer.parseInt(st.nextToken()); int G = Integer.parseInt(st.nextToken()); // 초록 배양액 int R = Integer.parseInt(st.nextToken()); // 빨간 배양액 - int river = 0, answer = 0; + int answer = 0; // 0: 호수, 1: 배양액 뿌릴 수 없는 땅, 2: 배양액 뿌릴 수 있는 땅 map = new int[N][M]; @@ -31,12 +32,9 @@ public static void main(String[] args) throws IOException { map[i][j] = Integer.parseInt(st.nextToken()); if (map[i][j] == 2) { able.add(new Cell(i, j, 0)); - } else if (map[i][j] == 0) { - river++; } } } -// System.out.println("river: " + river); int p[] = new int[able.size()]; int cnt = able.size() - 1; @@ -57,33 +55,25 @@ public static void main(String[] args) throws IOException { while (cnt2 >= p2.length - G) p2[cnt2--] = 1; - do { // 초록색(1), 빨간색(0) 분리 + do { // 선정된 위치 기반 초록색(1), 빨간색(0) 분리 // map 분리 int[][] greenmap = new int[N][M]; int[][] redmap = new int[N][M]; -// Arrays.fill(greenmap, -1); -// Arrays.fill(redmap, -1); -// for (int i = 0; i < N; i++) { -// greenmap[i] = map[i].clone(); -// redmap[i] = map[i].clone(); -// } -// Queue greenque = new ArrayDeque<>(); -// Queue redque = new ArrayDeque<>(); Queue que = new ArrayDeque<>(); for (int i = 0; i < p2.length; i++) { Cell c = able.get(selected[i]); + Cell newCell = null; // 다음 상황을 위해서 객체 새로 생성 if (p2[i] == 1) { // 초록색이라면 greenmap[c.r][c.c] = -1; - c.color = 'g'; - que.offer(c); + newCell = new Cell(c.r, c.c, c.cnt, 'g'); } else { // 빨강색이라면 redmap[c.r][c.c] = -1; - c.color = 'r'; - que.offer(c); + newCell = new Cell(c.r, c.c, c.cnt, 'r'); } + que.offer(newCell); } // //tempmap 출력 // System.out.println("before"); @@ -96,26 +86,11 @@ public static void main(String[] args) throws IOException { // } // System.out.println("------"); -// BFS(greenmap, greenque); -// BFS(redmap, redque); - int answertemp = BFS(greenmap, redmap, que); -// int answertemp = checkSameTime(greenmap, redmap); if (answertemp > answer) { answer = answertemp; - // tempmap 재출력 - for (int i = 0; i < N; i++) { - System.out.println(Arrays.toString(greenmap[i])); - } - System.out.println(); - for (int i = 0; i < N; i++) { - System.out.println(Arrays.toString(redmap[i])); - } - System.out.println("=======" + answertemp); - } -// sb.append(answer).append("\n"); } while (NP(p2)); @@ -127,25 +102,12 @@ public static void main(String[] args) throws IOException { } -// public static int checkSameTime(int[][] map1, int[][] map2) { // 둘이 같은 시간에 방문한 위치 확인 -// int cnt = 0; -// for (int i = 0; i < N; i++) { -// for (int j = 0; j < M; j++) { -// if (map1[i][j] != 0 && map1[i][j] == map2[i][j]) { -// cnt++; -// } -// } -// } -// return cnt; -// } - public static int BFS(int[][] greenmap, int[][] redmap, Queue que) { -// int tempanswer = 0; - int[][] tempmap = new int[N][M]; + int[][] tempmap = new int[N][M]; // 꽃이 피는 영역 확인용 while (!que.isEmpty()) { // que에 값이 있을 때까지 Cell curr = que.poll(); // 해당 cell이 이미 꽃을 피운 곳이라면 탐색 중지 - if (checked.contains(curr)) + if (tempmap[curr.r][curr.c] == 1) continue; for (int d = 0; d < 4; d++) { @@ -154,10 +116,8 @@ public static int BFS(int[][] greenmap, int[][] redmap, Queue que) { if (-1 < row && row < N && -1 < col && col < M && map[row][col] != 0) { // 범위를 벗어나지 않고 호수가 아님 if (curr.color == 'g') { // 초록색일 때 if (redmap[row][col] == curr.cnt + 1) { // 배양 -// tempanswer++; tempmap[row][col] = 1; - checked.add(new Cell(row, col, 0)); - } else if (greenmap[row][col] == 0) { + } else if (greenmap[row][col] == 0 && redmap[row][col] == 0) { // 방문하지 않은곳이라면 ( 3% -> greenmap[row][col] = curr.cnt + 1; Cell c = new Cell(row, col, curr.cnt + 1); c.color = 'g'; @@ -165,10 +125,8 @@ public static int BFS(int[][] greenmap, int[][] redmap, Queue que) { } } else if (curr.color == 'r') { // 빨간색일 때 if (greenmap[row][col] == curr.cnt + 1) { // 배양 -// tempanswer++; tempmap[row][col] = 1; - checked.add(new Cell(row, col, 0)); - } else if (redmap[row][col] == 0) { + } else if (redmap[row][col] == 0 && greenmap[row][col] == 0) { // 방문하지 않은곳이라면 redmap[row][col] = curr.cnt + 1; Cell c = new Cell(row, col, curr.cnt + 1); c.color = 'r'; @@ -183,7 +141,7 @@ public static int BFS(int[][] greenmap, int[][] redmap, Queue que) { // System.out.println(Arrays.toString(tempmap[i])); // } - return flowerCnt(tempmap); + return flowerCnt(tempmap); // 피워진 꽃 개수 확인 } public static int flowerCnt(int[][] map) { @@ -233,20 +191,10 @@ class Cell { this.c = c; this.cnt = cnt; } - - @Override - public int hashCode() { - int prime = 31; - int result = 1; - result = prime * result + r; - result = prime * result + c; - return result; - } - - @Override - public boolean equals(Object obj) { - Cell c = (Cell) obj; - return hashCode() == obj.hashCode(); + Cell(int r, int c, int cnt, char color) { + this.r = r; + this.c = c; + this.cnt = cnt; + this.color = color; } - } \ No newline at end of file diff --git "a/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2505/\354\264\233\353\266\210\354\235\264\353\262\244\355\212\270.java" "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2505/\354\264\233\353\266\210\354\235\264\353\262\244\355\212\270.java" new file mode 100644 index 0000000..dbc99b7 --- /dev/null +++ "b/src/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2505/\354\264\233\353\266\210\354\235\264\353\262\244\355\212\270.java" @@ -0,0 +1,22 @@ +package KSY.personal.B형특강.회차5; + +import java.util.*; +import java.io.*; + +public class 촛불이벤트 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int N = Integer.parseInt(br.readLine()); //양초의 개수 + + + } + + } + +} diff --git "a/src/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" "b/src/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" index 2e9a8f0..8a87ecf 100644 --- "a/src/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" +++ "b/src/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; diff --git "a/src/KSY/personal/Practice/S15642_N\352\263\274M_4.java" "b/src/KSY/personal/Practice/S15642_N\352\263\274M_4.java" index a96c7b3..de8fbf9 100644 --- "a/src/KSY/personal/Practice/S15642_N\352\263\274M_4.java" +++ "b/src/KSY/personal/Practice/S15642_N\352\263\274M_4.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; diff --git "a/src/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.java" "b/src/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.java" index acb42a3..86c1345 100644 --- "a/src/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.java" +++ "b/src/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.util.*; import java.io.*; diff --git "a/src/KSY/personal/Practice/S16554_N\352\263\274M5.java" "b/src/KSY/personal/Practice/S16554_N\352\263\274M5.java" index f1e27a9..65cf7b6 100644 --- "a/src/KSY/personal/Practice/S16554_N\352\263\274M5.java" +++ "b/src/KSY/personal/Practice/S16554_N\352\263\274M5.java" @@ -1,4 +1,4 @@ -package KSY.personal.Prectice; +package KSY.personal.Practice; import java.io.*; import java.util.*; diff --git "a/src/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.java" "b/src/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.java" new file mode 100644 index 0000000..6f04c17 --- /dev/null +++ "b/src/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.java" @@ -0,0 +1,40 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +// 70012KB/ 560ms + +public class S17219_비밀번호찾기 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + + Map dir = new HashMap<>(); + + for(int i=0; i Date: Sun, 1 Oct 2023 16:30:49 +0900 Subject: [PATCH 24/27] FEAT : 231001 --- build/classes/.gitignore | 1 - build/classes/KSY/Building.class | Bin 0 -> 613 bytes build/classes/KSY/Candi.class | Bin 0 -> 573 bytes build/classes/KSY/Cell.class | Bin 0 -> 587 bytes build/classes/KSY/Pos.class | Bin 0 -> 369 bytes build/classes/KSY/Position.class | Bin 0 -> 365 bytes ...64\352\265\220\354\247\221\355\225\251.class" | Bin 0 -> 2424 bytes ...11\354\202\254\354\232\251\354\236\220.class" | Bin 0 -> 2123 bytes build/classes/KSY/S1005_ACM_Craft.class | Bin 0 -> 688 bytes ...3_\352\261\260\354\247\223\353\247\220.class" | Bin 0 -> 3598 bytes ...64\353\223\234\353\212\224\354\210\230.class" | Bin 0 -> 1372 bytes ...54\353\205\270\353\257\270\353\241\234.class" | Bin 0 -> 3248 bytes ...74\353\247\220\355\225\264\354\232\224.class" | Bin 0 -> 2317 bytes ...44\353\246\254\352\262\214\354\236\204.class" | Bin 0 -> 2866 bytes ...6_\353\254\270\354\240\234\354\247\221.class" | Bin 0 -> 3102 bytes ...34\355\224\274\355\225\230\352\270\260.class" | Bin 0 -> 4098 bytes build/classes/KSY/S18809_Gaaaaaaaaaarden.class | Bin 0 -> 5015 bytes ...9_\355\206\240\353\247\210\355\206\240.class" | Bin 0 -> 3152 bytes ...40\354\210\234\354\234\204\355\201\220.class" | Bin 0 -> 3680 bytes build/classes/KSY/Tomato.class | Bin 0 -> 445 bytes ...10\354\235\264\353\262\244\355\212\270.class" | Bin 0 -> 1322 bytes .../classes/KSY/personal/Practice/Monster.class | Bin 0 -> 453 bytes .../classes/KSY/personal/Practice/Position.class | Bin 0 -> 400 bytes ...60\353\206\215\353\260\260\354\266\224.class" | Bin 0 -> 3036 bytes .../Practice/S15642_N\352\263\274M_4.class" | Bin 0 -> 2007 bytes ...54\353\247\210\354\212\244\355\204\260.class" | Bin 0 -> 3274 bytes .../Practice/S16554_N\352\263\274M5.class" | Bin 0 -> 2222 bytes ...10\355\230\270\354\260\276\352\270\260.class" | Bin 0 -> 2233 bytes .../KSY/personal/Practice/S18110_Solvedac.class | Bin 0 -> 1850 bytes ...206\265\352\263\204\355\225\231$Number.class" | Bin 0 -> 622 bytes ...8_\355\206\265\352\263\204\355\225\231.class" | Bin 0 -> 2818 bytes ...64\353\247\214\353\223\244\352\270\260.class" | Bin 0 -> 2619 bytes 32 files changed, 1 deletion(-) delete mode 100644 build/classes/.gitignore create mode 100644 build/classes/KSY/Building.class create mode 100644 build/classes/KSY/Candi.class create mode 100644 build/classes/KSY/Cell.class create mode 100644 build/classes/KSY/Pos.class create mode 100644 build/classes/KSY/Position.class create mode 100644 "build/classes/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.class" create mode 100644 "build/classes/KSY/Programmers_\353\266\210\353\237\211\354\202\254\354\232\251\354\236\220.class" create mode 100644 build/classes/KSY/S1005_ACM_Craft.class create mode 100644 "build/classes/KSY/S1043_\352\261\260\354\247\223\353\247\220.class" create mode 100644 "build/classes/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.class" create mode 100644 "build/classes/KSY/S14500_\355\205\214\355\201\254\353\205\270\353\257\270\353\241\234.class" create mode 100644 "build/classes/KSY/S1655_\352\260\200\354\232\264\353\215\260\353\245\274\353\247\220\355\225\264\354\232\224.class" create mode 100644 "build/classes/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.class" create mode 100644 "build/classes/KSY/S1766_\353\254\270\354\240\234\354\247\221.class" create mode 100644 "build/classes/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.class" create mode 100644 build/classes/KSY/S18809_Gaaaaaaaaaarden.class create mode 100644 "build/classes/KSY/S7569_\355\206\240\353\247\210\355\206\240.class" create mode 100644 "build/classes/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.class" create mode 100644 build/classes/KSY/Tomato.class create mode 100644 "build/classes/KSY/personal/B\355\230\225\355\212\271\352\260\225/\355\232\214\354\260\2505/\354\264\233\353\266\210\354\235\264\353\262\244\355\212\270.class" create mode 100644 build/classes/KSY/personal/Practice/Monster.class create mode 100644 build/classes/KSY/personal/Practice/Position.class create mode 100644 "build/classes/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.class" create mode 100644 "build/classes/KSY/personal/Practice/S15642_N\352\263\274M_4.class" create mode 100644 "build/classes/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.class" create mode 100644 "build/classes/KSY/personal/Practice/S16554_N\352\263\274M5.class" create mode 100644 "build/classes/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.class" create mode 100644 build/classes/KSY/personal/Practice/S18110_Solvedac.class create mode 100644 "build/classes/KSY/personal/Practice/S2108_\355\206\265\352\263\204\355\225\231$Number.class" create mode 100644 "build/classes/KSY/personal/Practice/S2108_\355\206\265\352\263\204\355\225\231.class" create mode 100644 "build/classes/KSY/personal/Practice/S2630_\354\203\211\354\242\205\354\235\264\353\247\214\353\223\244\352\270\260.class" diff --git a/build/classes/.gitignore b/build/classes/.gitignore deleted file mode 100644 index f17a489..0000000 --- a/build/classes/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/KSY/ diff --git a/build/classes/KSY/Building.class b/build/classes/KSY/Building.class new file mode 100644 index 0000000000000000000000000000000000000000..ff90f2ed99716c60e7332afdc02961e8ea51e775 GIT binary patch literal 613 zcma)3T~AX%5ItK;KQ4tr1@UpyCrlcP3A|8ZB2|;dst*@Qcp}@|5f}IFHhZT8f0>CU z^6qak#<`6KAtCW$XJ>ZLIkR*2$FHy70qo&X9TkPv>-4mLG`DVQ{dpZ#h4l+_Y5LCi z^ZvWZ1!b&IWt)?N8Ywh6uyMzWx^`&2CraiEi?`M?x)X1ouqC#3%pl4knZv$@h#%JsDM1x41~ z6BDfw_6y3KiH1Wgx|+j6-w~4@hs?OUDCv5i;Nbu0DI2DoJm1#QG7g7N~*`Lt$%YeB)2bQLG=7{(c{6B|P{%8w@wei1y zH&95@Fpn9%vL$mfeY(55fA)O%=4=?n)hA^~Xecbn_g7>sqb3okFLota15LS4B-;~I niA%m=<+QW<1?_98D(Fb82?p551BtCgo?sJOQYk!?Si$yh1@WXk literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Candi.class b/build/classes/KSY/Candi.class new file mode 100644 index 0000000000000000000000000000000000000000..58a39dd80aa152cfe666ccd282de74b37ffe335a GIT binary patch literal 573 zcmZWlO-lk%6g^MP$#KfGw9-Corxr;Om?&+8K$2QmLTzHy!JgPi;~4#bR<*8GKcGdM zK$BWT>;8)N7oz({DW%2SIrrXk@44rFe!sl~*ushg8-r^ve;m)KdYMabFicg|OEq3o z^-BDpSk+1yxj}{mlnR;21VaJ35 z7ba<2BwBERBo&OoDUeTrgmDH>j_cZf^Sr1Thib8=3C(&*trb**i+oUYm}k7f;LiP8 z5Qk_NO|?d4e`M&6zL!+=L`Dz`5<(+R`z{pBVvf$L7ptQt2g3|}t2*l0O98AxO(7owh63*OZaF#5e< d{)tL92ni<;CYz+Va literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Cell.class b/build/classes/KSY/Cell.class new file mode 100644 index 0000000000000000000000000000000000000000..e7809eb82b0907a61e52113299274eb28c783c58 GIT binary patch literal 587 zcmZvYOHaZ;6ot<~0fmaFfLeU8gf2uA78;Ek5)F~)0z=};l+tKTZIcSF{Yx&0iHZ2u z#2;lmGaznka%b+`-Z|%+`}KW408m9Sfr!AwLGz?ib388rO(1h&U0W5;^3N(q?F+~5 z3W$(VXV?N!+h-+a2VNknHG%k!>$}}uCZ&44UTz6!wV>l95yiBQ6f(S2Dz_#fFsmbm zxXiLT62mO7V*+u3>4xh&hrP?T6CPV_&tZ2Xur04;g|0l0idy&Fy%I<^exbJo64JOf zv{=?Li6k4EK`*qOJy$9fnj4#&>szP$*7yrMj=v_KiXw5M9EZjr9al&;wUbQkl;j>^ zq@c5ZikZi=ypuKWkTwf_%$Q4k%$du5Jl8xmfd_UD2=<6Ho-l`JEU;=0?_&`L zPgGL=LS>Rb`eo&G6kiI3k@F4zNLAw>XEUeuvGnI}s29A@>6QL(^na)S2R%O(Lv^S$ ZW-!JKhMIz8Fvbjq94@s4R#=Z<^#@tQQKbL? literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Pos.class b/build/classes/KSY/Pos.class new file mode 100644 index 0000000000000000000000000000000000000000..3ffdab62c807ee59fc2c372e14af25243e370fdf GIT binary patch literal 369 zcmXX>%}T>y5S%YbleWgD#$V7wy|pl;sf|7O`k#BulBIR&ak^P`}6zx4PYG$3Iqn_z^I7g3oEj2PTZg yJ_^QCAH^O?0(3$h65%P~87(zXz&WN#DgCcu2D8NIz{rLl*G5JH8O#wAF#iX33Phm* literal 0 HcmV?d00001 diff --git a/build/classes/KSY/Position.class b/build/classes/KSY/Position.class new file mode 100644 index 0000000000000000000000000000000000000000..29bd1d559952ff12779eb31a6ad8bcf947fc5171 GIT binary patch literal 365 zcmYjM%Syvg5IvKoX{|A-^$B&+Wt)XT>7t;x5rkqh#%mm6#EO}-0H%`In10pGw0mT@3#*Cbu8zg5zO88v3n5rWGdq*2c1yth)dyi zMRexw`<*aI36wCJjDTQl%1EYLglx6hta$`|J3b8y$iOs_#|$A;t$9-**e0?tR5fcN z2ZNQCjKaPCg&!t|!taKJQY#Kb*At0U{hz3(=dwqzTK}_c5DM+Mp9JBKRGa1YTBE++ zI2jG@zHXn!_wVC}$IBkI&4o&G(Nt_ora|!q6k9r literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.class" "b/build/classes/KSY/Programmers_\353\254\270\354\236\220\354\227\264\352\265\220\354\247\221\355\225\251.class" new file mode 100644 index 0000000000000000000000000000000000000000..9b48d46fe892120c4e4c086c729820434bb2ce15 GIT binary patch literal 2424 zcmah~TW}Lq82(N!-CP!dlmLOMK#R7}601<5!J;5Yq!(-}wSeL#-L_kjP1tOp#XD97 z^*fuSO>EKG+1<1M|_4y!EjHkHCrv z?X(t6Y35k8FEODfZGpPohH2Pc0`BIPBLbd%nGrnzH~cERs1sP;ZJ2s*KAq65K`oKe z1w!4Kq?S6OS%&;B3qAI@krQa@{(mMh?vmCFQ($%TvF-&%1GZ(DV=>7huzxbCXKf>6 z<`jek>K!X16OH%HYZR;^LPfDRKRT*g`bfX7jp&ww)dG=?m^O7blM*^tFMrpK(`R9f9r!?d)O!}MN(H4Yo6Z%S3#n>SL-a{%q|%UE})=)nB~J|=lYc8tKP=9b09 z4PX~y3OWT=Er%Ij{${+<1?c4d8$baTgv{aR}W4%4sc? z*ZW3g`^Kw7EQb*bq8Eo1^a(6;Vsy}mq~bC3vt%r%z|QK>N@p=vm9Da+8on%&=z}UA z2aicGnK5miq}(BW>R-WD0FL_bgn($2l{%{87>@JEYuT)BjtI0>lc*fODi$@hWo3OVP`_hec1yes-s|temJdZ6U1;-V7_WXm6>UV5ilN+^KA3 z>~_>*?OqH}C8;!M7g3iD*jn-=yV9B83Qlq84rKCHQa@nGA>a7lf0J!81Z)Ij;%^9W zamC*Sp9;UCd<(w4TZ-^~?x+KNN;Tj^kWaN_!1pqK`EeVT6J!O~9%@!f7}t41QY+lE zs2`q1c=!vfDdP4bHgwOTk&?}n++D=hBDVF+qJ6lC`+Bz)u>C4_c6dA;-Why3i>_fQ zD&oP;x=39C`=nBtU-{e}{#hKL>%q=Ijj_8UID_?$VW%1iL{!gJ#IK>pjiKqF2nWN; z<+)!Ldo)yeT*H71@1btmFG?=H%X2@sg@y_k4tooDGW4`u`Q<9X)zGw8guP+UM|0h+ zZ3T=JFxFbY1n;y=q6adGCVx<13PVg?6Vubm#O+|>VocgWO8YsDk7E^1U^T`OK_2Vy z41La_0hhRb9~&^k%6*1SxWW_m4N<=3_xEVVuf+L_h<~FEH?d8)SV>u|cew}4fGke& zD}+B`A;&T`;V0PK!9|}RaT;gX4Lk4yCNV{}J8>Onx$=_Nhve`q8=xO=<2lL{a=eJ= zx$=?e1-!tOpL}2B^%CQpB)fBz1^K)UFJqd~enPgdII=6`Q*aNjzsGv&-p@8QUYa(IS9D`cq#|>U5tP5}a11?x%w*UYD literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/Programmers_\353\266\210\353\237\211\354\202\254\354\232\251\354\236\220.class" "b/build/classes/KSY/Programmers_\353\266\210\353\237\211\354\202\254\354\232\251\354\236\220.class" new file mode 100644 index 0000000000000000000000000000000000000000..bad9bf51287c25b1e9d8d1d2332b353ff17d1b7f GIT binary patch literal 2123 zcmah~-%}G;6#i~@lTE^c0gMs>m0C1`NHn!kfzn#6B^A&%iWS@964tO7HgvOCJGFgq ze6UaLt4^nAUl?cfL7c%-r%a#v(C7XaI(@g(O24}aKkP6qGugd+?)lC+-*?Wv{PyCf zWdMh8S%Xht*U8-Z)M=+waE$3`(eTp@nRf*OhF$*5bOc0JKq;FvZ5j03W?ie8%9(DDKqzMwY{Q*(Oo2Tw@Ag(cy_h-I zvFt)m9}xjY@`4@O)O|Jfrf7**i&mMX)L+;DAEb#}?f4p(Sla3hb$)eW_ATiB4Gz8_URYwhiQYOnbhi9k9 zP3Md;UZgY)gQdJt95EbAetX6+6f`llJ86{#+6MopOOpAtVc7zSc$MZxWj8S;vKsaZ zG_LbF<~YXZQY%?(Tt_YH!e~cR7@gR!A^Fl6R9dE^3n|hqns&jR^z_O~_k%jpc#RwR zNy9nDeyH(mqQ3^OvxjjF*APH7mXeVr7?LC0yyDVQ(WE*n#p&pL|G-fCov+U9hN$c=s1TDiML$SG29aC*%nW180u`*-cy57e5Bz539T2fx~t=3 zd_pR=d6iw*x*B1_NhW>>7j+o2+JIwDm#&yHWM0PvIGfs}Q6BctJPee=KViAe1hot$JqV|JJwb$54q{XPCgq51(T{wTgRkL486Bb{ps#NOkG4rEWpPd45=AS$pq&S zkEzk%A`WCi(NLsg4$){R7Vs={2q_tD9+4YC5e<6ayDPs(wOfeDr0G~-35R?*cf&8D z{!XU-ZZ-eS4kfv~i0%b6-e_Y@eDwHP4BiKsWqZpv? zFt&4Wn=nPsY3#rZZC|1l*BR{_`rjh<2a0o#w}jMshOsG5RXDlo!<(L%5AYUOasZle zj2%*l`l`B0GWOf(r?e?%I?i1`t2oCh`nev!yEwt0hLfysfR-TlV#wk>4%JEK+k=|F zP%G-feE84-1b!AL z5=ijQoxek<9$hyYNxW2b^{aYSU9Ych&MyJH#g&>O!u^*PlrXH+-KF# zNub%Ynaa17(;@zKS@+*{DKOvrN9zvL7D^j|h4$CpXoS=|ZT35%ZM=D$(ZFkK$_Pz< zL6xO#@_y?#5@C+V8I^B3XWb+g1g^grN2Se=XisLg80cIDDmieLCoIY}88>(Z#b_m;9;IpwV@7p1oqe@>p{A6pn^ao4*DJO5Xn zdgZAg*js83T}JP85N7T#$(O^f@Eoiye-5C=C)Sj0#8JXtupeJK z!{liN$7}-}>^-(qKNHyB=cs`Pm}Zh0KGzwUt!S2*JXFLNXzeuT&+zaEM>UMNRx7R= K-wHgbu&1{G*{ewa literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S1043_\352\261\260\354\247\223\353\247\220.class" "b/build/classes/KSY/S1043_\352\261\260\354\247\223\353\247\220.class" new file mode 100644 index 0000000000000000000000000000000000000000..c0c27937b7f071561188a2e85217675ee961e04e GIT binary patch literal 3598 zcma)8ZE##w8Gg?0-MzavcQ=`<~~0-mi1+yElIOdjLD|D-|w*)sJ-bHFVvxeMjSwe_sCe$Fr|on?0pM z5hyuk9yc3eW_+}vWAK7irvzLB5dm*YG#*Xw7I4?r^#~~Y62q1TH;Qzq z@Cg*RM&nj{W@6AvcAJASOQ5thF=WPi%w$x)=N6UpSd@@PYXK(Bgq<*>ae=bhfz~BP zUFl>rKH4nZYWq(NS(E8#BA!yQh5^}D(L_U}V^O1`j0kzf-pt5|m9&OCEpymPswfu- z<#mzxWF}2?%bal3epH}R#kv&<>6%WZtqC1fxP!Tn^bCibbi0JmtYIxS$ZXsxP+nWm zq^?JUfxD#9-6X$c)3*NRw zVhVGil4uRKNe&In#S(|*fMlYf8uv)6FRWndxU!k<5Lj!ovHQlU(%wuo#yo3iM3IV} z`DAC((O83H(VZB#;?bw1je+}hG=X*Zu?EAkg9O&p*4A{Z&?aW%NhlqM z!A5tR!^1Zbat5=xu3zqbOh+I3X*X)w#8)`USxQ2W>v#fRVw5a@kK|+za71HFM|GGO z6!2u?oF_hOBM}FDSce62_sOm^(}|=EBNv5DG?H6q7-Kl5BFbrB3L~%8F^(8#T2|xc zx-L=_i0epTl6E7}IAd0ru!zKEfl}Z`b<9k)+Ymf@`ekPw*D-|?Jd@1HNlWgjT$$t* zt;lw7#8W!HZ1-6@;V5Nye?`YLvY|Xva=hfqb2`2%4>Qk5ER!0OD__$wW3LRw5-BE6 zF_WV_zg8DGpLjS7GE?P?lfUxlVPCoirwZwFBSn3RvU1+{&FWULv#(x$_uy;M<@x+vUqO*0xxO2#-qZXG+mI28==GRjEI9HokAWh+nn>B;{`&dWz^CBTvw0rcWeP6n{Po(4J_IQ1jsb!w=9?cSSVgN+$`Wd|gz+3E zcnLR`EWqenz}mjI5SqvOd2DQ5Ks8rtxKcNdt@GI4wt&XIdEDFX4l4@?_idTOee-B( z@`OBdc;E{5hP{iDYIv2Sztet$gG$&pi{M*0X!s0Y$Ba+#>3t*npTY>#ai7xUcZaoE zl!p9yM5TL16NYB^&S(F%fQQMWwMlb_i)JxZ7)j4t1>E7_EOzCA!o{J0QG5k$SMjI| zy+%;E0Pid+xEfT3ucFt5cd%~`1JdY7?@Uk_K|?>E{bNWA1)M!IMZzdD)brVsHi4rd z%_z!k?7WI0fu?|TNNYBx0~XdpenW436`K^vCS(M!V8YP(a}Iv0f{f4h#MFEwcRnd_ zCi{m)PiJjU%)EZ9GvaLs1(!Pu5HUb!ekH8WA|RDE-us4r2HqJ(EaG0?YAAEa^ww{k z!}J`UuAjrR{C{3{lwx<(2iQqDz`hCMZgx^V`=x0^3A6 zYQ#ot7xmaE!e|sN*da{ZE20RC1aI`Gai4ge^2=O5P5n7MAl}4-;v)8l_pn#|75l{B zc;mj$_m6nNUc*80Z`xc(tH`3wrJ~(cgbr6R*~>}!FUsW%;OlsSZ>8b}zCr$iA4nhL zMZCnRsTcpiH}Nt@vO#=^Z{gd_PK)>pzQY(jI3V7|ce&=}z55QnM@hxw%*!j3d^jmi z;`_FAN<4=jFe83yLii!qG`uYa@FToR=?e2EcN8%<{WwEOXNDfdkEspd13ZMEa4pDe zZN*P16^r|saeD`|vjwlo9U_Jej-7a&*SMp-i2XQ=bJV`a{n9Rg^Nh5NkvaY^(7)sB zb?V;WxzmibSr*l=;%6!h71b&etupDX5VTLRMa7#Um}QiD0TU`!bkgz$s=2FE{15BJ zCn$4W$7)?}3f^Xu%9|Hi_D}I=8xeGj@TIOSv;H~2^xM-Ur}EpnV?{}-GRxWpZo>-r z1geWh{H$RE$&>muHjTn(O$DcY*E;^}uB67EyOBiMql_XQKt>P?7q+q|0cZV%35eyOxjMUFq%P?#c WaW0+891-ct4N*qWUs818(*FS_k|>w} literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.class" "b/build/classes/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.class" new file mode 100644 index 0000000000000000000000000000000000000000..a6a674c8efe60f80dea85e3b0a53490827662b0f GIT binary patch literal 1372 zcmZ{jOHWfl7>3^|r31$z*izBr9mN*WTEuz*FQBN^LeVOQxG<;ffCu5UIX(5VcVXOW zj0;!BKcF$zi17#bS77Z@eWxuHLfy>mn|Z(IyUedY-+uxa#yts-!0ua_*;pnXKQsJr z_2Y}xw_jFXzh8OvX7%Me39mrcg89UZEt>XxES+6YIak0pYT1^1QJ^Ifoe}U}Ddd%b z7PR}(3ZFn{%Cgl|c`2)$yJmJ#2?SDwoVhq-I+oto554Xqt0d5y`Y*r;#g|OW7T6hi zkZOQrT*tEKN3?Te;#p1=U8`W1Bmx4#>Mg4fOQzQ?65Ui-GmMw#=9HuIca)h|j>Jx; zV9l1ai)EMU%3P|M+p!B_iQSv>ka=Em)si2**dyT4c%d4ccH2-GF%ZH&os<0nyCO}m zL}v^HaZq16MEJ&~ntO&QakvTmeaCV&e7`_=4L)6V*Xe6^O&{?iiUHQDP-f{GpwmoY zJye1o!JuY1&RjGYHVTr&Kp$fI*2ztzHCI*AA%UJMO|@NWRT?i_i_EiuINDp#IXAdb1f$m6jYlRJ*$EXDRU`InYX}fA(IeuIKd$6r&Iwi$323JSl;C&>T z)SfTc^NbwhB3S}p!u37rC zg`0ln6FPx72nzD^10JsUTRBSZVw?r%)`1GzK2^;IM{U;QHje(<1nctMua?{HQ&MqS~`x!kI?5*HHY8ibzIl_~p6&$PJ#N;yKvlX103Jm`+&U?Fz zMC-AyIQWmgDaMjO7?YS{Bw8=cl@HT=ABOnL Yt(3Se5tQhYh)diNIzs{(jvn0o2Wz5AtN;K2 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S14500_\355\205\214\355\201\254\353\205\270\353\257\270\353\241\234.class" "b/build/classes/KSY/S14500_\355\205\214\355\201\254\353\205\270\353\257\270\353\241\234.class" new file mode 100644 index 0000000000000000000000000000000000000000..276db42fe18d418b9bacb8f8d48b2408b45f1d1f GIT binary patch literal 3248 zcmb7GTWnlc6uq*Ks=tgac(l6 znarb(3#Bx53N3|FUVV@cQc+n#NC-!=T?`gK2!W9J;|uY@4-!$uCu&GB>)bo`_*Eok zbnkiXv-jG2ud~nn!+(Cc2%rOZOeg}odZV#m^iaoy&)>hx zbxmOFwfOV#U@D#-3r0q-*@=RHIv&sRJvdDdVv~O%E<)7 zk(Ct_jnuHbaI$#iik-8Q&)M;$oinjppl*3BoX!>t)NaSez2!>m!Cn(jtO;LqGGDOA zE$qXS0*Zv^_rOWBWeuG^JciFmZ<_>mHf<`>JmfTX95UILcU*F|1ZdBtEp@DJgY) z4N}jPi$ff<*FyT`V}MpeHeyxo)SO7oVAJ!ip(3KNDLeBOc%!^8!`cJ;e{p2+3mlc($( zMcaoV8HS7G&2YF1m+&PMU*st&%bqXVMccwx$>v~UMGZxc^aQIwfte9~UZI!H>T}o()VvabsudS7n+2wk< zef^#;=A?%kABh&?iR=CGtXo)3+>#~I$z^DeIWW`qgg4Syp_n(pTni@G7tIuN3HyvA zD|G$lw?wNXAu9%P^IFkRA*sw>g{<^$OUAn``Oa47y9yTNAK~apw(_T|_ps#`>?qjE zx8Y7#q1v4RM=buOEkU+&lOC8u&H61B?iML3E%~vXZ6$VKCl%MRuW@CUw5+~J9475` zETAE_fX8Apczh1~=g{1@fELcQa;9w#9dkI=zkpC|4qXEa=#Cwj#nW?mCZyGAvp6%4 z@I6Gz-Sabu%;5ZQ5moMCP(7+oQQ4FJ7zHG*W3NZ^2W%NA^Zk6-d+0plrH=_ z)!beB{Q`z)_X{DtPS<{oSWGp4<%_9WB&PAv`50Ox`XPoDT&UA^S3)mKL}S|O(XyPe zTCOY;jp_e~v_w$aA$uEjyX$N0ujv1u(q+9RKUbtZ|BSMKG6KXeXI5h<%Xt{q@9?lr zV^^L2A>snRK{RC48S}8~40RrkoE{f=cj<2jXRu`!H!idsoJDaKH(O@$Wj(Am$h}drFGKbf$-GzDzQwsayyQQ?Zv2k>|A{@K zksk}a*efQnPfYUz;ZN8v{>3kV2WVCd1e7WqP^!_S)T33|i=c7bhcA(yPAH4y!eKD{o4^Y3_GmWOeqLw_W@yxU|wg(pd zT2e~}{91csYh+4W@@sdN{xPMBM!DOXyYl4k25VH zhQAX*w#PU=i5{H6)4az|xWVl3(BS)YUH%5}1BQkla}3uHIj1nmZEoOH)br~@22OKB zQVabP_)SE`Lw@Em1m?$-t(3Q@=d0LHNvZXQ+BJ=&+C7bPYL6=YJM0#VJ<>P7-m3i= zHI1wi^?q%ny}_@Kw2t(+g~4<5FH@TEYXQ3aM{>0BeVC0bpi_!yU=5KX$)7C!bV`VN z){%f5yi*QGh$tmaW%fpp2|}Z!aHtw{0QJ(_B`(FhVLPCMoAN&z!dE0Vwds&RUf08 O%@#)MJ(^PRqyGX~-_Yj( literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S1655_\352\260\200\354\232\264\353\215\260\353\245\274\353\247\220\355\225\264\354\232\224.class" "b/build/classes/KSY/S1655_\352\260\200\354\232\264\353\215\260\353\245\274\353\247\220\355\225\264\354\232\224.class" new file mode 100644 index 0000000000000000000000000000000000000000..25ffd41e018a37344b45df6498a6e4c66fd3a6f7 GIT binary patch literal 2317 zcmah~U2qds6#j16bkn#9v`rz1{QtDHC05(2w4wz;3Z(^ttpyY}$!%FkvT?I16ctbr zQO6l))EA!A!QssThe;UAI6nBKFTVQdn+@?@<&YJ5Q%%-nHyp zK}WqngXd-0@&2J{i;hMj1cvR!u`%h$^g(H+rK6)sAQssAbNQl6bZKUNa~+mpxsKQ@ zH4>8rS7r@7f)xTaieA(wr@~eddLoEorBY^<|dE_G#6{0*wLcjBJRw6EEo4C9tHLX@Aa@(6FS%VCvl!oVTC z$g#;wd2((F6;D-)5d$w_lml(%^D>tfXrIY6fV^+yD#h#xf}B%?;YSem|Y}c7oC*cWvNqs^?%$YThyFj z4Om^?KtK&wye#TavY2a)mL&?N zW-TG>01=u(!{`*Equ*d@8IP8+dSD9c_+WIk*fW2Roh2N* zg0`3z4OccQLn@~6@g;g=A+;Lw{02v^qBRzp$1$y4!IGG!b_T9*JR_ym$_y5f++YV<}D}hD%tE zPk66=jurSCD{&pGa0{#P6YKX2HsUw>{>A&`uDVgsDm1ivB|7Shj|rS&yn6gev`H3c zJ$}U*yv}m9asL~5lReOdpK%uF$gmGT;5=6$a+$(gc$;O x_&YC7@4U#J@6oma+C8Qa)^SNkgN}7NI&^gMPmtwZ^odP>vrh!xr*jQH_!q3MSN8w_ literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.class" "b/build/classes/KSY/S16928_\353\261\200\352\263\274\354\202\254\353\213\244\353\246\254\352\262\214\354\236\204.class" new file mode 100644 index 0000000000000000000000000000000000000000..5717e9c3665800937540077da966fdc0b90daeaf GIT binary patch literal 2866 zcma)7TWl0n82(N>?R0mi+ilANBgkFcmfDp9D{QgKOylB^iE=nJRG?Czro&2@ow<0#Om8tF zF;k$fBiU=jwi#(l{ueft>|QG)u%P35I9eGaZdeI{>As$h5}vMX+Di1bN({~o2Yby_ z)=DNaD(VF4Z7nP54~2^o71QWpT(CB`XOEdSqxYFc)J&_GE})OgLWxu^OYf!;&x;+H zi5pbtlgiQ6pUIkW4YM#?piIK^=E2FZB@eAmcrizoX0E_Y-;^p1+nlJ!e5tg6;7dyR z@Jvy~qA9>{Pg_|DezCv}Ck_@&mZlaS^^*+^RiX4q(K*5tdiHfP0HXD61z;lv8urXnz2&0N-s`PZb= zMt?@bN~~hL_gJwQiRSAGg=FqzK)yM)YTo0PgxI>_dJ&Q{E2~6`f zT+J0Hf>4z*c5MJeBRYhrtdf_93QX|AYfLfnXZq;3-j4l5;Vx6dx1g z$4K{a5Y$g`wt283%xPxv)J#6M>hP~amSl*f$})p|lwm-)`h z>rTZqYKu-j?4uepqU1ASS7s7M?|!*35}54 zng$Mg1hVZiK$NXaC0QYQ%m?9y9fJd4@*M3?jnC5AS2|x^blFCy)m>R)+-Rii(W@e* z;vk1+S2CCGHSefuzSfcR*&G$V1-^WjCH4RSD>=EQf-qe z`|a>V1J3e*YY5F#n`uR}YQ4& z_LjGLx5qq*L$;Q(yI{lJ=9Abvt`Ts{-~|=0n;3#MdeykJIpEP9rJq`_=WVE7Pr&W1 zm5bVdTUWg9f^}H0@w&f6M0e>m`9ub)g}2&MIXIS<`H)?2k2SD&vQ5pyup~zmNRC{@ zGQM5xyM{&NMiY6_LSC#QC)zmI+cAy9#*1B;0h8C*e&|T@#?4_i4&z1~!yLSUxpA@e{U+U$D*Q z`X9te787TRxz&m9@DS2u`66*18Dz=(CNazm9_C?c5uf4!4ze2U;!X795uSmq;y50K z!Sl0A9KmB;sVw0k9HL$oXX^nx&Xog6k--y`I_Z4{p5)5Kdeq`6t~6FfWrYmZ^rNEm zLQ#6LD7}Qga0CNzu`U$?OEAcv>k+!Tu51!@9&1!^r0~|#SYqA>8anHlb`0+ef zwRnM<$}^t#c8o}lb7vUtF(#_1cu_^YiiIkcs(49dfrb5jNpM6oYK>!T+qJY*l7PLN sqav*TjS4Zw3##rKUa3!28H6v+pfS?LeSLinwm(tnU>+|MeHmW)7d-r^LjV8( literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S1766_\353\254\270\354\240\234\354\247\221.class" "b/build/classes/KSY/S1766_\353\254\270\354\240\234\354\247\221.class" new file mode 100644 index 0000000000000000000000000000000000000000..fc62a6b2ef5f1f7705d3f05feef0b17ce246eaae GIT binary patch literal 3102 zcmaJ@TW}Lq82(P0u*qh*wFC$^x!Xc7q8On;6p%`wr9iQ@1*O|`+b*O@NH#$6hFBEu zf_MQDLD71_`3<{MRiTPfOA8v*HBRbj|LYe2uyA^qsG?MV2_d5srN(-fy(AsSdX;p2~&ROgidR~ zObYm#%eW5G?4WK&1*TW;YA#S{vl3>sKPcU*8xMtzxMjwoNd=XRz($#|hEVIcM!_^% z$Sc;T`udE7(YwRYdyRyG=>q<|E)LDYM6~V0uD*f zmnA3N7Ayo+_%Kgq<0gTb)ny?y?JBCUK!O&Md;yeo&kz+XEQh`}{@~tUr zoPAa=*;i|*!7^4UmSWKgM7J@8xll=T32G&WI_9Flq1Ygqs91ysiMpkPY1Wm^^j3ix zHXFN9vQ=82G9%2hiWTrExILfjlx0R5vWT6reMZzgEHPEML&GYp7I3o$y|RM@rd8Mc zxArP~HYmxgVNf~BMP6;XE3sC?UDBE-Y88zK#!!1);`(3q2d^F{(=g&<~!Cl zv@Vg*hnmf#rJ@BMFSesi!483mHdPx!KN@!8J{FY47Fbmrdv|TEMdBG;G2cJ9%h( z%1Ci|bj$p8qgR6=ExBTHr%Fk`h5?wI2Ju)Va(zeStjo;r(-6TROUT}Cm&qrc>Y9*j zzLQ*cv8zHyE4nLHW2fcV0k1BYCGqRA_yjH_wcI>i;CGc?#NAU#PYd}wKrOb}8OQz|V zh9_-}ncO%Sw}vGB;~Ji}H~qf6zpMeGsj0<>5SzVck~=Ar_ap}>XSX33`LDwnoS8{oU^k4 zJ9k;Y`0St$!ObK>{IxKQ{)8SMkcUtqpWHeU#Wr$94*BS+Y~gFX5bMv-I#j z#%Z6e3Qj4w$Rn~XmP&+;CR3il)2=(+>t%kh0F0ma0KmaF9^ZT_{A%F8;J<6xDBPdh zYL!o^2Hf!SsbvBDpU5u{CSfv-OyRqenyJ!E#m6*BtvEJ@s?IU^I={e-QOq61{N^z% zqGSmrH;-cZDC%3ru%dGmw{0E6%Fg9!1V+)===3|&xbrgZ4!FkOCXAtpz)g*cGvFS< zEWhG&Uq)yQEtIxi!L|x?47-KT?Q>nsT=Th{-QTEy67X-uWDD`)*9EILi z`I7S_2}(~AdPLw%=11vf_;lt}ZCx5qrSVK{8qf3hk}RVWvWzFOm`^V%S-iz8P%TTh znx)&ovbFFmZpSq2<{c)^|HHgW9EBgpF$=Ho=JOWj-~-IXcbJDCDF2B)^fMOX8Yjme zwDu?OGY(V>7ivT$?;rE9Tr{CpwDOM8fqK!y?+Eo4ZW9k z1vX(P`Mph<8%IS2-oZt_9pe!wWgepI@Gjp}#X=^}zS z#xe&V+PII%aXL9=eO;oj?8=Y1@)PPlgEzx8^78Ykf+_`z6s%Afu~4v`+h}@**;UIa w6?{hh-)PFP2HqPW6m%0*>G%tt45$6X|AQ$!Jg_W7UN`bbYh)~t-RfWb3u}x2wg3PC literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.class" "b/build/classes/KSY/S18428_\352\260\220\354\213\234\355\224\274\355\225\230\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..0d47a65e3e1f97274cecf34e95a437891771702c GIT binary patch literal 4098 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 literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S7569_\355\206\240\353\247\210\355\206\240.class" "b/build/classes/KSY/S7569_\355\206\240\353\247\210\355\206\240.class" new file mode 100644 index 0000000000000000000000000000000000000000..2db0d0de9eee441d5280c56054c1280d915527d4 GIT binary patch literal 3152 zcmZ`*S#TUz6+N$KX-%tVv8}eP*p_3*36d>KLW##{L9#77_Sjl1OV$dpTcegV)@WwZ zGhFdz|>V)@7qP*g!tl`1GGKB$6%;wOAT4C1_=O}2$f z-E;4|x9>gozVnu!|My2f2Ji^JtwIsla;9&%zVGm%aMOi8i8jZ&iu}qtQtGZ@Dz}=A?w|o%r>+rxUrJxQq zCvDPE1}{fCV+pG}J2Ph4{pMKQ64>0CjGFNQ(~e0!Kj>|BLThkgtBwk244;{br3H-6 z4RE*6JY&WZ0$Zy`J4^WcGIlI6*&@+tC$2=TR3?^8q*d%<`HojCSs&>sT2$<2go5E% zc4ES^t?_e~Id0i1_6SrKY>`ANn_+azoXMGecmNNo*mp49W+*bhKlg$*- z=j;;w!#b&Ph?AMja>h$Q&$5O2QVFyHhb4v&uooo^>jM&rhB`D$FHXxkq`6cM(hmx3 zbI>>}%gxfUY%I<`YiPw*6-Nrq&Sqlq`kY69a@tD7o{&COIHscm$4NuZ!MG%qKt*-U zy>qXj9gj*dCs|Y;^17@J+;&8CoR-mi3F}J6$)lkY-72~SHkFV@5*cgKvUT*}EK{dU zJ8g07|3r?cI7ecRj*e35&q*UHNX7~$q*K~a+cxKpTaRZg4d-R$!{n-@cz<%n%p^4o zVN}BZkbqhp;a|-_IUd7B6&JXgN^yF#R@TyCVobo3l+3*gRc z9>2SDc~9v#r6Yz*OdU&~m`P>koV7mUBdEBJ8IaMgsH|T^U&@kj~23 z>_+xHwP{bY{gwByuuzC}V7GSU95$jha|m)ybn`jI{$v~$Z~`vJ(kzjk@|ubCtejmJ zIYV}?i{)@YMwsRk+EMG#nB4Fy?mBepB#E(y$Ayc> zlZ)pBPY+6E^6YSad2-|}K4|nSr#1jL-#}f+`<6EBa`y~-l%DTFcT_i3uT%q$s!}bJ zYUsQCLcwOf15P#{f{a+jh+7;B7@en0K1V%&1;;)6S74Mr^*V!P&L?`#0o$;hjy_c4 zJ|@^f*-gt%3Dx~ema>U?2Ubxvyo&pWZ(;8Ws#kEJa}{+QY2ZlX3c@RB>RLtX@Cw?x zSJ6IvU>QeOaH82=>0ZXEAL2~dQr0q*h5bvIyd$(L99Y8X$}+>>XapJ!y%4siG*suli3cmoS1~kf_>F*}yH+srCO)iS zu+mrf&fPyB5Hxxg)_ySW7j*P4ti3v~3qv>5g|(|oc)POvP4M>cQw%lhQYO`2gI1}3 zAJbvYfp$YG$y?A3f8E7!Kx+0a1RO0Wwd^f~94(|6fkjL)p?49cVgwg4Y6K0>BKj30 zw1{paWT=ZcNr0>>*l2_vzK$l=l-KI6<3P#g?$4JOV2qH1$bGR`q*G3a<%}0luN`JT z9mGRU|BkrA!6j4|!}}S2TQR(!seNua0si@*kSG_{-ZAvo;FTjz*BJaK#Sy1_?AekW z(GM!ixH7l|?VzDasrKM9KC+CbYnSnHKA)7lbUT#(8=5HxCHuhr;2Shn) zg~2PxPTn^5qCqt9X3>U5(TPXIGrT^$gs`}Q!(xT@pYcBP3$%$}pn;>*&?PCbX4j*_(W8QlBV}?P5BqR|Dgxnq^n2lp`%wVzWj3U`zA9g H_}2dbrqabw literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.class" "b/build/classes/KSY/S7662_\354\235\264\354\244\221\354\232\260\354\204\240\354\210\234\354\234\204\355\201\220.class" new file mode 100644 index 0000000000000000000000000000000000000000..29b3984e28ada60f9791bd3043f6c9bfc82c6602 GIT binary patch literal 3680 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 A0{{R3 literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/Practice/Monster.class b/build/classes/KSY/personal/Practice/Monster.class new file mode 100644 index 0000000000000000000000000000000000000000..34bfd0df66cfcdbf7cd4576dae8f3745bc95c6d5 GIT binary patch literal 453 zcmaJ-O-lk%6g_X8G;PwdvLYf^p%P6+SWvVH0?9tW5?aM`eAtt5CdM&ZM~iUNqJn-v z5QK|bND$Hw=&z`MA-ZEhi=f55?|zFwN+ekz=*ZE;iIcevq7 zL+CrURdt0EfXXmb=4V_txmD8l3T0uq3_e*rXJ8oy)#4Sw5Y7G$H3ShR;6ySX1aWHUgWrpy8UpBNh-9TDc59V_a1MCE>~Y!# zH}l+)Uj9>5-4j`5n92To7l{ky?3!bUE$Knc<`&aS3&-t?`*!`dbJyx#H#)7G_EV$% zc-5&tbT6Ohz55U+K|cCDg^cu(ho_D_BMTx#?*K)IG~vxfQm@cbQ%wrynizhel7bQP l;a)op6)P04Vw7s}?-h(8Mj0*lC_Lauk3=Examo}-d;vHHW~%@I literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/Practice/Position.class b/build/classes/KSY/personal/Practice/Position.class new file mode 100644 index 0000000000000000000000000000000000000000..59b5301e093b43aad40c9716e13a01530293203d GIT binary patch literal 400 zcmaJ-%TB^T6g{^s53vH`GinS==)#I|r*UIqLL@+flDINMo#>F-nzr}}?%cU_;V0k% zH7@)BKSlTk;~jME;@sSG=047y&+qpS0J~Vtz#wcMch1}!8O32Be77A5FHxR!+hME{ z6$TktgkoRZ3fC9GrQ7QDrI!#WV$>NPA-%5xl^hUKm3qC}C0K{yh0MW(Z6k|0f?26{ zXFw>}NFlAWc^es|S!t+1HV4-|8J&opFA1ea=n20oBBlACXeC!FCX^fhyWJz?I^iJl z|);hKA+Rpjp@#*VrIKI0d4~LVNhb?^$%Iw1Ak1!Z)iX*foj>O19yUcNR$`!h< z;JjkiSsx+qY>ZHRX30Q_V}APFgoPI8Z7i@>{%ye`mY8w#bcG&Vm@YAR_%bsCD?i3d BP#ORL literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.class" "b/build/classes/KSY/personal/Practice/S1012_\354\234\240\352\270\260\353\206\215\353\260\260\354\266\224.class" new file mode 100644 index 0000000000000000000000000000000000000000..b124eaefcd7a32253323d66fc4f7c593c25333cb GIT binary patch literal 3036 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 SHyU2>pIlGZuc`Lon|}e~_|n?| literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.class" "b/build/classes/KSY/personal/Practice/S1620_\353\202\230\353\212\224\354\225\274\355\217\254\354\274\223\353\252\254\353\247\210\354\212\244\355\204\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..88cea36150aec8c554dedec1adfb2bd1ca073a1e GIT binary patch literal 3274 zcmbVOS#%Rs82)aXcACkQLQ8-k2*_fqEwL!ArijwGMN(RAZ4Ib6Nv7>Unv~3h%^h*W zUBLx+MeBkKE(x``oa2)|d5&+M!n4*9#I+l-hkP`%Dfn)Z5u%EqRC0aq{;H&j%@ zt)U9l0(D_CX>7`jM2&Qx9!(em_2E=ZPxR|)Q+^kOE_>Lt1TG8zPkJ3RJ))aQfq9Kv z!X=u$cG^r1bx3OJ)w^THsBNZ_mV$bL21mnmhOpo&iLOMm{K ztzfOd97iK#n+gAQx;5OTkE*O=u3cJ8gtM04-Iv;KB+b2Ye**#z z*mP!HsA$J}N%RUjTyUq1k>g4`HfZRSXzrx3+ji`zxC+-OxVp&E*%M0I#*mTLa4oK* z=}|px8I+v`Ii%qF>9yjNs)`W88oIEFy%ihQ(;EojY78|6RrKIS1veBc*RdI-23uHK z?M0t}$4=ce%JvTG7JYU#2J`#+H4NZp0cEG2$Qa#&vdV(x@tDHtP_VgZ!HMpMbXwmN zHZ5C41a1#*#a0Ek3DlO7!^CK~9XidktU`kuqLv~3zO+1|`GL_HA%Gnno&#+Rc{|;$tr-ohF%_@@3tJ|rxBvx?P zNlU08r}kdlso)L{){@`FRSkFHZq|V;+|yg2K-o>-@6~W0_DMZ`gdwj#gBtrjg#8*G zknUF-J2HC0k{ch=@Gu@>M9etJijegFQR)3-0*hF*X8@Ia+>0kPJc*}Rl*78U$sx!y zWOEIkA(ASQ4r(~$bg`Yv2TjhE=QX?_+qG(!9Bfi@Si?*5sHqxEWUOH+c}2skjwF^y zS%!kwixutk%+$1}!+Ls%$4zO) zwpCBPDc)+=?O!1jsByKq$I$1i@w%mcuY6fknZ?HA=x$SeF0XnVq!1zOmT}xtiGhM_ z9MKAVi@^yDN4#!lTMpaCF;ann{choPd#jI3eo!gV?~=#?)kmmco2P}ko;6wQ7#Kq& z;PI(NYZ{R?S}P)tBO?%)HHIeNta0oSv^E^5_0@ikdwgmZ_rHkQE%NKZEDjK>R%$&i zaCq{kminh9ex8Q%#^k={mMosl;<@H5UgYoPV+`~6_!+<8HHKWK=WZU4__e5x8FFl-w|@N(i=bJX literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S16554_N\352\263\274M5.class" "b/build/classes/KSY/personal/Practice/S16554_N\352\263\274M5.class" new file mode 100644 index 0000000000000000000000000000000000000000..78d467fff0e7767682543e92d027b1ca01fa1951 GIT binary patch literal 2222 zcma)8T~iZR7=BK&VPRb>5)lOzEq(+9A_}yErTE#VLZF65fmYol3$BJuy1Nmy->tT_ zz3Eji>`k5NjJ;?t3^R#Soc@5`_dj&n=^yAgwa?iAk&$*fnd~|HzURE>dEWOqZ}Q9E zKm81#7hkFf2(+C|Oh)sjb)bt9TJ z?Ahp8>Z+Oc1ZoW1oi`nUz;sMNu?usqfO_3>EzitI>y&_q^GmN7rNK=JY#*rxN_dWC z&z>k)*^KE7GT<@Gw!9&MV5B|Ch$nLyQ$rA89h*=uuxZ4y&3IuhWjYf^Dr*WfjO5Zr zHfcDPd|x&y-W7{T_Ko}xZah_)Gb~$RYh?NvXoC`lc6uRg<~=KCyDD}Fgna^5E*cwK z^{Cjz2rG^gg_#-CF*D~(gTz$qChZkp%+41)5;u*xin|WaW3P&~H7QQqa6NNQ$3E<5 z-Xy%n3OIReHNv2VRzzfW+6A^n)?Lz`)UXo=<)Ti4uP&+_Pl_tK*8zXtVHpYjkU;Ya z__2bwioW8P=nv~Sf?ifFSD-4YK*w3#WvT=kMZd)G0&`Kt@N_^T(a?pXa@D{Zq?Mz5 zq{jrBd^Eli*9b_%Ai{MJcv;6rJg4ILO4D zJC1R~)o~dH74PO89vF&D$7Ie0(mFCA`wio!Ggt5oDRwT4`0hc>>bTzZ zG?1EK&%Z1V*r?$%7@FDC11LtAyA?j4a~Z>TIHjbC0w|B#W4k;|2MyEMn^EeZhX^ zKEg#L8Ug#T{J7JX1J8&jM}`LxFK`vPufx;o2qyp3o6e@ve%UD!Nn*vqqbkd)`Tg zkcIn`ivt|ZW+vxbbOn#yM-wR)aiOKVg!dXgD&dp!w}fb+|K5||=xX>>njXlN9YsvF z9Jz~DIV#Na1%^qsbdNPFmzgVR4Ng=xGmF1gGd19AsDoNNNMUr!-w_;Oz7A1IJ^b|J zFoxLtPx1dm9DSIeWs3F;j`~^I?W@+r=e{QEu*>HyxT9xzCNofvn#a&Z_%GBy=3kAr M07>7WJ%BI%0hzY~L;wH) literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.class" "b/build/classes/KSY/personal/Practice/S17219_\353\271\204\353\260\200\353\262\210\355\230\270\354\260\276\352\270\260.class" new file mode 100644 index 0000000000000000000000000000000000000000..2e1a19b91f775d881d5d403dbbb95a7c423f66d1 GIT binary patch literal 2233 zcmb7FU2_vv7=BKgc9Uf*(9lBow6tIgEumOG+9GNzl|sKHwHQEglWf~<(@orLXu%H{ z?S(UrGtM~9c&A+T#*4~04YecVmCks>j9$oZ5d90{b9R#^nT885_UzgBeb4hg@5g!f zw|{?p2%sBx75D@qm!h#q#;~(#OHW0{Z9U zX&Ixr`M6x&@h}%=&4EFHsyCg=yzt!tU%ZB|D@GNm-D)52{g4`8!pj{I<{#| z_eo0X`Nf2ham=)pRnQ<1a;?mCWN2(dqhJRSii-Z+)RbWx$;*bGG;9S;0^y==$jam# zq8s|Wrw(Elb}I;1WG8wn>lpJI_F%7oPtt4j$Vs;)ggzCG*e^46Kwwu}Rg?Bf6(KZB zqk|-0GV&V5iH*Z6dEq{W&wmJgewJP{GM!vU84^ig*?i z={dtPZ%dmHPHQ-W9)SRBkd)meu%oSgbM003dY>e7mO&LLmw9#RcH^9emnB-zG8P@z zkBV0@prBu1dx`0gHDCr|XPvXAR1pfjp$(_2O|ij0<{pW<<}Z7({RjE@D{0 zC4qVu-!-68!w5!M1y)GlOgUliuJx6LSdf%QT@Xq1aSdXHylG|ZD$3dyz*PaEN~G%=-gZmpq&*wiFgG;3D{EA{ zAUjq{;u;cicGOO#a@iRvF*HoMl0+(LwrV9hNMYCTg&WOZE0gNkSt@CGqKcag@n>g zhCG`pr{%3oabljV#5=ngVYB2Mz1Bw^JuycH?&MW4!wDHp=j?tEtDLhks=^ z@zMjla;kP?SGSHq8eZsCYEA`~(Ye{aH|QGos$nG@46ADxs=<||fM^Uf*4}&iyL;?- zwPT&~z#7JU_!-evyx9=rQaD+6@9CqC&Q)An#XB9V(D@`~X8e$uxr!#PThPFKv@#oM5Q}G2(7qrXd?P+h*x2(H|@jfv=prjf8rwoqc e{zC;J1uY7?6m$!r;3E5_UF+bHk7($_o&Nx}Cp>ci literal 0 HcmV?d00001 diff --git a/build/classes/KSY/personal/Practice/S18110_Solvedac.class b/build/classes/KSY/personal/Practice/S18110_Solvedac.class new file mode 100644 index 0000000000000000000000000000000000000000..ea8c620b836053cf4e325af047d8189e81524590 GIT binary patch literal 1850 zcma)6U2_vv7=BK&$&#=w^kbpLf&v8+XbG_pX^SA`Lj(PiU`wqQH_5i$Hrb7v4FzwU zahRzW&T!$37hX8_s&_hi(RQrkjC#j~7y2_C{Rdc|vq>9D>x`Mno^#&!J@5OR=lyv4 z&ksKVI1g7vK;Xpf%tWGOx@E^U3W-tI$az-IOk|Q5lgV@UGfv@wnKyDO6oLJ7#sec! zFzlJcNOsQ5c>>`}mTh^L1%k2on1FK4$(vCG5z!DrSYY3vWt+p5V%Bu;8rgy=&^+km zjKY}VTJl^ID&DMB7C1Hdzrge}P|>h#fdjG0!8)jn=UVnmzXTG!@i1qWJj=1mDw+ja zd@IXIq(`w}4Ba)w&1=?b}n#9MVXu(lwbd2EZM%D0qqKeL4z>m9@ zC&8Z-IJ60Vq~dL%uj(cGn1(n`GjC3XX{-YsC55%866gtZNetcOqK@HtheQ&^aU`VG zxot?Rp?svT3LNy&_@z_L(m=&3kmo3ph{(5I(2&Aw0((euUKWi&Yb?Gqxl#0@Uqzol zQ{83S_RJa6)o=-~(?!W}%O+)fR}J-Zf&1fW8T5*VH*l2&Y?Ml-ofqhcrFVv_p(GR6 za6`rQ&3soptB|1(P5Iscy)4Ms9w{DEUJ|#gvL!c6P?8xH%P~ ziz!7{zJ%5tT*2k>WqhJ5%GYS_u4${nqOSZH?F$7{;bk@EVkmU`8C}7G!<^_RrPQxvW%uSm3Ja%7jwPpm-yiYHn&!2H0ACTrw zdr$roHtU_Ns71<1-u!iiQoMebIz~N^}swhyMb$9j$i& literal 0 HcmV?d00001 diff --git "a/build/classes/KSY/personal/Practice/S2108_\355\206\265\352\263\204\355\225\231$Number.class" "b/build/classes/KSY/personal/Practice/S2108_\355\206\265\352\263\204\355\225\231$Number.class" new file mode 100644 index 0000000000000000000000000000000000000000..deff9e3f1619b797fa8a9e5a5d6fa0798ec96c71 GIT binary patch literal 622 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 Date: Thu, 5 Oct 2023 09:41:26 +0900 Subject: [PATCH 25/27] FEAT : 231005 --- build/classes/.gitignore | 1 + ...353\223\234\353\212\224\354\210\230.class" | Bin 1372 -> 2348 bytes ...\353\223\234\353\212\224\354\210\230.java" | 75 ++++++++++++---- ...\354\233\220\354\210\255\354\235\264.java" | 85 ++++++++++++++++++ ...\355\202\244\354\210\234\354\204\234.java" | 59 ++++++++++++ 5 files changed, 201 insertions(+), 19 deletions(-) create mode 100644 build/classes/.gitignore create mode 100644 "src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" create mode 100644 "src/KSY/personal/Practice/SWEA5643_\355\202\244\354\210\234\354\204\234.java" diff --git a/build/classes/.gitignore b/build/classes/.gitignore new file mode 100644 index 0000000..f17a489 --- /dev/null +++ b/build/classes/.gitignore @@ -0,0 +1 @@ +/KSY/ diff --git "a/build/classes/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.class" "b/build/classes/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.class" index a6a674c8efe60f80dea85e3b0a53490827662b0f..ed498d78e3e4ce9ae5f3b9a1eeee54a05925fc15 100644 GIT binary patch literal 2348 zcmZ`*Yf}?f7=AWc*|4k#!KhrK^`1Z_B7zq%il}Wg25Tr5ZL3SN#MO|bn+0=trH-^kZjg>2o%O1VKJ*&e`*x_dL(@KIdJ2|L@n| z0PMxL3S1HzPsN8r@s5stdoMn|JMs93UmksT`_ZlMAK&~@fh?i!iaxG~(t0Kp8W_1^ zBy0(4(nwf_o;Ncou1B4Kf^DWlQ8RD%NT`mRsf=zHEJMPUrdwLUTGh^Ce3GP5}NP^s- zO&SUsBs7$<^;wpFLjY9ag-^pe)bZe6XJa)aY|yX@Rbtenp$3|SHBmET#0q00hBc^< zq)Emb%_j8pkZze`?z~jthL1-O5efC>uKPPg&~-;v+~vI+=2!H7`jxP}vWfi}t(MBF0FGc??SloTR@QwmO&%0rzhmNi6i znikH99cij52O_~C!D>K5HB^yk)c?ym9`PPMIK5Ly5Jj|wYPYqg}6)*!k^+KKye`yx1YMp_X2LD`>(smRe@$ZjECw0JL5rMxfb%X) zVL;(mfo1>2>6`4O*Web{ms&uU1U8MBHpc5}t=P>^(Gj$h zR|lK%9>l24Apco8Plic!lU)b${45An!Yn#@;1+p{KO3KOB+Ovr3r7_X4&Y0CMaHXH je4&qwex6ZQssU9`P^TaxHT?shP;0A;DZXYB7ryx)fi5Er literal 1372 zcmZ{jOHWfl7>3^|r31$z*izBr9mN*WTEuz*FQBN^LeVOQxG<;ffCu5UIX(5VcVXOW zj0;!BKcF$zi17#bS77Z@eWxuHLfy>mn|Z(IyUedY-+uxa#yts-!0ua_*;pnXKQsJr z_2Y}xw_jFXzh8OvX7%Me39mrcg89UZEt>XxES+6YIak0pYT1^1QJ^Ifoe}U}Ddd%b z7PR}(3ZFn{%Cgl|c`2)$yJmJ#2?SDwoVhq-I+oto554Xqt0d5y`Y*r;#g|OW7T6hi zkZOQrT*tEKN3?Te;#p1=U8`W1Bmx4#>Mg4fOQzQ?65Ui-GmMw#=9HuIca)h|j>Jx; zV9l1ai)EMU%3P|M+p!B_iQSv>ka=Em)si2**dyT4c%d4ccH2-GF%ZH&os<0nyCO}m zL}v^HaZq16MEJ&~ntO&QakvTmeaCV&e7`_=4L)6V*Xe6^O&{?iiUHQDP-f{GpwmoY zJye1o!JuY1&RjGYHVTr&Kp$fI*2ztzHCI*AA%UJMO|@NWRT?i_i_EiuINDp#IXAdb1f$m6jYlRJ*$EXDRU`InYX}fA(IeuIKd$6r&Iwi$323JSl;C&>T z)SfTc^NbwhB3S}p!u37rC zg`0ln6FPx72nzD^10JsUTRBSZVw?r%)`1GzK2^;IM{U;QHje(<1nctMua?{HQ&MqS~`x!kI?5*HHY8ibzIl_~p6&$PJ#N;yKvlX103Jm`+&U?Fz zMC-AyIQWmgDaMjO7?YS{Bw8=cl@HT=ABOnL Yt(3Se5tQhYh)diNIzs{(jvn0o2Wz5AtN;K2 diff --git "a/src/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.java" "b/src/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.java" index 26b1dd0..611e540 100644 --- "a/src/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.java" +++ "b/src/KSY/S1174_\354\244\204\354\226\264\353\223\234\353\212\224\354\210\230.java" @@ -1,25 +1,62 @@ package KSY; -import java.io.*; -import java.util.*; +import java.util.*; // 자료구조 등 위해 +import java.io.*; // 테스트케이스 입출력 위해 -public class S1174_줄어드는수 { +public class S1174_줄어드는수 { // 클래스 정의 시작 + + static List decreasing = new ArrayList<>(); + static int[] answer; + static boolean[] visited = new boolean[10]; + static StringBuilder sb; - public static void main(String[] args) throws IOException { - BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); - BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); - StringBuilder sb = new StringBuilder(); - - int[] answer = new int[1000001]; - int idx = 10; - int N = Integer.parseInt(br.readLine()); - - if(N < 10) { - sb.append(N-1); - } else { - - } + public static void main(String[] args) throws Exception { // 메인 메서드 시작 + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 입력 빠르게 읽기 + sb = new StringBuilder(); + + int n = Integer.parseInt(br.readLine()); + + if (n >= 1024) { + System.out.println(-1); + return; + } + + // 자리수 별로 조합 만들기 + for (int i=1; i<=10; i++) { + answer = new int[i]; + dfs(0, 0, i); + } + + Collections.sort(decreasing); + System.out.println(decreasing.get(n-1)); - } + } + + // idx 이전 자리수의 값 - 여기부터 시작해서 큰수만 추가 + // cnt 현재까지 채운 자리수 + // lim 채워야할 자리수 + static void dfs(int idx, int cnt, int lim) { + + if (cnt == lim) { + String str = ""; + for(int i=lim-1; i>=0; i--) { + str += answer[i]; + } + decreasing.add(Long.parseLong(str)); + return; + } + + for (int i=idx; i<10; i++) { + if (!visited[i]) { + visited[i] = true; + answer[cnt] = i; + dfs(i+1, cnt+1, lim); + visited[i] = false; + } + + } + + + } -} +} \ No newline at end of file diff --git "a/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" "b/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" new file mode 100644 index 0000000..a5d0637 --- /dev/null +++ "b/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" @@ -0,0 +1,85 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +public class S1600_말이되고픈원숭이 { + + static int[] kdr = new int[] { 1, 2, 2, 1, -1, -2, -2, -1 }; + static int[] kdc = new int[] { 2, 1, -1, -2, -2, -1, 1, 2 }; + static int[] dr = new int[] { 1, -1, 0, 0 }; + static int[] dc = new int[] { 0, 0, 1, -1 }; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int K = Integer.parseInt(br.readLine()); + StringTokenizer st = new StringTokenizer(br.readLine()); + + int W = Integer.parseInt(st.nextToken()); + int H = Integer.parseInt(st.nextToken()); + int[][] map = new int[H][W]; + + for (int i = 0; i < H; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < W; j++) { + map[i][j] = Integer.parseInt(st.nextToken()); + } + } + + boolean[][][] visited = new boolean[H][W][K + 1]; + Queue que = new ArrayDeque<>(); + que.offer(new Point(0, 0, 0, 0)); + while (!que.isEmpty()) { + Point curr = que.poll(); + if (curr.r == H - 1 && curr.c == W - 1) { + sb.append(curr.cnt + 1); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + return; + } + + if (curr.k < K) { // 말처럼 움직일 수 있음 + for (int d = 0; d < 8; d++) { + int row = curr.r + kdr[d]; + int col = curr.c + kdc[d]; + if (-1 < row && row < H && -1 < col && col < W && map[row][col] != 1 + && !visited[row][col][curr.k]) { + visited[row][col][curr.k] = true; + que.offer(new Point(row, col, curr.cnt, curr.k + 1)); + } + } + } + + // 그냥 이동 + for (int d = 0; d < 4; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + if (-1 < row && row < H && -1 < col && col < W && map[row][col] != 1 && !visited[row][col][curr.k]) { + visited[row][col][curr.k] = true; + que.offer(new Point(row, col, curr.cnt + 1, curr.k)); + } + } + + } + sb.append(-1); + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} + +class Point { + int r, c, cnt, k; + + Point(int r, int c, int cnt, int k) { + this.r = r; + this.c = c; + this.cnt = cnt; + this.k = k; + } +} \ No newline at end of file diff --git "a/src/KSY/personal/Practice/SWEA5643_\355\202\244\354\210\234\354\204\234.java" "b/src/KSY/personal/Practice/SWEA5643_\355\202\244\354\210\234\354\204\234.java" new file mode 100644 index 0000000..811e039 --- /dev/null +++ "b/src/KSY/personal/Practice/SWEA5643_\355\202\244\354\210\234\354\204\234.java" @@ -0,0 +1,59 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +//92,888 kb/ 1,901 ms + +public class SWEA5643_키순서 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=1; test<=T; test++) { + int ans =0; + int N = Integer.parseInt(br.readLine()); + int M = Integer.parseInt(br.readLine()); + boolean[][] adjMatrix = new boolean[N+1][N+1]; + + for(int i=0; i Date: Thu, 5 Oct 2023 10:50:26 +0900 Subject: [PATCH 26/27] =?UTF-8?q?FEAT=20:=20231005=20=EB=A7=90=EC=9D=B4?= =?UTF-8?q?=EB=90=98=EA=B3=A0=ED=94=88=EC=9B=90=EC=88=AD=EC=9D=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...5\224\210\354\233\220\354\210\255\354\235\264.java" | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git "a/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" "b/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" index a5d0637..02d14dd 100644 --- "a/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" +++ "b/src/KSY/personal/Practice/S1600_\353\247\220\354\235\264\353\220\230\352\263\240\355\224\210\354\233\220\354\210\255\354\235\264.java" @@ -3,6 +3,8 @@ import java.util.*; import java.io.*; +//60036KB/ 512ms + public class S1600_말이되고픈원숭이 { static int[] kdr = new int[] { 1, 2, 2, 1, -1, -2, -2, -1 }; @@ -35,7 +37,7 @@ public static void main(String[] args) throws IOException { while (!que.isEmpty()) { Point curr = que.poll(); if (curr.r == H - 1 && curr.c == W - 1) { - sb.append(curr.cnt + 1); + sb.append(curr.cnt); bw.write(sb.toString()); bw.flush(); bw.close(); @@ -47,9 +49,9 @@ public static void main(String[] args) throws IOException { int row = curr.r + kdr[d]; int col = curr.c + kdc[d]; if (-1 < row && row < H && -1 < col && col < W && map[row][col] != 1 - && !visited[row][col][curr.k]) { - visited[row][col][curr.k] = true; - que.offer(new Point(row, col, curr.cnt, curr.k + 1)); + && !visited[row][col][curr.k+1]) { + visited[row][col][curr.k+1] = true; + que.offer(new Point(row, col, curr.cnt+1, curr.k + 1)); } } } From 765c5d2e7db9b888846e8c09d0aa86b95bb4dffe Mon Sep 17 00:00:00 2001 From: kseenyoung Date: Sat, 20 Jan 2024 14:35:21 +0900 Subject: [PATCH 27/27] algorithms --- .idea/inspectionProfiles/Project_Default.xml | 13 ++ .idea/misc.xml | 5 +- .idea/workspace.xml | 60 ++++++- Algorithms.iml | 2 +- build/classes/KSY/Pos.class | Bin 369 -> 369 bytes ...353\246\254\352\262\214\354\236\204.class" | Bin 2866 -> 2866 bytes ...04\352\265\264\353\246\254\352\270\260.py" | 1 + ...\352\260\200\353\245\264\354\271\250.java" | 84 +++++++++ .../KSY/S11501_\354\243\274\354\213\235.java" | 53 ++++++ ...352\265\254\355\225\230\352\270\2602.java" | 103 +++++++++++ ...\265\254\355\225\230\352\270\2602_Re.java" | 58 ++++++ ...\352\265\264\353\246\254\352\270\260.java" | 71 ++++++++ ...\353\246\254\352\262\214\354\236\204.java" | 8 - ...\354\236\220\352\265\275\352\270\260.java" | 38 ++++ ...\355\221\234\354\225\225\354\266\225.java" | 74 ++++++++ ...\355\226\211\352\260\200\354\236\220.java" | 64 +++++++ ...\355\214\224\354\240\200\354\232\270.java" | 61 +++++++ "src/KSY/S2636_\354\271\230\354\246\210.java" | 29 +++ ...\354\213\240\355\225\264\353\271\210.java" | 42 +++++ ...\353\260\230\354\210\230\354\227\264.java" | 36 ++++ ...4 \354\244\221\355\225\231\352\265\220.py" | 127 ++++++++++++++ ...\354\262\255\354\206\214\352\270\260.java" | 37 ++++ .../Practice/S1547_\352\263\265.java" | 41 +++++ .../Practice/S15651_N\352\263\274M3.java" | 44 +++++ .../Practice/S15655_N\352\263\274M6.java" | 54 ++++++ .../Practice/S15657_N\352\263\274M8.java" | 69 ++++++++ .../Practice/S15657_N\352\263\274M8_re.java" | 57 ++++++ .../Practice/S15663_N\352\263\274M9.java" | 64 +++++++ .../Practice/S15665_N\352\263\274M11.java" | 57 ++++++ .../Practice/S15666_N\352\263\274M12.java" | 57 ++++++ .../S1956_\354\232\264\353\217\231.java" | 89 ++++++++++ .../S1956_\354\232\264\353\217\231re.java" | 55 ++++++ ...\353\266\231\354\235\264\352\270\260.java" | 79 +++++++++ ...\353\217\214\352\271\250\352\270\260.java" | 165 ++++++++++++++++++ src/KSY/personal/wootaeco/Application.java | 5 + src/KSY/personal/wootaeco/Snippet.java | 8 + 36 files changed, 1792 insertions(+), 18 deletions(-) create mode 100644 .idea/inspectionProfiles/Project_Default.xml create mode 100644 "src/KSY/14499_\354\243\274\354\202\254\354\234\204\352\265\264\353\246\254\352\270\260.py" create mode 100644 "src/KSY/S1062_\352\260\200\353\245\264\354\271\250.java" create mode 100644 "src/KSY/S11501_\354\243\274\354\213\235.java" create mode 100644 "src/KSY/S11779_\354\265\234\354\206\214\353\271\204\354\232\251\352\265\254\355\225\230\352\270\2602.java" create mode 100644 "src/KSY/S11779_\354\265\234\354\206\214\353\271\204\354\232\251\352\265\254\355\225\230\352\270\2602_Re.java" create mode 100644 "src/KSY/S14499_\354\243\274\354\202\254\354\234\204\352\265\264\353\246\254\352\270\260.java" create mode 100644 "src/KSY/S1756_\355\224\274\354\236\220\352\265\275\352\270\260.java" create mode 100644 "src/KSY/S18870_\354\242\214\355\221\234\354\225\225\354\266\225.java" create mode 100644 "src/KSY/S1976_\354\227\254\355\226\211\352\260\200\354\236\220.java" create mode 100644 "src/KSY/S2629_\354\226\221\355\214\224\354\240\200\354\232\270.java" create mode 100644 "src/KSY/S2636_\354\271\230\354\246\210.java" create mode 100644 "src/KSY/S9375_\355\214\250\354\205\230\354\231\225\354\213\240\355\225\264\353\271\210.java" create mode 100644 "src/KSY/S9461_\355\214\214\353\217\204\353\260\230\354\210\230\354\227\264.java" create mode 100644 "src/KSY/personal/Practice/21609 \354\203\201\354\226\264 \354\244\221\355\225\231\352\265\220.py" create mode 100644 "src/KSY/personal/Practice/S14503_\353\241\234\353\264\207\354\262\255\354\206\214\352\270\260.java" create mode 100644 "src/KSY/personal/Practice/S1547_\352\263\265.java" create mode 100644 "src/KSY/personal/Practice/S15651_N\352\263\274M3.java" create mode 100644 "src/KSY/personal/Practice/S15655_N\352\263\274M6.java" create mode 100644 "src/KSY/personal/Practice/S15657_N\352\263\274M8.java" create mode 100644 "src/KSY/personal/Practice/S15657_N\352\263\274M8_re.java" create mode 100644 "src/KSY/personal/Practice/S15663_N\352\263\274M9.java" create mode 100644 "src/KSY/personal/Practice/S15665_N\352\263\274M11.java" create mode 100644 "src/KSY/personal/Practice/S15666_N\352\263\274M12.java" create mode 100644 "src/KSY/personal/Practice/S1956_\354\232\264\353\217\231.java" create mode 100644 "src/KSY/personal/Practice/S1956_\354\232\264\353\217\231re.java" create mode 100644 "src/KSY/personal/Practice/S2667_\353\213\250\354\247\200\353\262\210\355\230\270\353\266\231\354\235\264\352\270\260.java" create mode 100644 "src/KSY/personal/Practice/SWEA5656_\353\262\275\353\217\214\352\271\250\352\270\260.java" create mode 100644 src/KSY/personal/wootaeco/Application.java create mode 100644 src/KSY/personal/wootaeco/Snippet.java diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..5e31b9e --- /dev/null +++ b/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,13 @@ + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 0548357..812ab5a 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,6 +1,7 @@ - - + + + \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml index f0a38f4..aeca9c4 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -1,29 +1,60 @@ + + - - + + + + + + + + + + + + + { + "associatedIndex": 5 +} + + + - { + "keyToString": { + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "SHARE_PROJECT_CONFIGURATION_FILES": "true", + "WebServerToolWindowFactoryState": "false", + "last_opened_file_path": "/Users/ksy/git/Algorithms", + "node.js.detected.package.eslint": "true", + "node.js.detected.package.tslint": "true", + "node.js.selected.package.eslint": "(autodetect)", + "node.js.selected.package.tslint": "(autodetect)", + "vue.rearranger.settings.migration": "true" } -}]]> +} @@ -32,7 +63,22 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/Algorithms.iml b/Algorithms.iml index bde8366..4d4b884 100644 --- a/Algorithms.iml +++ b/Algorithms.iml @@ -6,7 +6,7 @@ + - \ No newline at end of file diff --git a/build/classes/KSY/Pos.class b/build/classes/KSY/Pos.class index 3ffdab62c807ee59fc2c372e14af25243e370fdf..0f45485a44070ec1a5a0d4847e357728b7d54d81 100644 GIT binary patch delta 25 gcmey!^pR> alph; // 필요한 알파벳 모음의 set + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + K = Integer.parseInt(st.nextToken()) - 5; // 필수 문자 제외 가르칠 수 있는 문자 + + alpha = new boolean[26]; + alpha[0] = true; // a + alpha['c'-'a'] = true; // c + alpha['n'-'a'] = true; // n + alpha['t'-'a'] = true; // t + alpha['i'-'a'] = true; // i +// System.out.println(Arrays.toString(alpha)); + + + alph = new HashSet<>(); + for(int i=0; i list = new ArrayList<>(); + for(int j=3; j answer) + answer = ans; + return; + } + + for(int i=idx; i<26; i++) { + if(!alpha[i]) { //선택하지 않은 알파벳이라면 + alpha[i] = true; + DFS(cnt+1, i); + alpha[i] = false; + } + } + + } + + private static int checkword() { + int ans = 0; + for(List temp: alph) { + boolean flag = false; + for(int idx:temp) { + if(!alpha[idx]) { // 하나라도 없다면 불가능 + flag = true; + break; + } + } + if(!flag) + ans++; + } + return ans; + } +} diff --git "a/src/KSY/S11501_\354\243\274\354\213\235.java" "b/src/KSY/S11501_\354\243\274\354\213\235.java" new file mode 100644 index 0000000..a8ccb7a --- /dev/null +++ "b/src/KSY/S11501_\354\243\274\354\213\235.java" @@ -0,0 +1,53 @@ +package KSY; +import java.util.*; +import java.io.*; + +public class S11501_주식 { + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for(int test=0; test[] list; // 각 마을에 연결 된 다른 마을 연결 + static int n, m, start, end; + static int[] dist; + static int[] route; // 직전 노드 저장 + static boolean[] visited; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + n = Integer.parseInt(br.readLine()); // 마을 수 + m = Integer.parseInt(br.readLine()); // 노선 수 + + list = new ArrayList[n + 1]; + for(int i = 1; i <= n; i++) { + list[i] = new ArrayList<>(); + } + + for(int i = 0; i < m; i++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + int s = Integer.parseInt(st.nextToken()); + int e = Integer.parseInt(st.nextToken()); + int c = Integer.parseInt(st.nextToken()); + list[s].add(new Node(e, c)); // s에서 e로 가는 c 비용 연결 + } + + StringTokenizer st = new StringTokenizer(br.readLine()); + start = Integer.parseInt(st.nextToken()); // 시작 노드 + end = Integer.parseInt(st.nextToken()); // 끝 노드 + + dist = new int[n + 1]; // start부터 각 i까지 최소 비용 + route = new int[n + 1]; // i에 도착하기 직전 마을 + Arrays.fill(dist, 1000000001); // 무한수로 모든 배열 업데이 + visited = new boolean[n + 1]; // 방문 표시 + dijkstra(); // 다익스트라(특정 위치에서 각 노드로의 최소 거리) vs 플로이드-워샬 + + sb.append(dist[end]).append("\n"); + + ArrayList routes = new ArrayList<>(); + int current = end; + while(current != 0) { + routes.add(current); + current = route[current]; + } + sb.append(routes.size()).append("\n"); + for(int i = routes.size() - 1; i >= 0; i--) { + sb.append(routes.get(i) + " "); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + + public static void dijkstra() { + PriorityQueue q = new PriorityQueue<>(); // 쁘리아라리큐 + q.add(new Node(start, 0)); // 시작 노드 + dist[start] = 0; // 시작 노드 거리 초기화 + route[start] = 0; // 시작 노드 이전 초기화 + + while(!q.isEmpty()) { + Node current = q.poll(); + + if(!visited[current.e]) visited[current.e] = true; // 방문하지 않았다면 방문 표시 후 탐색 + else continue; + + for(int i = 0; i < list[current.e].size(); i++) { // 연결된 마을 탐색 + Node next = list[current.e].get(i); // 연결 된 마을 + if(dist[next.e] > dist[current.e] + next.cost) { // 업데이트 할 위치 비용 < '비용이 현재 위치 + 다음 비용' + dist[next.e] = dist[current.e] + next.cost; // 값 업데이트 + q.offer(new Node(next.e, dist[next.e])); // 큐 삽입 + route[next.e] = current.e; // 부모 업데이트 + } + } + } + } + + public static class Node implements Comparable { + int e; // 도착 노드 + int cost; + + public Node(int e, int cost) { + this.e = e; + this.cost = cost; + } + + @Override + public int compareTo(Node n) { // 비용 기준으로 쁘리아라리큐 정렬 + return this.cost - n.cost; + } + } +} diff --git "a/src/KSY/S11779_\354\265\234\354\206\214\353\271\204\354\232\251\352\265\254\355\225\230\352\270\2602_Re.java" "b/src/KSY/S11779_\354\265\234\354\206\214\353\271\204\354\232\251\352\265\254\355\225\230\352\270\2602_Re.java" new file mode 100644 index 0000000..c0c27ed --- /dev/null +++ "b/src/KSY/S11779_\354\265\234\354\206\214\353\271\204\354\232\251\352\265\254\355\225\230\352\270\2602_Re.java" @@ -0,0 +1,58 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class S11779_최소비용구하기2_Re { + +// static Map> graph = new HashMap<>(); + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); // 도시 + int M = Integer.parseInt(br.readLine()); // 버스 + int totalCost = 0; + + int[][] adjMatrix = new int[N+1][N+1]; + int INF = Integer.MAX_VALUE; + for(int i=1; i<=N; i++) + Arrays.fill(adjMatrix[i], INF); + +// boolean[] visited = new boolean[N+1]; +// for(int i=1; i<=N; i++) +// graph.put(i, new ArrayList<>()); + + for(int i=0; i points = new ArrayList<>(); + // 각 주사위 위치별 방향 숫자 + int[] east = new int[] {4, }; + int[] west = new int[] {}; + int[] north = new int[] {}; + int[] south = new int[] {}; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + points.add(new Point7(0, 0)); // 더미 + points.add(new Point7(1, 1)); + points.add(new Point7(0, 1)); + points.add(new Point7(1, 2)); + points.add(new Point7(1, 0)); + points.add(new Point7(2, 1)); + points.add(new Point7(3, 1)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int y = Integer.parseInt(st.nextToken()); + int x = Integer.parseInt(st.nextToken()); + int K = Integer.parseInt(st.nextToken()); + + //dice + int[][] dice = new int[4][3]; + // dice의 상단/하단 + Point7 up = points.get(1); + Point7 down = points.get(6); + + //map + int[][] map = new int[N][M]; + for(int i=0; i if : 12% -> 22%) -// map[snack] = curr.cnt + 1; -// que.offer(new Pos(curr.cnt + 1, snack)); -// flag = true; point = snack; } diff --git "a/src/KSY/S1756_\355\224\274\354\236\220\352\265\275\352\270\260.java" "b/src/KSY/S1756_\355\224\274\354\236\220\352\265\275\352\270\260.java" new file mode 100644 index 0000000..76bedcd --- /dev/null +++ "b/src/KSY/S1756_\355\224\274\354\236\220\352\265\275\352\270\260.java" @@ -0,0 +1,38 @@ +package KSY; + +import java.util.*; +import java.io.*; + +public class S1756_피자굽기 { + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb =new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int D = Integer.parseInt(st.nextToken()); // 오븐 깊이 + int N = Integer.parseInt(st.nextToken()); // 반죽의 개수 + + int[] oven = new int[D]; + + st = new StringTokenizer(br.readLine()); + for(int d=0; d=0; j--){ + + } + } + + + + } + +} diff --git "a/src/KSY/S18870_\354\242\214\355\221\234\354\225\225\354\266\225.java" "b/src/KSY/S18870_\354\242\214\355\221\234\354\225\225\354\266\225.java" new file mode 100644 index 0000000..4f94b74 --- /dev/null +++ "b/src/KSY/S18870_\354\242\214\355\221\234\354\225\225\354\266\225.java" @@ -0,0 +1,74 @@ +package KSY; + +import java.io.*; +import java.util.*; + +//271808KB/ 2376ms + +public class S18870_좌표압축 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + List nums = new ArrayList<>(); + StringTokenizer st = new StringTokenizer(br.readLine()); + for (int i = 0; i < N; i++) { + nums.add(new Node1(i, Integer.parseInt(st.nextToken()))); // 인덱스와 값을 묶에서 저장 + } + + // 값기준 정렬 + Collections.sort(nums, (a, b) -> { + if (a.value > b.value) + return 1; + else { + if (a.value < b.value) + return -1; + else + return 0; + } + }); + + int num = 0, front = nums.get(0).value; // 처음값(앞 값) + for (int i = 0; i < N; i++) { + Node1 curr = nums.get(i); + if (curr.value != front) { // 앞에 있는 값과 같지 않다(= 새로운 값 등장) + num++; + front = curr.value; + } + curr.value = num; + } + + // 인덱스 기준 정렬 + Collections.sort(nums, (a, b) -> { + if (a.idx > b.idx) + return 1; + else { + if (a.idx < b.idx) + return -1; + else + return 0; + } + }); + + // 값 출력 + for (int i = 0; i < N; i++) { + sb.append(nums.get(i).value).append(" "); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + +} + +class Node1 { + int idx, value; + + Node1(int idx, int value) { + this.idx = idx; + this.value = value; + } +} \ No newline at end of file diff --git "a/src/KSY/S1976_\354\227\254\355\226\211\352\260\200\354\236\220.java" "b/src/KSY/S1976_\354\227\254\355\226\211\352\260\200\354\236\220.java" new file mode 100644 index 0000000..583a489 --- /dev/null +++ "b/src/KSY/S1976_\354\227\254\355\226\211\352\260\200\354\236\220.java" @@ -0,0 +1,64 @@ +package KSY; +import java.io.*; +import java.util.*; + +//17216KB/ 212ms + +public class S1976_여행가자 { + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int N = Integer.parseInt(br.readLine()); + int M = Integer.parseInt(br.readLine()); + + int[][] adjMatrix = new int[N+1][N+1]; + + for(int i=1; i<=N; i++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + for(int j=1; j<=N; j++) { + adjMatrix[i][j] = Integer.parseInt(st.nextToken()); + } + } + + // 플로이드-워샬 + for(int k=1; k<=N; k++) { + for(int i=1; i<=N; i++) { + for(int j=1; j<=N; j++) { + if(adjMatrix[i][j] == 0) { + if(adjMatrix[i][k] == 1 && adjMatrix[k][j] == 1) { + adjMatrix[i][j] = 1; + } + } + } + } + } + + // 여행계획 + StringTokenizer st = new StringTokenizer(br.readLine()); + int front = Integer.parseInt(st.nextToken()); + boolean flag = true; + for(int i=1; i 15000) { + sb.append("N "); + } else + sb.append(dp[N][marble]? "Y " : "N "); + } + bw.write(sb.toString()); + bw.flush(); + bw.close(); + } + + private static void DFS(int depth, int weight) { + if(dp[depth][weight]) return; // 이미 만들었다면 + dp[depth][weight] = true; // 만들 수 있음 + if(depth == N) return; // 추 개수 넘너가면 + + // 추가 + DFS(depth+1, weight + weights[depth]); + // 빼기 + DFS(depth+1, Math.abs(weight - weights[depth])); + // 미추가 + DFS(depth+1, weight); + + + } + +} diff --git "a/src/KSY/S2636_\354\271\230\354\246\210.java" "b/src/KSY/S2636_\354\271\230\354\246\210.java" new file mode 100644 index 0000000..ec777b3 --- /dev/null +++ "b/src/KSY/S2636_\354\271\230\354\246\210.java" @@ -0,0 +1,29 @@ +package KSY; + +import java.io.*; +import java.util.*; + +public class S2636_치즈 { + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + int[][] cheeze = new int[N][M]; + boolean[][] checkbox = new boolean[N][M]; + + for(int i=0; i map = new HashMap<>(); + + for(int i=0; i 1 and lenBlocks >= len(maxBlock): + maxBlock = blocks + # print("maxBlock", maxBlock) + return maxBlock + +# remove blocks +def removeBlocks(blocks): + for r, c in blocks: + board[r][c] = '' + # print("== remove blocsk ==") + # printBoard(board) + +# gravity +def gravity(): + # print("== before gravity ==") + # printBoard(board) + + que = deque([]) + for col in range(n): + row = n-1 + start = n-1 + flag = True + while row > -1: + while row > -1 and board[row][col] == '': + if flag: + start = row + flag = False + row -= 1 + while row > -1 and board[row][col] != '' and board[row][col] != '-1': + que.append(board[row][col]) + board[row][col] = '' + row -= 1 + while que: + board[start][col] = que.popleft() + start -= 1 + flag = True + row -= 1 + + # print("== after gravity ==") + # printBoard(board) + +# 반시계 방향 회전 +def rotation(): + tempBoard = [['']*n for _ in range(n)] + for i in range(n): + for j in range(n): + tempBoard[n-1-j][i] = board[i][j] + # print("== rotation ==") + # printBoard(tempBoard) + return tempBoard + +def printBoard(board): + for i in range(n): + print(board[i]) + +score = 0 +index = 1 +while True: + print("index :", index) + index += 1 + blocks = findBlockGroup() + if not blocks: + break + score += len(blocks)*len(blocks) + removeBlocks(blocks) + print("remove blocks") + printBoard(board) + gravity() + print("gravity1") + printBoard(board) + board = rotation() + print("rotation") + printBoard(board) + gravity() + print("gravity2") + printBoard(board) + + print(score) + print("----------------------------") diff --git "a/src/KSY/personal/Practice/S14503_\353\241\234\353\264\207\354\262\255\354\206\214\352\270\260.java" "b/src/KSY/personal/Practice/S14503_\353\241\234\353\264\207\354\262\255\354\206\214\352\270\260.java" new file mode 100644 index 0000000..f684d41 --- /dev/null +++ "b/src/KSY/personal/Practice/S14503_\353\241\234\353\264\207\354\262\255\354\206\214\352\270\260.java" @@ -0,0 +1,37 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +public class S14503_로봇청소기 { + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + + int[][] arr = new int[N][N]; + + st = new StringTokenizer(br.readLine()); + int r = Integer.parseInt(st.nextToken()); + int c = Integer.parseInt(st.nextToken()); + int d = Integer.parseInt(st.nextToken()); // 북, 동, 남 서 : 0, 1, 2, 3 + + for(int i=0; i numbers; + static boolean[] visited; + static List answer = new ArrayList<>(); + static StringBuilder sb = new StringBuilder(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int N = Integer.parseInt(st.nextToken()); + int M = Integer.parseInt(st.nextToken()); + + st = new StringTokenizer(br.readLine()); + numbers = new ArrayList<>(); + visited = new boolean[N]; + + for(int i=0; i {sb.append(i).append(" ");}); + sb.append("\n"); + return; + } + + for(int i=start; i set = new HashSet<>(); + static StringBuilder sb = new StringBuilder(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + numbers = new int[N]; + answer = new int[M]; + + st = new StringTokenizer(br.readLine()); + for(int i=0; i0 && p[i-1] <= p[i]) i--; + if(i == 0) return false; + + int j = N-1; + while(p[i-1] > p[j]) j--; + swap(p, i-1, p[j]); + + int k = N-1; + while(i set = new HashSet<>(); + static StringBuilder sb = new StringBuilder(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + numbers = new int[N]; + answer = new int[M]; + + st = new StringTokenizer(br.readLine()); + for(int i=0; i set = new HashSet<>(); + static StringBuilder sb = new StringBuilder(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + numbers = new int[N]; + answer = new int[M]; + visited = new boolean[N]; + + st = new StringTokenizer(br.readLine()); + for(int i=0; i set = new HashSet<>(); + static StringBuilder sb = new StringBuilder(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + numbers = new int[N]; + answer = new int[M]; + + st = new StringTokenizer(br.readLine()); + for(int i=0; i set = new HashSet<>(); + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + M = Integer.parseInt(st.nextToken()); + + numbers = new int[N]; + answer = new int[M]; + + st = new StringTokenizer(br.readLine()); + for(int i=0; i> nodes = new HashMap<>(); + static boolean[] visited; + static int[] parents; + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int V = Integer.parseInt(st.nextToken()); + int E = Integer.parseInt(st.nextToken()); + + visited = new boolean[V+1]; + parents = new int[V+1]; + Map edges = new HashMap<>(); + + for(int i=1; i<=V; i++) { + nodes.put(i, new ArrayList<>()); + parents[i] = i; + } + + PriorityQueue pq = new PriorityQueue<>(); + + for(int i=0; i{ + int a, b, c; + Node1(int a, int b, int c){ + this.a = a; this.b = b; this.c = c; + } + @Override + public int compareTo(Node1 o) { + return this.c - o.c; + } +} \ No newline at end of file diff --git "a/src/KSY/personal/Practice/S1956_\354\232\264\353\217\231re.java" "b/src/KSY/personal/Practice/S1956_\354\232\264\353\217\231re.java" new file mode 100644 index 0000000..a214f1d --- /dev/null +++ "b/src/KSY/personal/Practice/S1956_\354\232\264\353\217\231re.java" @@ -0,0 +1,55 @@ +package KSY.personal.Practice; + +import java.util.*; +import java.io.*; + +public class S1956_운동re { + + public static void main(String[] args) throws Exception { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + StringTokenizer st = new StringTokenizer(br.readLine()); + int V = Integer.parseInt(st.nextToken()); + int E = Integer.parseInt(st.nextToken()); + + int answer = Integer.MAX_VALUE; + + int[][] ms = new int[V+1][V+1]; + for(int i=1; i<=V; i++) { + for(int j=1; j<=V; j++) { + ms[i][j] = 10000000; + } + } + + for(int i=0; i list = new ArrayList<>(); + + for(int i=0; i que = new ArrayDeque<>(); + que.offer(start); + int temp =0; + visited[start.r][start.c] = true; + while(!que.isEmpty()) { + Node curr = que.poll(); + temp++; + + for(int d=0; d<4; d++) { + int row = curr.r + dr[d]; + int col = curr.c + dc[d]; + if(-1 < row && row < N && -1 < col && col < N && map[row][col] == 1 && !visited[row][col]) { + visited[row][col]= true; + que.offer(new Node(row, col)); + } + } + } + return temp; + } + +} + +class Node{ + int r, c; + Node(int r, int c){ + this.r = r; this.c = c; + } +} \ No newline at end of file diff --git "a/src/KSY/personal/Practice/SWEA5656_\353\262\275\353\217\214\352\271\250\352\270\260.java" "b/src/KSY/personal/Practice/SWEA5656_\353\262\275\353\217\214\352\271\250\352\270\260.java" new file mode 100644 index 0000000..738fd05 --- /dev/null +++ "b/src/KSY/personal/Practice/SWEA5656_\353\262\275\353\217\214\352\271\250\352\270\260.java" @@ -0,0 +1,165 @@ +package KSY.personal.Practice; + +import java.io.*; +import java.util.*; + +public class SWEA5656_벽돌깨기 { + + static int N, W, H, min; + static int dr[] = new int[] { 1, -1, 0, 0 }; + static int dc[] = new int[] { 0, 0, 1, -1 }; + + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + StringBuilder sb = new StringBuilder(); + + int T = Integer.parseInt(br.readLine()); + for (int test = 1; test <= T; test++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + N = Integer.parseInt(st.nextToken()); + W = Integer.parseInt(st.nextToken()); + H = Integer.parseInt(st.nextToken()); + int[][] map = new int[H][W]; + + for (int i = 0; i < H; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < W; j++) { + map[i][j] = Integer.parseInt(st.nextToken()); + } + } // 2차원 map입력 + min = Integer.MAX_VALUE; + drop(0, map); + System.out.println("#"+test+" "+min); + } + + } + + // 구슬 던지기 : 중복 순열 + private static boolean drop(int cnt, int[][] map) { // 구슬 떨어뜨리기 cnt : 직전까지 떨어뜨린 구슬 수, + // map : 직전 상태까지의 map + // 리턴값 : 모든 벽돌이 제거되었는지 여부 + + int result = getRemain(map); + if (result == 0) { + min = 0; + return true; + } + + if (cnt == N) { + if (min < result) + min = result; + return false; + } + + int[][] newMap = new int[H][W]; + for (int c = 0; c < W; c++) { // 모든 열에 대해 시도 + + // 해당 열에 떨어뜨릴 경우 제거되는 맨 윗벽돌 찾기 + + // 벽돌이 존재하지 않는다면 (해당열은 모두 빈칸) + + // 벽돌이 존재한다면 + copy(map, newMap); + // 함께 제거될 인접벽돌 연쇄 찾기 + // 디버깅 출력 + boom(newMap, r, c); + // 제거처리(벽돌 내리기) + // 디버깅 출력 + down(newMap); + // 다음 구슬 던지러 가기 + // 디버깅 출력 + + if (drop(cnt + 1, newMap)) + return true; + } + } + + // 인접한 제거 벽돌 찾기 : Flood Fill(4방 BFS) + private static void boom(int[][] map, int r, int c) { + Queue que = new ArrayDeque(); + + que.offer(new Point4(r, c, map[r][c])); + map[r][c] = 0; // 방문 처리 + + while (!que.isEmpty()) { + Point4 cur = que.poll(); + + for (int d = 0; d < 4; d++) { + int row = cur.r; + int col = cur.c; + for (int i = 0; i < cur.cnt - 1; i++) { // cnt-1 만큼 주변 벽돌 찾기 + row += dr[d]; + col += dc[d]; + if (-1 < row && row < N && -1 < col && col < N && map[row][col] > 0) { + if (map[row][col] > 1) { + que.offer(new Point4(row, col, map[row][col])); + map[row][col] = 0; // 방문 처리 + } + } + } + + } + + } + } + + // 벽돌 내리기1 : 빈자리 위쪽 벽돌 찾아 내리기 + // 벽돌 내리기2 : 매 열마다 맨 윗행부터 벽돌칸 모두 스택에 넣고 빈칸 만들기 (more easy) + private static void down(int[][] map) { + // 매 열 기준으로 내리기 + for (int c = 0; c < W; c++) { + int r = H - 1, row = -1; + while (r > 0) { + if (map[r][c] == 0) { // 빈칸이면 내일 벽돌 찾기 + row = r - 1; // 바로 윗행부터 찾기 + + while (row > 0 && map[row][c] == 0) + --row; + + map[r][c] = map[row][c]; + map[row][c] = 0; // 빈칸 처리 + } + + if (row == 0) + break; // row 가 map의 끝까지 탐색했으므로 빠져나감으로 더이상 탐색하지 않는다 + --r; + } + } + + } + + // 배열 복사하기 + private static void copy(int[][] map, int[][] newMap) { + for (int r = 0; r < H; r++) { + for (int c = 0; c < W; c++) { + newMap[r][c] = map[r][c]; + } + } + } + + // 남은 벽돌 개수 구하기 :매번 구슬 던지기 전에 사용할 목적 + private static int getRemain(int[][] map) { + int cnt = 0; + for (int r = 0; r < H; r++) { + for (int c = 0; c < W; c++) { + if (map[r][c] != 0) + cnt++; + } + } + return cnt; + } + + // 디버깅용 : 상태 출력 + +} + +class Point4 { + int r, c, cnt; + + Point4(int r, int c, int cnt) { + this.r = r; + this.c = c; + this.cnt = cnt; + } +} diff --git a/src/KSY/personal/wootaeco/Application.java b/src/KSY/personal/wootaeco/Application.java new file mode 100644 index 0000000..f4cc3a7 --- /dev/null +++ b/src/KSY/personal/wootaeco/Application.java @@ -0,0 +1,5 @@ +package KSY.personal.wootaeco; + +public class Application { + +} diff --git a/src/KSY/personal/wootaeco/Snippet.java b/src/KSY/personal/wootaeco/Snippet.java new file mode 100644 index 0000000..48ca882 --- /dev/null +++ b/src/KSY/personal/wootaeco/Snippet.java @@ -0,0 +1,8 @@ +package KSY.personal.wootaeco; + +public class Snippet { + public static void main(String[] args) { + missionutils + } +} +