알고리즘/백준
-
[백준] 10830번 : 행렬 제곱 - 자바(JAVA)알고리즘/백준 2022. 3. 6. 00:01
https://www.acmicpc.net/problem/10830 10830번: 행렬 제곱 크기가 N*N인 행렬 A가 주어진다. 이때, A의 B제곱을 구하는 프로그램을 작성하시오. 수가 매우 커질 수 있으니, A^B의 각 원소를 1,000으로 나눈 나머지를 출력한다. www.acmicpc.net 문제 해석 크기가 N*N인 행렬 A가 주어진다. 이때 A의 B제곱을 구하는 프로그램을 작성하라. 수가 매우 커질 수 있으므로 A^B의 각 원소를 1,000으로 나눈 나머지를 출력한다. 입력 첫째 줄에 행렬의 크기 N과 B가 주어진다. 둘째 줄부터 N개의 줄에 행렬의 각 원소가 주어진다. 제약조건 2 ≤ N ≤ 5 1 ≤ B ≤ 100,000,000,000 행렬의 각 원소는 1,000보다 작거나 같은 자연수 또는..
-
[백준] 2493 : 탑 - 자바(JAVA)알고리즘/백준 2022. 3. 5. 00:01
https://www.acmicpc.net/problem/2493 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 문제 해석 서로 다른 탑을 수평 직선의 왼쪽부터 오른쪽 방향으로 차례로 세운다. 각 탑의 꼭대기에 레이저 송신기를 설치하였다. 모든 탑의 레이저 송신기는 레이저 신호를 지표면과 평행하게 수평 직선의 왼쪽 방향으로 발사하고, 탑의 기둥 모두에는 레이저 신호를 수신하는 장치가 설치되어 있습니다. 예를 들어 높이가 6, 9, 5, 7, 4인 다섯 개의 탑이 수평 직선에 일렬로 서 있고, 모든 탑에서는..
-
[백준] 11047번 : 동전 0 - 자바(JAVA)알고리즘/백준 2022. 2. 28. 00:01
https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 문제 해석 준규는 동전을 많이 가지고 있는데 동전의 종류는 총 N이다. 동전을 적절히 사용하여 그 가치의 합을 K로 만드려고 한다. 이때 필요한 동전의 개수의 최솟값을 구하라. 입력 첫째 줄에 N과 K가 주어진다. 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. 제약조건 1 ≤ N ≤ 10 1 ≤ K ≤ 100,0..
-
[백준] 7576번 : 토마토알고리즘/백준 2022. 2. 25. 10:05
https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 문제 해석 N * M 크기의 창고에 토마토가 존재합니다. 창고는 익은 토마토, 익지 않은 토마토 , 빈 공간으로 이루어집니다. 익은 토마토는 4방향(상, 하, 좌, 우)으로 익지 않은 토마토에게 영향을 주며 하루가 지나면 토마토를 익게 만듭니다. 며칠이 지나면 토마토가 다 익는지 최소 일수를 알고 싶어 합니다. 처음부터 토마토가 모두 익어있다면 0을 출력하고, 토마토가 모두 익지 ..
-
[백준] 2531번 : 회전 초밥 - 자바(JAVA)알고리즘/백준 2022. 2. 25. 00:01
https://www.acmicpc.net/problem/2531 2531번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 30,000, 2 ≤ d ≤ 3,000, 2 ≤ www.acmicpc.net 문제 해석 회전 초밥 음식점의 회전하는 벨트 위에 여러 가지 종류의 초밥이 접시에 담겨 있다. 초밥의 종류를 번호로 표현하며, 벨트 위에는 같은 종류의 초밥이 둘 이상 있을 수 있다. 초밥집에는 행사가 존재한다. 1. 회전 벨트의 한 위치부터 k개의 접시를 연속해서 먹을 경우 할인된 정액 가격을 제공한다. 2. 각 고객에게 초반의 종류 하나가 쓰인 쿠폰을 발..
-
[백준] 17478번 : 재귀함수가 뭔가요? - 자바(JAVA)알고리즘/백준 2022. 2. 20. 00:01
https://www.acmicpc.net/problem/17478 17478번: 재귀함수가 뭔가요? 평소에 질문을 잘 받아주기로 유명한 중앙대학교의 JH 교수님은 학생들로부터 재귀함수가 무엇인지에 대하여 많은 질문을 받아왔다. 매번 질문을 잘 받아주셨던 JH 교수님이지만 그는 중앙대 www.acmicpc.net 문제 해석 재귀 함수를 어떻게 활용할 수 있는지에 대한 문제입니다. 문제 풀이 전 설계 "를 출력하기 위해서는 \"를 사용해야 한다. 출력이 많으므로 StringBuilder에 쌓아서 한 번에 출력한다. 재귀 함수 호출하기 전에 실행해야 하는 구문들 "재귀 함수가 뭔가요?" "잘 들어보게.~" "마을 사람들은~" "그의 답은~" 재귀 함수를 호출한 후에 실행해야 하는 구문들 "라고 답변하였지."..
-
[백준] 3085번 : 사탕 게임 - 자바(JAVA)알고리즘/백준 2022. 2. 17. 00:01
https://www.acmicpc.net/problem/3085 3085번: 사탕 게임 예제 3의 경우 4번 행의 Y와 C를 바꾸면 사탕 네 개를 먹을 수 있다. www.acmicpc.net 문제 해석 N x N 크기에 사탕이 채워져 있다. 사탕의 색은 같지 않을 수 있다. 사탕의 색이 다른 인접한 두 칸을 골라서 교환할 수 있다. 교환은 단 한 번만 이루어진다. 이때 사탕이 같은 색인 가장 긴 연속 부분을 출력한다. 입력 첫째 줄에 보드의 크기 N이 주어진다. 다음 N개의 줄에는 보드에 채워져 있는 사탕의 색상이 주어진다. 제약조건 3 tempMax ? maxCandyCount : tempMax; tempMax = 1; } } maxCandyCount = maxCandyCount > tempMax ?..
-
[백준] 1965번 : 상자넣기 - 자바(JAVA)알고리즘/백준 2022. 2. 16. 00:01
https://www.acmicpc.net/problem/1965 1965번: 상자넣기 정육면체 모양의 상자가 일렬로 늘어서 있다. 상자마다 크기가 주어져 있는데, 앞에 있는 상자의 크기가 뒤에 있는 상자의 크기보다 작으면, 앞에 있는 상자를 뒤에 있는 상자 안에 넣을 수가 www.acmicpc.net 문제 해석 상자가 일렬로 늘어서 있는데 상자마다 크기가 존재한다. 앞에 있는 상자의 크기가 뒤에 있는 상자의 크기보다 작으면, 앞에 있는 상자를 뒤에 있는 상자 안에 넣을 수 있다. 만약 상자의 크기가 (1, 5, 2, 3, 7)인 5개의 상자가 존재한다면, 크기 1인 상자를 크기 5인 상자에 넣고 크기 5인 상자를 크기 7인 상자 안에 넣을 수 있다. 상자의 크기가 주어질 때, 한 번에 넣을 수 있는 최..