문제 https://leetcode.com/problems/maximum-number-of-vowels-in-a-substring-of-given-length/description/?envType=study-plan-v2&envId=leetcode-75 문자열 s과 정수가 주어 지면 길이가 있는 하위 문자열에서 모음 문자의 최대 개수를k 반환합니다 .sk 영어의 모음 글자'a' 는 , 'e', 'i', 'o', 입니다 'u'. 예시 1: 입력: s = "abciiidef", k = 3 출력: 3 설명: 하위 문자열 "iii"에는 3개의 모음 문자가 포함되어 있습니다. 예 2: 입력: s = "aeiou", k = 2 출력: 2 설명: 길이가 2인 하위 문자열에는 모음 2개가 포함됩니다. 예시 3: 입력:..
코테/알고리즘
문제 https://leetcode.com/problems/house-robber/?envType=study-plan-v2&envId=leetcode-75 당신은 거리의 집을 털려는 전문 강도입니다. 각 집에는 일정 금액의 돈이 숨겨져 있습니다. 각각의 집에서 물건을 강탈하는 것을 막는 유일한 제약은 인접한 집에 보안 시스템이 연결되어 있고 같은 밤에 인접한 두 집에 침입한 경우 자동으로 경찰에 연락한다는 것입니다 . nums각 집의 금액을 나타내는 정수 배열이 주어지면 오늘 밤 경찰에 신고하지 않고 훔칠 수 있는 최대 금액을 반환하세요 . 예시 1: 입력: nums = [1,2,3,1] 출력: 4 설명: 1번 집(돈 = 1)을 털고 3번 집(돈 = 3)을 털었습니다. 도둑질할 수 있는 총 금액 = 1 ..
문제 https://leetcode.com/problems/min-cost-climbing-stairs/?envType=study-plan-v2&envId=leetcode-75 코드 class Solution { public int minCostClimbingStairs(int[] cost) { // i가 2부터인 이유는 제약조건 for(int i = 2; i < cost.length; i++){ // 두칸 아래와 한칸 아래 계단 중 더 값이 작은 계단을 밟으면 된다. // 그리고 밟은 계단의 비용을 더해준다. cost[i] = cost[i] + Math.min(cost[i-2], cost[i-1]); } // 배열 길이의 + 1 의 위치가 꼭대기라고 하면 꼭대기에서 한칸 아래와 두칸 아래 중 작은 값이..
문제 정수 배열이 주어지면 0이 아닌 요소의 상대적 순서를 유지하면서 모든 을 배열의 끝으로 nums이동합니다 .0 배열의 복사본을 만들지 않고 이 작업을 내부에서 수행해야 합니다 . 예시 1: 입력: 숫자 = [0,1,0,3,12] 출력: [1,3,12,0,0] 예시 2: 입력: 숫자 = [0] 출력: [0] 제약: 1
문제 이진 트리의 모든 리프를 왼쪽에서 오른쪽 순서로 고려하면 해당 리프의 값은 리프 값 시퀀스를 형성합니다 . 예를 들어, 위의 주어진 트리에서 리프 값 시퀀스는 입니다 (6, 7, 4, 9, 8). 두 개의 이진 트리는 리프 값 순서가 동일하면 리프 유사로 간주됩니다 . 헤드 노드가 있고 잎이 유사한 true두 개의 주어진 트리가 있는 경우에만 반환합니다 .root1root2 예시 1: 입력: root1 = [3,5,1,6,2,9,8,null,null,7,4], root2 = [3,5,1,6,7,4,2,null,null,null ,null,null,null,9,8] 출력: true 예시 2: 입력: root1 = [1,2,3], root2 = [1,3,2] 출력: false 제약: 각 트리의 노드 수..
문제 에서 n으로 표시된 방이 있으며 방을 제외한 모든 방은 잠겨 있습니다 . 당신의 목표는 모든 방을 방문하는 것입니다. 그러나 열쇠가 없으면 잠긴 방에 들어갈 수 없습니다.0n - 10 방을 방문하면 그 방에서 고유한 열쇠 세트를 찾을 수 있습니다 . 각 열쇠에는 어느 방의 잠금이 해제되는지 나타내는 숫자가 있으며, 이 열쇠를 모두 가져가면 다른 방의 잠금을 해제할 수 있습니다. room을 방문했을 때 얻을 수 있는 키 세트가 있는 배열이 주어지면 rooms모든 방 을 방문할 수 있으면 반환 하고 그렇지 않으면 반환합니다 .rooms[i]itrue false 예시 1: 입력: Rooms = [[1],[2],[3],[]] 출력: true 설명: 방 0을 방문하여 키 1을 가져왔습니다. 그런 다음 방 1..
문제 트리보나치 수열 Tn 은 다음과 같이 정의됩니다. T 0 = 0, T 1 = 1, T 2 = 1, 그리고 T n+3 = T n + T n+1 + T n+2 for n >= 0. 가 주어지면 Tnn 값을 반환합니다 . 예시 1: 입력: n = 4 출력: 4 설명: T_3 = 0 + 1 + 1 = 2 T_4 = 1 + 1 + 2 = 4 예 2: 입력: n = 25 출력: 1389537 제약: 0
문제 주어진 항공권을 모두 이용하여 여행경로를 짜려고 합니다. 항상 "ICN" 공항에서 출발합니다. 항공권 정보가 담긴 2차원 배열 tickets가 매개변수로 주어질 때, 방문하는 공항 경로를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 모든 공항은 알파벳 대문자 3글자로 이루어집니다. 주어진 공항 수는 3개 이상 10,000개 이하입니다. tickets의 각 행 [a, b]는 a 공항에서 b 공항으로 가는 항공권이 있다는 의미입니다. 주어진 항공권은 모두 사용해야 합니다. 만일 가능한 경로가 2개 이상일 경우 알파벳 순서가 앞서는 경로를 return 합니다. 모든 도시를 방문할 수 없는 경우는 주어지지 않습니다. 입출력 예 tickets return [["ICN", "..