본문 바로가기
반응형

java24

[Java/Python] 백준 11279번 - 최대 힙 https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 혼자 힘으로 풀었는가? : O 알고리즘 유형 - 자료 구조 - 우선순위 큐 문제 널리 잘 알려진 자료구조 중 최대 힙이 있다. 최대 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오. 배열에 자연수 x를 넣는다. 배열에서 가장 큰 값을 출력하고, 그 값을 배열에서 제거한다. 프로그램은 처음에 비어있는 배열에서 시작하게 된다. 입력 첫째 줄에 연산의 개수 N(1.. 2022. 11. 25.
[Java] 힙(Heap) https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 위 문제를 풀면서 대학교 2학년 때 배웠던 힙이 기억이 안 나서 공부하게 되었다. 우선 힙(Heap)에 대해서 알아보자. 힙(Heap)이란? 힙은 '최소값 혹은 최댓값을 빠르게 찾기 위한 완전 이진트리 형태로 만들어진 자료구조'라고 정의할 수 있다. 우선 '이진 트리' 구조로는 힙을 구현할 수 없다. 힙의 중요한 모토는 최소 힙 - 부모 노드가 반드시 자식 노드보다 작아야 한다.. 2022. 11. 22.
[Java] BufferedReader, BufferedWriter / 자바 문자 입력받기 알고리즘 문제를 풀다 보면 공백으로 입력받는 경우, 줄간 입력받는 경우 등 다양하게 입력받을 수 있어야 하며 이때 그냥 scanner 기능으로 입력받는 게 아닌 빠른 속도로 입력받기 위해 BufferedReader와 빠르게 출력하기 위한 BufferedWriter 기능을 쓸 줄 알아야 한다. Scanner / BufferedReader 차이 Scanner 입력을 받을 때 공백(space)과 개행(enter)을 모두 경계로 인식한다. next(), nextInt(), nextchar() 등 형태를 지정 가능 BufferedReader 개행(enter)으로만 경계 인식 String 형태로만 저장됨 (형 변환이 필요) Scanner에 비해 월등히 빠른 속도 위와 같이 구분 가능하다. 정수 하나만 받을 때 Bu.. 2022. 11. 20.
[Python/Java] 백준 17626번 - Four Squares https://www.acmicpc.net/problem/17626 17626번: Four Squares 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 1 www.acmicpc.net 혼자 힘으로 풀었는가? : X 구글에 검색해봄(문제가 이해되지 않았음) 알고리즘 유형 - 다이나믹 프로그래밍 - 브루트포스 알고리즘 문제 라그랑주는 1770년에 모든 자연수는 넷 혹은 그 이하의 제곱수의 합으로 표현할 수 있다고 증명하였다. 어떤 자연수는 복수의 방법으로 표현된다. 예를 들면, 26은 52과 12의 합이다; 또한 42 + 32 + 12으로 표현할.. 2022. 11. 16.
반응형