본문 바로가기
728x90

분류 전체보기129

[JAVA]백준 2630번: 색종이만들기 www.acmicpc.net/problem/2630 2630번: 색종이 만들기 첫째 줄에는 전체 종이의 한 변의 길이 N이 주어져 있다. N은 2, 4, 8, 16, 32, 64, 128 중 하나이다. 색종이의 각 가로줄의 정사각형칸들의 색이 윗줄부터 차례로 둘째 줄부터 마지막 줄까지 주어진다. www.acmicpc.net 1. 문제 설명 전체 종이가 같은 색으로만 이루어질 때까지 반씩 나누어 하얀색, 파란색 색종이의 개수를 구하는 문제이다. N은 2,4,6,8,32,64,128중 하나이다. N이 최대 128이라고 가정하면 최대 연산 횟수는 128^2+64^2*4+32^2*8+16^2*16+8^2*32+4^2*64+1^2*128=48236이다. ( 128*128개의 배열을 1*1의 색종이가 될 때까지 분.. 2020. 11. 27.
[JAVA]백준 1748번: 수 이어 쓰기 1 www.acmicpc.net/problem/1748 1748번: 수 이어 쓰기 1 첫째 줄에 N(1≤N≤100,000,000)이 주어진다. www.acmicpc.net 1. 문제 설명 1부터 N까지의 수를 이어서 쓸 때 만들어진 수가 몇 자릿수인지 구하는 문제이다. 같은 자릿수 X를 가진 수들을 다 이어서 수를 만들면 그 수의 자릿수를 9*10^(X-1)*X이다. 수의 개수는 9*10^(X-1)이고 그 수들이 차지하는 길이는 X이므로 위와 같은 식이 나온다. N의 자릿수를 A라고 하면, 1부터 A-1의 자릿수를 가진 수들로 만들어진 길이는 위의 식을 이용해서 구한다. 그 후 A의 자릿수를 가지는 수의 개수는 N-10^(A-1)+1개이고 차지하는 길이는 각각 A이다. 그러므로 마지막에 (N-10^(A-1).. 2020. 11. 15.
[JAVA]백준 1735번: 분수 합 www.acmicpc.net/problem/1735 1735번: 분수 합 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모를 뜻하는 두 개의 자연수가 순서대로 주어진다. 입력되는 네 자연수는 모두 30,000 이하이다. www.acmicpc.net 1. 문제 설명 두 분수가 주어질 때 두 분수의 합을 기약 분수로 출력하는 문제이다. 두 개의 분모들끼리의 최소공배수를 구하고 이를 두 분수의 합의 분모로 한다. 그리고 두 분수들의 분자들을 분모들이 두 분수의 합의 분모가 되기 위해 곱해지는 수만큼 분자들을 곱하고 합을 구한다. 그 후 두 분수의 합의 분수의 분모와 분자의 최대공약수를 구해 그 수를 나누어 기약 분수를 만든다. 2. 코드 import java.lang.reflect.Array; import jav.. 2020. 11. 14.
[JAVA]백준 4641번: Doubles www.acmicpc.net/problem/4641 4641번: Doubles 2~15개의 서로 다른 자연수로 이루어진 리스트가 있을 때, 이들 중 리스트 안에 자신의 정확히 2배인 수가 있는 수의 개수를 구하여라. 예를 들어, 리스트가 "1 4 3 2 9 7 18 22"라면 2가 1의 2배, 4가 2의 www.acmicpc.net 1. 문제 설명 리스트가 주어질때 리스트 안에 자신의 정확히 2배인 수가 있는 수의 개수를 구하는 문제 완전탐색으로 구했다. 2. 코드 import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class Main { publ.. 2020. 11. 14.
728x90