전체 글

전체 글

    [백준] 11576번 : Base Conversion Silver5(실버5) - JAVA[자바]

    [Silver V] Base Conversion - 11576 문제 링크 성능 요약 메모리: 11556 KB, 시간: 80 ms 분류 구현, 수학, 정수론 제출 일자 2023년 11월 29일 09:26:12 문제 설명 타임머신을 개발하는 정이는 오랜 노력 끝에 타임머신을 개발하는데 성공하였다. 미래가 궁금한 정이는 자신이 개발한 타임머신을 이용하여 500년 후의 세계로 여행을 떠나게 되었다. 500년 후의 세계에서도 프로그래밍을 하고 싶었던 정이는 백준 사이트에 접속하여 문제를 풀기로 하였다. 그러나 미래세계는 A진법을 사용하고 있었고, B진법을 사용하던 정이는 문제를 풀 수가 없었다. 뛰어난 프로그래머였던 정이는 A진법으로 나타낸 숫자를 B진법으로 변환시켜주는 프로그램을 작성하기로 하였다. N진법이란,..

    [백준] 1963번 : 소수 경로 Gold4(골드4) - JAVA[자바]

    [Gold IV] 소수 경로 - 1963 문제 링크 성능 요약 메모리: 17916 KB, 시간: 200 ms 분류 너비 우선 탐색, 그래프 이론, 그래프 탐색, 수학, 정수론, 소수 판정, 에라토스테네스의 체 제출 일자 2023년 11월 28일 10:41:32 문제 설명 소수를 유난히도 좋아하는 창영이는 게임 아이디 비밀번호를 4자리 ‘소수’로 정해놓았다. 어느 날 창영이는 친한 친구와 대화를 나누었는데: “이제 슬슬 비번 바꿀 때도 됐잖아” “응 지금은 1033으로 해놨는데... 다음 소수를 무엇으로 할지 고민중이야" “그럼 8179로 해” “흠... 생각 좀 해볼게. 이 게임은 좀 이상해서 비밀번호를 한 번에 한 자리 밖에 못 바꾼단 말이야. 예를 들어 내가 첫 자리만 바꾸면 8033이 되니까 소수가..

    [백준] 1992번 : 쿼드트리 Silver1(실버1) - JAVA[자바]

    [Silver I] 쿼드트리 - 1992 문제 링크 성능 요약 메모리: 12756 KB, 시간: 84 ms 분류 분할 정복, 재귀 제출 일자 2023년 11월 28일 09:35:10 문제 설명 흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단히 표현할 수 있다. 주어진 영상이 모두 0으로만 되어 있으면 압축 결과는 "0"이 되고, 모두 1로만 되어 있으면 압축 결과는 "1"이 된다. 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지를 못하고, 왼쪽 위, 오른쪽 위, 왼쪽 아래, 오른쪽 아래, 이렇..

    [백준] 1780번 : 종이의 개수 Silver2(실버2) - JAVA[자바]

    [Silver II] 종이의 개수 - 1780 문제 링크 성능 요약 메모리: 314592 KB, 시간: 740 ms 분류 분할 정복, 재귀 제출 일자 2023년 11월 27일 10:10:31 문제 설명 N×N크기의 행렬로 표현되는 종이가 있다. 종이의 각 칸에는 -1, 0, 1 중 하나가 저장되어 있다. 우리는 이 행렬을 다음과 같은 규칙에 따라 적절한 크기로 자르려고 한다. 만약 종이가 모두 같은 수로 되어 있다면 이 종이를 그대로 사용한다. (1)이 아닌 경우에는 종이를 같은 크기의 종이 9개로 자르고, 각각의 잘린 종이에 대해서 (1)의 과정을 반복한다. 이와 같이 종이를 잘랐을 때, -1로만 채워진 종이의 개수, 0으로만 채워진 종이의 개수, 1로만 채워진 종이의 개수를 구해내는 프로그램을 작성하..

    [백준] 2447번 : 별 찍기 Gold5(골드5) - JAVA[자바]

    [Gold V] 별 찍기 - 10 - 2447 문제 링크 성능 요약 메모리: 68452 KB, 시간: 280 ms 분류 분할 정복, 재귀 제출 일자 2023년 11월 27일 09:25:23 문제 설명 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 하나씩 있는 패턴이다. *** * * *** N이 3보다 클 경우, 크기 N의 패턴은 공백으로 채워진 가운데의 (N/3)×(N/3) 정사각형을 크기 N/3의 패턴으로 둘러싼 형태이다. 예를 들어 크기 27의 패턴은 예제 출력 1과 같다. 입력 첫째 줄에 N이 주어진다. N은 3의 거듭제곱이다. 즉..

    [백준] 1074번 : Z Silver1(실버1) - JAVA[자바]

    [Silver I] Z - 1074 문제 링크 성능 요약 메모리: 13936 KB, 시간: 104 ms 분류 분할 정복, 재귀 제출 일자 2023년 11월 26일 13:37:36 문제 설명 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 크기가 2N-1 × 2N-1로 4등분 한 후에 재귀적으로 순서대로 방문한다. 다음 예는 22 × 22 크기의 배열을 방문한 순서이다. N이 주어졌을 때, r행 c열을 몇 번째로 방문하는지 출력하는 프로그램을 작성하시오. 다음은 N=3일 때의 예이다. 입력 첫째 줄에 정수 N, r, c가 주어진다. 출력 r행 c..

    [백준] 11729번 : 하노이 탑 이동 순서 Gold5(골드5) - JAVA[자바]

    [Gold V] 하노이 탑 이동 순서 - 11729 문제 링크 성능 요약 메모리: 100692 KB, 시간: 416 ms 분류 재귀 제출 일자 2023년 11월 26일 12:12:23 문제 설명 세 개의 장대가 있고 첫 번째 장대에는 반경이 서로 다른 n개의 원판이 쌓여 있다. 각 원판은 반경이 큰 순서대로 쌓여있다. 이제 수도승들이 다음 규칙에 따라 첫 번째 장대에서 세 번째 장대로 옮기려 한다. 한 번에 한 개의 원판만을 다른 탑으로 옮길 수 있다. 쌓아 놓은 원판은 항상 위의 것이 아래의 것보다 작아야 한다. 이 작업을 수행하는데 필요한 이동 순서를 출력하는 프로그램을 작성하라. 단, 이동 횟수는 최소가 되어야 한다. 아래 그림은 원판이 5개인 경우의 예시이다. 입력 첫째 줄에 첫 번째 장대에 쌓인..

    [백준] 9613번 : GCD합 Silver4(실버4) - JAVA[자바]

    [Silver IV] GCD 합 - 9613 문제 링크 성능 요약 메모리: 11552 KB, 시간: 76 ms 분류 유클리드 호제법, 수학, 정수론 제출 일자 2023년 11월 26일 10:53:59 문제 설명 양의 정수 n개가 주어졌을 때, 가능한 모든 쌍의 GCD의 합을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 테스트 케이스의 개수 t (1 ≤ t ≤ 100)이 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있다. 각 테스트 케이스는 수의 개수 n (1 < n ≤ 100)가 주어지고, 다음에는 n개의 수가 주어진다. 입력으로 주어지는 수는 1,000,000을 넘지 않는다. 출력 각 테스트 케이스마다 가능한 모든 쌍의 GCD의 합을 출력한다. 1. 2중 for문으로 일어날 수 있는 상황을 다 처..