728x90 전체 글129 [JAVA]백준 1725번: 히스토그램 www.acmicpc.net/problem/1725 1725번: 히스토그램 첫 행에는 N (1 ≤ N ≤ 100,000) 이 주어진다. N은 히스토그램의 가로 칸의 수이다. 다음 N 행에 걸쳐 각 칸의 높이가 왼쪽에서부터 차례대로 주어진다. 각 칸의 높이는 1,000,000,000보다 작거나 같은 www.acmicpc.net 1. 문제 설명 주어진 히스토그램에 대해 가장 큰 직사각형의 넓이를 구하는 프로그램을 작성하는 문제이다. 종만북의 분할 정복 예시 문제 울타리 잘라내기 문제와 같은 문제이다. 종만북의 풀이과정 같이 3가지의 형태로 문제를 분할하여서 풀었다. 막대그래프를 반으로 잘랐을 때 가장 큰 직사각형은 3가지의 경우로 존재할 수 있다. 1. 가장 큰 직사각형은 왼쪽 그래프에만 있을 경우 2. 가.. 2021. 1. 2. [JAVA]백준 10974번: 모든 순열 www.acmicpc.net/problem/10974 10974번: 모든 순열 N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오. www.acmicpc.net 1. 문제 설명 n이 주어졌을 때, 1부터 n까지의 수로 이루어진 순열을 사전 순으로 출력하는 문제이다. ArrayList를 사용해서 사전 순으로 String을 만들어가고 ArrayList가 비었을 때 만든 문자열을 출력한다. 2. 코드 import java.awt.image.BufferedImageFilter; import java.io.*; import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Arrays; imp.. 2021. 1. 1. [JAVA]백준 4779번: 칸토어 집합 www.acmicpc.net/problem/4779 4779번: 칸토어 집합 칸토어 집합은 0과 1사이의 실수로 이루어진 집합으로, 구간 [0, 1]에서 시작해서 각 구간을 3등분하여 가운데 구간을 반복적으로 제외하는 방식으로 만든다. 전체 집합이 유한이라고 가정하고, www.acmicpc.net 1. 문제 설명 -로 채워진 입력받은 수의 길이의 문자열을 만든 후 선의 길이가 1이 될 때까지 3 등분하고 가운데 문자열은 공백으로 바꾼다. 먼저 char 배열 전체를 공백으로 바꾸고 range가 1이 될때까지 삼등분하면서 재귀 호출하였다. 2. 코드 import java.awt.image.BufferedImageFilter; import java.io.*; import java.lang.reflect.Arr.. 2020. 12. 28. [JAVA]백준 1037번: 약수 www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되 www.acmicpc.net 1. 문제 설명 N의 약수가 주어질 때 N을 구하는 문제이다. 주어진 약수들을 정렬하고 제일 작은 약수와 제일 큰 약수를 곱하면 N을 구할 수 있다. 2. 코드 import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; import java.lang.reflect.Array; import java.. 2020. 12. 27. 이전 1 ··· 19 20 21 22 23 24 25 ··· 33 다음 728x90