본문 바로가기

분류 전체보기101

[백준] 1753번 최단경로 자바 문제 (골드5, 다익스트라 알고리즘) 1753번: 최단경로 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1 ≤ V ≤ 20,000, 1 ≤ E ≤ 300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1 ≤ K ≤ V)가 www.acmicpc.net 문제풀이 처음에 다익스트라 알고리즘인 줄 모르고 DFS로 풀었다. 정점과 가중치 값을 ' , '로 연결하여 ArrayList에 String값을 담아서 도착 정점까지의 가중치합을 합하여 weight배열에 담아줬었다. 도착정점까지 가는 모든 가중치합을 비교하며 weight배열을 갱신하고 마지막에 출력해줬다. 이렇게... public class Main { static int[] weight;.. 2021. 12. 7.
[백준] 9251번 LCS 자바 문제 (골드5 / dp) 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net 문제 풀이 사실 LCS는 유명한 문제이기에, 얕보고 백준 LCS3문제를 풀다가 너무 어려워서 LCS 먼저 풀면서 개념을 다지기 위해 LCS를 풀었다. 근데 알고보니 내가 알던 LCS 뜻과 약간의 혼동이 있었다. LCS(Longest Common Subsequence): 최장 공통 부분 수열 - 부분 수열이므로 공통된 문자들이 연결되어 있지 않아도 된다. - ex) ABCDEF, GBCDFE -.. 2021. 11. 29.
[백준] 17413번 단어 뒤집기2 자바 문제 (실버3) 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 문제 풀이 입력받은 문자열을 toCharArray 함수를 이용하여 char[]배열로 바꾼 후 string변수에 답을 붙여나가면서 진행했다. 문자열 반복을 해주면서 태그표시가 나오면 문자 그대로를 붙이고, 아니면 스택에 넣어주었다. 띄어쓰기가 나오거나 / 다시 태그가 나오거나 / 문자열이 끝나거나 이 세가지 경우에 한해서 스택에 넣은 값들을 비워내면서 string변수에 붙였다. ※ 이유는 모르겠는데 백준에서 코드제출할.. 2021. 11. 27.
[프로그래머스] 키패드 누르기(2020카카오 인턴십) 자바 문제 코딩테스트 연습 - 키패드 누르기 [1, 3, 4, 5, 8, 2, 1, 4, 5, 9, 5] "right" "LRLLLRLLRRL" [7, 0, 8, 2, 8, 3, 1, 5, 7, 6, 2] "left" "LRLLRRLLLRR" [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] "right" "LLRLLRLLRL" programmers.co.kr 문제 풀이 int[][] keypad : 키패드의 번호를 2차원 배열로 저장 int L_row, L_col : 현재 왼쪽 손이 올라가져있는 키패드 위치의 행과 열 인덱스를 담아둘 변수 int R_row, R_col : 현재 오른쪽 손이 올라가져 있는 키패드의 행렬 인덱스 값 int hand = 오른손잡이, 왼손잡이의 여부 변수를 원하는 결과값(R,.. 2021. 11. 25.
[Python #6] Network Network - 네트워킹 : 여러 컴퓨터를 서로 연결하면 통신이 가능하다 - 인터네트워킹 : 인접한 네트워크를 연결하여 인터넷같은 큰 시스템을 형성할 수 있다. - 패킷 : 네트워크 디바이스 간 통신을 위한 가장 기본적인 단위 (목적지 주소와 전달할 데이터를 가진 수천byte의 바이너리 스트링 형태) - 보통 네트워크 계층모델로 OSI 7layer 이용 (또는 TCP/IP계층 모델) 네트워크 계층 (OSI 7 layer) 7 : Application layer (HTTP, SMTP, FTP, SNMP) 6 : Presentation layer (MIME, TLS/SSL) 5 : Session layer (NetBIOS) 4 : Transport layer (TCP, UDP) 3 : Network lay.. 2021. 11. 24.
[프로그래머스] 네트워크 자바 문제 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있 programmers.co.kr 문제풀이 이 문제는 쉬워서 그런진 몰라도 DFS문제치고 굉장히 빨리 풀어서 기쁘다,,ㅎㅎ 컴퓨터로 주어지는 배열을 노드로 보고, 노드를 차례차례 방문하여 연결되어 있는 끝까지 가서 방문 여부를 표시하면 되기 때문에 이 문제도 DFS로 구현하면 된다. 처음 0번 노드부터 시작하여 연결된 노드(1표시)를 탐색하여 visted배열에 표시한다 (computers 열의 값 확인) 그리고 끊기면 visited배열 중에서 아직 방문안된(false표시인) 노드부터 .. 2021. 11. 19.