[이코테][Java] 정수 삼각형
·
PS/이코테
문제 설명맨 위층 7부터 시작해서 아래에 있는 수 중 하나를 선택하여 아래층으로 내려올 때, 이제까지 선택된 수의 합이 최대가 되는 경로를 구하는 프로그램을 작성하세요.아래층에 있는 수는 현재 층에서 선택된 수의 대각선 왼쪽 or 대각선 오른쪽에 있는 것 중에서만 선택할 수 있습니다. 입력조건첫째 줄에 삼각형의 크기둘째 줄부터 n+1번째 줄까지 정수 삼각형출력조건합이 최대가 되는 경로에 있는 수의 합입출력 예시입력예시출력예시5 7 3 8 8 1 02 7 4 4 4 5 2 6 54 문제 풀이다이나믹 프로그래밍으로 풀이'금광' 문제와 비슷한 유형의 문제이다.정수삼각형의 수들을 배열에 저장하면, 윗층에서 현재 위치로 내려올 수 있는 경우는 2가지가 있다.(왼쪽 위 or 바로 위)이 두가지 경우 중에서 더..
[이코테][Java] 금광
·
PS/이코테
문제 설명n × m 크기의 금광의 각 칸에 특정한 크기의 금이 들어있고, 채굴자는 첫 번째 열부터 출발하여 금을 캐기 시작합니다.- 맨 처음에는 첫 번째 열의 어느 행에서든 출발할 수 있다.- 이후에 m번에 걸쳐서 매번 오른쪽 위, 오른쪽, 오른쪽 아래 3가지 중 하나의 위치로 이동해야 한다.위의 규칙을 가지고 이동할 때, 결과적으로 채굴자가 얻을 수 있는 금의 최대 크기를 출력하는 프로그램을 작성하세요. 입력조건첫째 줄에 테스트 케이스 T매 테스트 케이스의 첫째 줄에 n과 m매 테스트 케이스의 둘째 줄에 n × m개의 금의 개수출력조건테스트 케이스마다 채굴자가 얻을 수 있는 금의 최대 크기입출력 예시 입력예시출력예시23 41 3 3 2 2 1 4 1 0 6 4 74 41 3 1 4 2 2 4 1 5..
[이코테][Java] 경쟁적 전염
·
PS/이코테
[문제링크]https://www.acmicpc.net/problem/18405문제 설명하나의 칸의 크기가 1 ×1인 N × N 크기의 시험관 안에 바이러스가 존재할 수 있고, 모든 바이러스는 1 ~ k번까지의 바이러스 종류 중 하나이다. - 시험관에 존재하는 모든 바이러스는 1초마다 상, 하, 좌, 우의 방향으로 증식한다.- 매 초마다 번호가 낮은 종류의 바이러스부터 먼저 증식한다.- 이미 어떠한 바이러스가 존재한다면 그곳에는 다른 바이러스가 들어갈 수 없다.S초가 지난 후에 (X, Y)에 존재하는 바이러스의 종류를 출력하세요. 만약 해당 위치에 바이러스가 존재하지 않는다면 0 출력 입력조건첫째 줄에 시험관의 크기 N, 바이러스 종류의 개수 K둘째줄 ~ N+1번째 줄 까지 시험관 안에 바이러스 정보N+2..
[이코테][Java] 만들 수 없는 금액
·
PS/이코테
문제 설명N개의 동전을 이용하여 만들 수 없는 양의 정수 금액 중 최솟값을 구하는 프로그램을 작성하세요. 입력조건첫째 줄에 동전의 개수를 나타내는 양의 정수 N(1 둘째 줄에 각 동전의 화폐단위를 나타내는 N개의 자연수출력조건주어진 동전들로 만들 수 없는 양의 정수 금액 중 최솟값입출력 예시입력예시출력예시53 2 1 1 98 문제 풀이입력받은 n개의 동전들을 오름차순 정렬한 후, 동전들로 1부터 차례대로 특정 금액(target)을 만들 수 있는지 확인한다.target >= (현재 동전금액) 일 경우, 현재 동전으로 target을 만들 수 있다 → target 값 업데이트여기서 target이 특정 값일 때, 1 ~ (target-1)까지의 모든 금액을 만들 수 있다고 가정한다. 예시) n=5, {3,..
[이코테][Java] 무지의 먹방 라이브
·
PS/이코테
문제링크 : https://school.programmers.co.kr/learn/courses/30/lessons/42891 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 설명무지가 1부터 N번까지의 음식을 음식번호가 증가하는 순서대로 먹기 시작한다.먹방을 시작한 지 K초 후에 네트워크 장애로 인해 방송이 잠시 중단된 후, 다시 먹기 시작할 때 몇 번 음식부터 먹어야 하는지 구한다.만약 더 섭취해야 할 음식이 없다면 -1을 반환한다. 입력조건각 음식을 모두 먹는데 필요한 시간이 들어있는 배열 food_times방송이 중단되 시간 k출력조건k입출력 예시입력예시출력예시[3, 1, 2]51 문제..
[이코테][Java] 볼링공 고르기
·
PS/이코테
문제 설명A, B 두 사람이 서로 무게가 다른 볼링공을 골라 볼링을 치고 있습니다.볼링공은 총 N개가 있으며 각 볼링공마다 무게가 적혀 있고, 공의 번호는 1번부터 순서대로 부여됩니다. 볼링공의 무게는 1부터 M까지 자연수의 형태로 존재하고, 같은 무게의 공은 서로 다른 공으로 간주합니다.두 사람이 서로 다른 무게의 볼링공을 고르는 경우의 수를 구하는 프로그램을 작성하세요. 입력조건첫째 줄에 볼링공의 개수 N, 공의 최대 무게 M(1 ≤ N ≤ 1000, 1 ≤ M ≤ 10)둘째 줄에 각 볼링공의 무게 K(1 ≤ K ≤ M)출력조건두 사람이 볼링공을 고르는 경우의 수입출력 예시입력예시출력예시5 31 3 2 3 288 51 5 4 3 2 4 5 225 문제 풀이n개의 볼링공을 입력받은 후, 순차적으로..