본문 바로가기
728x90
반응형

전체 글225

Space/time trade-offs in hash coding with allowable errors (Bloom FIlter) 프로젝트를 진행하다보면, 수많은 데이터들이 저장되고, 이를 효율적으로 찾기 위해서 여러 가지 방법들에 대해 찾아보게 됩니다.그러던 와중, 데이터를 찾으러 떠나기 전에 있는지부터 확인할 수 있는 Bloom Filter라는 자료구조에 대하여 알아보고자 합니다. Bloom Filter란Bloom Filter는 1970년 Burton H. Bloom이라는 분의 "Space/time trade-offs in hash coding with allowable errors"이라는 논문을 통해 처음 공개되었습니다. 특정 원소가 집합에 속하여 있는지 검사하는데 사용하는 확률형 자료구조 입니다.여기까지만 보면, Map이라는 좋은 자료구조가 있는데 왜? 쓰지? 라는 생각이 들 수 있습니다.그치만 Bloom Filter란 친구.. 2024. 11. 20.
[백준] 32724번 : Erinevused https://www.acmicpc.net/problem/32724 예제 입력의 경우 정렬을 하게 된다면1, 2, 4가 되고 2 - 1 = 14 - 2 = 24 - 1 = 3 = 4 - 2 + 2 - 1 이런 공식으로 합을 더하게 되면 쉽게 풀 수 있다. import 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 Buff.. 2024. 11. 19.
[백준] 8416번 : Czy umiesz potęgować? https://www.acmicpc.net/problem/8416 a^b를 했을 때, 맨 끝자리 수를 구하는 문제입니다. 2의 배수로 생각했을 때 2, 4, 8, 6이 반복되고3의 배수로 생각하면 3, 9, 7, 1이 반복됩니다. 2부터 9까지 모두 생각했을 때, 4개의 수가 반복되므로 b를 4로 나눈 나머지 만큼만 돌면 됩니다.맨 끝자리만 구하면 되니 a도 10으로 나눈 나머지만 곱하면 됩니다. 단, b가 4의 배수인 경우 4로 지정하면 됩니다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { pu.. 2024. 11. 18.
[백준] 2123번 : 인간 탑 쌓기 https://www.acmicpc.net/problem/2123 모든 몸무게의 합 - 본인 몸무게 - 본인 힘으로 위험도들을 모은 후, 정렬한 다음 탑 쌓아가면서 최대 위험도를 구하면 된다. import 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(Sy.. 2024. 11. 17.
[백준] 9881번 : Ski Course Design https://www.acmicpc.net/problem/9881 1. N개의 수의 최소와 최대를 구한다.2. 각 수와 min, max의 차이를 제곱한 수를 더한다3. Integer.MAX_VALUE와 더한 수의 차이의 최소를 구한다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.par.. 2024. 11. 16.
[백준] 32627번 : 문자열 줄이기 https://www.acmicpc.net/problem/32627 알파벳 순서대로 정렬, 알파벳이 같다면 index 번호 순서대로 정렬해서 값을 구하시면 됩니다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.PriorityQueue;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)).. 2024. 11. 14.
[백준] 3135번 : 라디오 https://www.acmicpc.net/problem/3135 B번 채널에 최소 몇번만에 도달할 수 있는지 확인하는 문제입니다. A와 N개의 주파수 중 B와 차이가 가장 적은 주파수로 이동한 후, 그 차이만큼 더한값을 출력하면 됩니다.단, A가 가장 차이가 적은 경우 +1을 하시면 안됩니다. 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 Buffe.. 2024. 11. 13.
[백준] 17615번 : 볼 모으기 https://www.acmicpc.net/problem/17615 앞에서부터 + 뒤에서부터 R또는 B의 개수들을 합친 후, 최소값을 출력해주면 됩니다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); br.readLine(); char[] ch = br.readLine().toCharArray(); Syst.. 2024. 11. 11.
[백준] 17071번 : 숨바꼭질 5 https://www.acmicpc.net/problem/17071 기존 숨바꼭질과 비슷한 문제입니다.단, 동생은 현재 이동속에 부스터가 붙어 +1, 이전값 +2, 이전값 +3 이런식으로 이동거리가 증가됩니다.수빈이가 동생을 만날 수 없고, 찾는 위치가 500,000을 넘는 경우에는 -1을 출력하면 됩니다. import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Queue;import java.util.StringTokenizer;public class Main { static int n, k; public static .. 2024. 11. 10.
728x90
반응형