분류 전체보기

· 백준
[백준] 5052번 - 전화번호 목록 (JAVA) [ 접근 과정 ] 가장 중요하게 생각하는 것은 "JAVA의 String 관련함수를 얼마나 잘 사용하는가" 이다. A.startsWith(B) 함수를 사용하여 문자열 A가 문자열 B로 시작하는지를 판단할 수 있다. A.startsWith(B) : 문자열 A가 문자열 B로 시작하는가? (boolean) A.endsWith(B) : 문자열 A가 문자열 B로 끝나는가? (boolean) 전화번호 목록을 정렬한 경우, 만약 "한 번호가 다른 번호의 접두어인 경우" 두 번호는 서로 이웃해 있을 수 밖에 없다. 이를 이용하여 "i+1번째 전화번호가 i번째 전화번호를 접두어로 갖는가"를 판단한다. [ JAVA 코드 ] // 5052번 - 전화번호 목록 import ja..
· 백준
[백준] 9375번 - 패션왕 신해빈 (JAVA) [ 접근 과정 ] HashMap을 활용하여 해결하였다. "의상의 종류" 를 key로 하고 "해당 의상의 종류에 해당하는 옷 개수" 를 value로 하는 hash를 생성하였다. 의상을 입을 수 있는 경우는 예제 1의 TEST CASE 1을 예로 들면, heargear의 착용 경우는 3가지, (hat 착용, turban 착용, 아무것도 착용하지 않음) eyewear의 착용 경우는 2가지, (sunglasses 착용, 아무것도 착용하지 않음) 이므로 2 * 3 = 6 의 경우에 아무것도 착용하지 않은 알몸의 상태를 제외하면, 의상을 입을 수 있는 경우는 5가지 이다. hash.values()의 각 "값 + 1"을 누적하여 곱한 후 -1을 하였다. [ JAVA ..
아무리 "Run" , "Run With Out Debugging" 을 눌러도 파일이 실행되지 않았다. 에러 메시지도 뜨지 않고, 터미널이 아무런 반응을 하지 않았다. 해결 방법 1. VScode 재설치 하기 그냥 새로운 install 파일을 실행해서 VScode를 재설치 하는 방법이다. https://code.visualstudio.com/download Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefine..
· 백준
[백준] 1746번 - 듣보잡 (JAVA) [ 접근 과정 ] HashMap을 활용하여 해결하였다. 듣도 못한 사람이름을 key 로 하고, value는 1로 한다. 해시에 해당 key가 존재하는지를 판단하는 containsKey 함수를 활용하여 듣도 못한 사람과 보도 못한 사람에 동시에 선정된 사람을 찾아낸다. [ JAVA 코드 ] // 1764번 - 듣보잡 // 해시로 해결해보기 import java.util.*; import java.io.*; class Main { public static void main(String[] args) throws IOException { // 0. 입출력 선언 / 초기화 BufferedReader br = new BufferedReader(new InputStream..
· 백준
1. 배열을 이용한 방법 배열 + 이진탐색 (상위 탐색, 하위 탐색) 사용 1. 배열을 정렬 2. 정렬된 배열의 상위 부터 탐색 하여 나온 인덱스 와 하위 부터 탐색하여 나온 인덱스를 이용하여 숫자의 개수 도출 import java.util.*; import java.io.*; class Main { static int N, M; public static int lowerBound(ArrayList array, int target){ int lo = 0, hi = array.size(), mid; while (lo < hi) { mid = (lo + hi) / 2; if (target
· Algorithm
"탐색 (Search)" 알고리즘에 대해 알아보자. 탐색 알고리즘은 "저장된 데이터들 중 원하는 데이터를 찾는 알고리즘" 이다. 다양한 탐색 방식의 알고리즘이 존재한다. 각각의 탐색 방식과 시간복잡도 등 다양한 형태에 따라 적절한 탐색 알고리즘을 적용한다. 탐색 알고리즘 1. 선형탐색 (Linear Search) : 한쪽 끝에서 하나하나 순서대로 탐색하여 원하는 값을 찾는 알고리즘. (- 정렬되지 않은 배열도 가능) 선형 탐색은 순차 탐색 이라고도 불린다. 장점은 탐색 알고리즘의 가장 간단하고 직접적인 방법으로, 구현하기 쉽다. 그러나, 배열의 크기에 직접적인 영향을 받는다. (일반적으로 배열이 클수록 시간이 많이 든다.) * 시간복잡도 Best Case : 배열의 첫 부분(탐색하는 첫 데이터)이 key..
MoveForward
'분류 전체보기' 카테고리의 글 목록 (29 Page)