문제 짱짱이는 총 N개의 필통을 가지고 있으며, 각각의 필통에는 지우개가 1번부터 N번까지 번호가 매겨져 있습니다. 지우개를 교환하는 방법이 주어질 때, 짱짱이가 M번 교환한 이후에 각 필통에 어떤 지우개가 들어있는지를 구하는 프로그램을 작성하세요. 입력 배열 처음에는 N과 M을 있습니다. 두번째 배열부터 지우개를 교환하는 데이터가 있습니다. 두 정수로 이루어져있으며 두 정수의 필통에 있는 지우개를 교환하는겁니다. 풀이 function swapBins(input) { const [N, M] = input[0].split(' ').map(Number); const result = new Array(N).fill().map((arr, index) => { return index + 1; }); for (le..
문제 짱짱이는 총 N개의 필통을 가지고 있으며, 각각의 필통에는 1번부터 N번까지 번호가 매겨져 있습니다. 또한, 1번부터 N번까지 번호가 적힌 지우개를 매우 많이 가지고 있습니다. 가장 처음 필통에는 지우개가 들어있지 않으며, 필통에는 지우개를 1개만 넣을 수 있습니다. 짱짱이는 앞으로 M번 지우개를 넣으려고 합니다. 짱짱이는 한 번 지우개를 넣을 때, 지우개를 넣을 필통 범위를 정하고, 정한 필통에 모두 같은 번호가 적힌 지우개를 넣습니다. 만약, 필통에 지우개가 이미 있는 경우에는 들어있는 지우개를 빼고, 새로 지우개를 넣습니다. 지우개를 넣을 필통은 연속되어 있어야 합니다. 지우개를 어떻게 넣을지가 주어졌을 때, M번 지우개를 넣은 이후에 각 필통에 어떤 지우개가 들어 있는지 구하는 프로그램을 작..
문제 1에서부터 6까지의 눈을 가진 4개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 4개가 나오면 50,000원 + (같은 눈) × 5,000원의 상금을 받게 된다. 같은 눈이 3개가 나오면 10,000원 + (같은 눈) × 1,000원의 상금을 받게 된다. 같은 눈이 2개씩 두 쌍이 나오는 경우에는 2,000원 + (두 쌍 중 더 큰 눈) × 500원의 상금을 받게 된다. 같은 눈이 2개만 나오는 경우에는 1,000원 + (같은 눈) × 100원의 상금을 받게 된다. 모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈) × 100원의 상금을 받게 된다. 4개 주사위의 나온 눈이 주어질 때, 상금을 계산하는 프로그램을 작성 하시오. 입력 각 주사위의 눈을 공백으로 ..
문제 코난 전자에서는 건강에 좋고 맛있는 통닭 오븐을 간편하게 만드는 인공지능 전자레인지를 개발하려고 합니다. 인공지능 전자레인지를 사용하는 방법은 적당한 양의 통닭을 전자레인지에 넣으면 됩니다. 그러면 인공지능 전자레인지는 오븐구이가 끝나는 시간을 분 단위로 자동적으로 계산합니다. 또한, 코난 전자의 인공지능 전자레인지 앞면에는 사용자에게 통닭 오븐이 끝나는 시각을 알려 주는 디지털 시계가 있습니다. 통닭을 시작하는 시각과 전자레인지를 하는 데 필요한 시간이 분 단위로 주어졌을 때, 전자레인지가 끝나는 시각을 계산하는 프로그램을 작성하세요. 입력 주사위의 눈을 입력하세요: 3 3 4 4 프로그램은 다음과 같이 동작합니다: 1. 통닭 오븐을 시작하는 시각을 입력하세요. (예: "12 30") 2. 오븐구..
문제 주어진 연도가 윤년인지 아닌지를 판별하여 해당 여부를 출력하는 프로그램을 작성하세요. 윤년은 연도가 4의 배수이면서, 100의 배수가 아닐 때 또는 400의 배수일 때입니다. 예를 들어, 1996년은 4의 배수이면서 100의 배수가 아니라서 윤년이며, 1800년은 100의 배수이고 400의 배수는 아니므로 윤년이 아닙니다. 그러나 2400년은 400의 배수이므로 윤년입니다. 풀이 function isLeapYear(year) { if ((year % 4 === 0 && year % 100 !== 0) || year % 400 === 0) return true; return false; } const test_cases = [ 1996, 1800, 2400, 2008, 2024, 1600, 1700,..