목록분류 전체보기 (165)
개발 일지
정수 n이 주어집니다. 길이 n + 1의 0 인덱스 정수 배열 수는 다음과 같은 방식으로 생성됩니다:nums[0] = 0nums[1] = 1nums[2 * i] = nums[i] when 2 nums[2 * i + 1] = nums[i] + nums[i + 1] when 2 배열 nums의 최대 정수를 반환합니다. 예시 1:입력: n = 7출력: 3설명: 주어진 규칙에 따라:nums[0] = 0nums[1] = 1nums[(1 * 2) = 2] = nums[1] = 1nums[(1 * 2) + 1 = 3] = nums[1] + nums[2] = 1 + 1 = 2nums[(2 * 2) = 4] = nums[2] = 1nums[(2 * 2) + 1 = 5] = nums[2] + nums[3] = 1 + 2..
배열 nums가 주어지면 배열이 오름차순으로 정렬된 다음 몇 개의 위치(0 포함)를 회전시킨 경우 true을 반환합니다. 그렇지 않으면 false을 반환합니다.원본 배열에 중복이 있을 수 있습니다.Notes: 배열 A를 x 위치로 회전하면 A[i] == B[(i+x) % A.length]와 같은 길이의 배열 B가 되며, 여기서 %는 모듈로 연산입니다. 예시 1:입력: nums = [3,4,5,1,2]출력: true설명: [1,2,3,4,5]가 원래 정렬된 배열입니다.배열을 x = 3 위치만큼 회전하여 값 3의 요소에서 시작할 수 있습니다: [3,4,5,1,2]. 예시 2:입력: nums = [2,1,3,4]출력: false설명: 회전하면 nums를 만들 수 있는 정렬된 배열이 없습니다. 예시 3:입력: ..
0-인덱스 문자열 배열 details이 주어집니다. details의 각 요소는 주어진 승객에 대한 정보를 길이 15의 문자열로 압축하여 제공합니다. 시스템은 다음과 같습니다:처음 10개의 문자는 승객의 전화번호로 구성됩니다.다음 문자는 해당 인물의 성별을 나타냅니다.다음 두 문자는 사람의 나이를 나타내는 데 사용됩니다.마지막 두 문자가 해당 사람에게 할당된 좌석을 결정합니다.엄격하게 60세 이상인 승객 수를 반환합니다. 예시 1:입력: details = ["7868190130M7522","5303914400F9211","9273338290F4010"]출력: 2설명: 인덱스 0, 1, 2의 승객은 75세, 92세, 40세입니다. 따라서 60세 이상인 사람은 2명입니다. 예시 2:입력: details = [..
처음에는 은행 계좌 잔액이 100달러입니다.구매에 지출할 금액을 달러, 즉 가격으로 나타내는 정수 purchaseAmount이 주어집니다.구매 시 먼저 purchaseAmount을 가장 가까운 배수인 10으로 반올림합니다. 이 값을 roundedAmount이라고 합니다. 그런 다음 은행 계좌에서 roundedAmount 달러가 제거됩니다.이 구매 후 최종 은행 계좌 잔액을 나타내는 정수를 반환합니다.Notes:이 문제에서 0은 10의 배수로 간주됩니다.반올림 시 5는 위로 반올림됩니다(5는 10으로 반올림, 15는 20으로 반올림, 25~30 등). 예시 1:입력: purchaseAmount = 9출력: 90설명:10에서 9의 가장 가까운 배수는 10입니다. 따라서 계좌 잔액은 100 - 10 = 90이..
볼링 게임에서 플레이어 1과 플레이어 2가 각각 친 핀 수를 나타내는 0 인덱스 정수 배열 플레이어 1과 플레이어 2 두 개가 주어집니다.볼링 게임은 n번의 턴으로 구성되며, 각 턴의 핀 수는 정확히 10개입니다.플레이어가 i번째 턴에서 xi 핀을 친다고 가정합니다. 플레이어의 i번째 턴의 값은 다음과 같습니다:플레이어가 (i - 1)번째 또는 (i - 2)번째 턴에서 10핀을 치는 경우 2xi.그렇지 않으면 xi입니다.플레이어의 점수는 n번의 턴 값의 합입니다.Return플레이어 1의 점수가 플레이어 2의 점수보다 크면 1,플레이어 2의 점수가 플레이어 1의 점수보다 큰 경우 2무승부일 경우 0. 예시 1:입력: player1 = [5,10,3,2], player2 = [6,5,7,3]출력: 1설명:플..
감소하지 않는 순서로 정렬된 두 개의 정수 배열 nums1과 nums2가 주어지면 두 배열에 공통되는 최소 정수를 반환합니다. nums1과 nums2 사이에 공통 정수가 없는 경우 -1을 반환합니다.두 배열 모두 해당 정수가 하나 이상 존재하는 경우 정수는 nums1 및 nums2에 공통이라고 합니다. 예시 1:입력: nums1 = [1,2,3], nums2 = [2,4]출력: 2설명: 두 배열에 공통적으로 사용되는 가장 작은 원소는 2이므로 2를 반환합니다. 예시 2:입력: nums1 = [1,2,3,6], nums2 = [2,3,4,5]출력: 2설명: 배열에는 2와 3, 두 개의 공통 요소가 있고 그 중 2가 가장 작으므로 2가 반환됩니다. 조건:1 1 num1과 num2는 모두 내림차순으로 정렬됩..

무색 단위 셀로 구성된 무한히 큰 2차원 격자가 존재합니다. 양의 정수 n이 주어지면 다음 루틴을 n분 동안 수행해야 함을 나타냅니다:첫 번째 순간에 임의의 단위 셀을 파란색으로 칠합니다.그 후 1분마다 파란색 셀에 닿는 모든 색이 없는 셀을 파란색으로 칠합니다.아래는 1분, 2분, 3분 후 그리드의 상태를 그림으로 표현한 것입니다.n분이 끝날 때 색이 있는 셀의 수를 반환합니다. 예시 1:입력: n = 1출력: 1설명: 1분 후 파란색 셀이 하나만 있으므로 1을 반환합니다. 예시 2:입력: n = 2출력: 5설명: 2분 후 경계에 4개의 색 셀이 있고 중앙에 1개의 색 셀이 있으므로 5개를 반환합니다. 조건:1 정답:public class Solution { public long ColoredC..
열차 도착 시간(시간)을 나타내는 양의 정수 arrivalTime과 지연 시간(시간)을 나타내는 또 다른 양의 정수 delayedTime이 주어집니다.기차가 역에 도착하는 시간을 반환합니다.이 문제의 시간은 24시간 형식입니다. 예시 1:입력: arrivalTime = 15, delayedTime = 5출력: 20설명: 기차 도착 시간은 15:00시간이었습니다. 5시간 지연되었습니다. 이제 15+5 = 20(20:00시간)에 도착할 예정입니다. 예시 2:입력: arrivalTime = 13, delayedTime = 11출력: 0설명: 기차 도착 시간은 13:00시간이었습니다. 11시간 지연되었습니다. 이제 13+11=24에 도착합니다(24시간 형식으로 00:00으로 표시되므로 0으로 반환). 조건:1..
순증가 순서로 정렬된 양의 정수 배열 arr와 정수 k가 주어집니다.이 배열에서 누락된 k번째 양의 정수를 반환합니다. 예시 1:입력: arr = [2,3,4,7,11], k = 5출력: 9설명: 누락된 양의 정수는 [1,5,6,8,9,10,12,13,...]입니다. 다섯 번째 누락된 양의 정수는 9입니다. 예시 2:입력: arr = [1,2,3,4], k = 2출력: 6설명: 누락된 양의 정수는 [5,6,7,...]입니다. 두 번째 누락된 양의 정수는 6입니다. 조건:1 1 1 1 정답:public class Solution { public int FindKthPositive(int[] arr, int k) { List result = new List(); for (i..
연속된 두 요소의 차이가 같은 경우 숫자 시퀀스를 산술 진행이라고 합니다.숫자 배열이 arr이면 배열을 재정렬하여 산술 진행을 형성할 수 있는 경우 true를 반환합니다. 그렇지 않으면 false를 반환합니다. 예시 1:입력: arr = [3,5,1]출력: True설명: 각 연속된 요소 사이에 각각 2와 -2의 차이를 두고 요소의 순서를 [1,3,5] 또는 [5,3,1]로 변경할 수 있습니다. 예시 2:입력: arr = [1,2,4]출력: False설명: 산술 진행을 구하기 위해 요소의 순서를 변경할 수 있는 방법은 없습니다. 조건:2 -10^6 정답:public class Solution { public bool CanMakeArithmeticProgression(int[] arr) { ..