자바생
자바(백준) 2751 수 정렬하기 2
BOJ(Java) 2021. 3. 31. 23:36

📌풀이 방법 이 문제는 카운팅 정렬(계수 정렬)을 이용한 문제였다. 처음 접근했을 때, 선택 정렬을 사용하게 되면 O(n^2)로 시간 초과가 나올 것 같아서 카운팅 정렬을 이용하여 문제를 풀었다. 여기서 visit를 boolean으로 한 이유는 문제에서 중복된 숫자가 없다고 했기 때문에 경우의 수는 숫자가 있다, 없다뿐이다. 그래서 count를 세지 않고 true false로만 구별하여 문제를 풀었다. 📌필요한 개념 카운팅 정렬 📌코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 package Sort; import java.io.BufferedReader; import java.io.IOException..

article thumbnail
정렬
Algorithm 개념 2021. 3. 31. 22:31

카운팅 정렬 Counting Sort(계수 정렬)은 숫자들의 대소 비교를 하지 않고 나오는 횟수를 가지고 정렬을 하는 알고리즘 방법이다. 숫자가 몇 개 나오는지 센 다음 정렬을 한다. 그래서 시간 복잡도는 O(n)이 나오게 된다. 이번에 카운팅 정렬이라는 것을 처음 보았다. 퀵 정렬, 힙 정렬들의 시간 복잡도는 일반적으로 O(nlogn)으로 정렬 중에 이보다 더 작아질 수 없다고 배웠는데 O(n) 정렬이 있었던 것이다. index를 가지고 정렬을 함 배열의 값은 count의 index로 사용됨. count의 값은 배열의 값이 몇 번 나왔는지 횟수를 의미. count 배열의 값을 누적합으로 변환시킴(이유는 아래에서) count 배열의 값 - 1은 res 배열에서 index를 나타내고, count 배열의 i..

컬렉션 프레임워크 : List < ArrayList, Vector, LinkedList, Stack >
Java 2021. 3. 31. 20:29

📌List 인터페이스를 구현하는 클래스 - ArrayList, Vector, LinkedList, Stack이 있다. 📌List 특징 - List는 입력 순서대로 데이터가 저장이 되고, Set과 다르게 중복 데이터 저장이 허용된다. 선형 구조로 데이터를 일렬로 놓은 모양이라고 생각하면 된다. 📌List 공통 메소드 boolean add(E e) - 데이터 삽입 void add(int index, E element) - index에 데이터 삽입 void clear() - 데이터 모두 삭제 boolean contains(Object o) - 데이터가 존재하면 true, 없으면 false 리턴 E get(int index) - index의 데이터 리턴 boolean isEmpty() - 데이터가 없으면 tru..

Scanner 사용 nextInt() / nextLine() / next()
Java 2021. 3. 30. 15:57

next()와 nextLine()의 차이 next() - 공백을 기준으로 한 단어 또는 한 문자씩 입력받는다. - 버퍼에 입력된 문자나 문자열에서 공백 전까지의 단어를 읽음. 그래서 개행 문자를 가져오지 않는다. nextLine() - 문자 또는 문장 한 라인 전체를 입력받는다. - 버퍼에 입력된 문자열을 개행 문자까지 다 가져온다. ex) Hello World 입력 next() : Hello만 출력 nextLine() : Hello World 출력 nextInt() 사용 후 nextLine() 사용 시 문제 발생 - nextInt()는 개행 문자를 제거하지 않는다. 그래서 버퍼에 개행 문자가 남아있게 된다. 여기서, nextLine()을 사용하게 되면 개행 문자를 만나서 개행 문자를 받게 된다. 따라서..

자바(백준) 1145 적어도 대부분의 배수
BOJ(Java) 2021. 2. 1. 16:06

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 package BruteForce_Search; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System...

자바(백준) 4641 Doubles
BOJ(Java) 2021. 2. 1. 14:31

12345678910111213141516171819202122232425262728293031323334353637import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.Arrays;import java.util.StringTokenizer; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st; while(true)..

자바(백준) 14697 방 배정하기
BOJ(Java) 2021. 2. 1. 13:52

1234567891011121314151617181920212223242526272829303132333435363738package BruteForce_Search; import java.util.Scanner; public class Main { public static void main(String args[]) { Scanner s = new Scanner(System.in); int a = 0, b = 0, c = 0, sum = 0; a = s.nextInt(); b = s.nextInt(); c = s.nextInt(); sum = s.nextInt(); for(int i = 0; i

자바(백준) 10448 유레카 이론
BOJ(Java) 2021. 2. 1. 13:25

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 package BruteForce_Search; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static int countarr[]; static int result[]; public st..

자바(백준) 3040 백설 공주와 일곱 난쟁이
BOJ(Java) 2021. 1. 28. 22:48

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 package BruteForce_Search; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(Syst..

자바(백준) 2966 찍기
BOJ(Java) 2021. 1. 28. 22:17

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 package BruteForce_Search; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { static char[] sang = {'A','B','C','A','B','C','..

자바(백준) 2798 블랙잭
BOJ(Java) 2021. 1. 28. 21:06

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ..

자바(백준) 2231 분해합
BOJ(Java) 2021. 1. 28. 20:43

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 package BruteForce_Search; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void main(String args[]) throws IOException { BufferedReader br = new Buffered..

728x90

검색 태그