목록분류 전체보기 (165)
개발 일지
문장 'text'(문장은 공백으로 구분된 단어의 문자열)가 다음과 같은 형식으로 주어집니다:첫 글자는 대문자입니다.' text '의 각 단어는 하나의 공백으로 구분됩니다.작업은 텍스트의 단어를 정렬하여 모든 단어의 길이가 점점 더 긴 순서로 정렬하는 것입니다. 두 단어의 길이가 같은 경우 원래 순서대로 정렬합니다.위에 표시된 형식에 따라 새 텍스트를 반환합니다. 예시 1:입력: text = "Leetcode is cool"출력: "Is cool leetcode"설명:길이 8의 "Leetcode", 길이 2의 "is", 길이 4의 "cool" 등 세 단어가 있습니다.출력은 길이순으로 정렬되며 새로운 첫 단어는 대문자로 시작됩니다. 예시 2:입력: text = "Keep calm and code on"출력:..
사용자가 입력한 0-indexed 문자열이 주어집니다. 키를 변경하는 것은 마지막으로 사용한 키와 다른 키를 사용하는 것으로 정의됩니다. 예를 들어, s = "ab"에는 키가 변경되는 반면, s = "bBBB"에는 키가 변경되지 않습니다.사용자가 키를 변경해야 했던 횟수를 반환합니다.참고: 시프트 또는 캡 잠금과 같은 수식어는 키 변경에 포함되지 않습니다. 즉, 사용자가 문자 'a'를 입력한 다음 문자 'A'를 입력한 경우 키 변경으로 간주되지 않습니다. 예시 1:입력: s = "aAbBcC"출력: 2설명:s[0] = 'a'에서 s[1] = 'A'까지는 캡 잠금 또는 시프트가 카운트되지 않으므로 키 변경은 없습니다.s[1] = 'A'에서 s[2] = 'b'로 키가 변경됩니다.s[2] = 'b'에서 s[3..
nums[i]가 [1, n] 범위에 있는 n 정수 배열 nums가 주어지면 nums에 나타나지 않는 [1, n] 범위의 모든 정수 배열을 반환합니다. 예시 1:입력: nums = [4,3,2,7,8,2,3,1]출력: [5,6] 예시 2:입력: nums = [1,1]출력: [2] 조건:n == nums.length1 1 정답:public class Solution { public IList FindDisappearedNumbers(int[] nums) { IList result = new List(); for (int i = 1; i 해설: 배열의 길이 내의 숫자 중에서 nums 배열에 들어가지 않는 수를 찾는 문제이기 때문에 indexOf로 i가 존재하지 않아 -1을 반환..
두 개의 이진 문자열 a와 b가 주어지면 그 합을 이진 문자열로 반환합니다. 예시 1:입력: a = "11", b = "1"출력: "100" 예시 2:입력: a = "1010", b = "1011"출력: "10101" 조건:1 a와 b는 '0' 또는 '1' 문자로만 구성됩니다.각 문자열은 0 자체를 제외하고 선행 0을 포함하지 않습니다. 정답:public class Solution { public string AddBinary(string a, string b) { string result = ""; List charList = new List(); bool plus = false; for (int i = a.Length - 1, j ..
정수 배열 arr이 주어지면 배열에 연속되는 홀수가 3개 있으면 true를 반환하고 그렇지 않으면 false를 반환합니다. 예시 1:입력: arr = [2,6,4,1]출력: false설명: 연속된 세 개의 홀수는 없습니다. 예시 2:입력: arr = [1,2,34,3,4,5,7,23,12]출력: true설명: [5,7,23]은 세 개의 연속된 홀수입니다. 조건:1 1 정답:public class Solution { public bool ThreeConsecutiveOdds(int[] arr) { bool result = false; for (int i = 0; i 해설: 배열 arr의 i번째에서 홀수를 발견했다면 배열을 넘지 않을 경우 i + 2번째까지 홀수인지 확인합니다..

정렬된 두 링크 리스트 list1과 list2의 헤드가 주어집니다.두 개의 리스트 을 하나의 정렬된 리스트로 병합합니다. 리스트는 처음 두 리스트의 노드를 서로 연결하여 만들어야 합니다.병합된 링크 리스트의 헤드 부분을 반환합니다. 예시 1:입력: list1 = [1,2,4], list2 = [1,3,4]출력: [1,1,2,3,4,4] 예시 2:입력: list1 = [], list2 = []출력: [] 예시 3:입력: list1 = [], list2 = [0]출력: [0] 조건:두 목록의 노드 수는 [0, 50] 범위입니다. -100 list1과 list2는 모두 비내림차순으로 정렬됩니다. 정답:public class Solution { public ListNode MergeTwoLists(List..
서로 다른 정수로 이루어진 배열 'nums'가 주어지면 가능한 모든 순열을 반환합니다. 당신은 어떤 순서로든 답을 반환할 수 있습니다. 예시 1: 입력: nums = [1,2,3] 출력: [[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]] 예시 2: 입력: nums = [0,1] 출력: [[0,1],[1,0]] 예시 3: 입력: nums = [1] 출력: [[1]] 조건: 1
두 개의 문자열 needle과 haystack가 주어지면 haystack에서 needle이 처음 발생한 인덱스를 반환하거나, needle이 건haystack의 일부가 아닌 경우 -1을 반환합니다. 예시 1: 입력: haystack = "sadbutsad", needle = "sad" 출력: 0 설명: "sad"는 인덱스 0과 6에서 발생합니다 첫 번째 발생은 인덱스 0이므로 0을 반환합니다. 예시 2: 입력: haystack = "leetcode", needle = "leeto" 출력: -1 설명: "leeto"는 "leetcode"에 포함되지 않았으므로 -1을 반환합니다. 조건: 1
양의 정수 n이 주어졌을 때, 1부터 n^2까지의 원소를 나선형으로 채운 n*n 행렬을 생성합니다. 예시 1: 입력: n = 3 출력: [[1,2,3],[8,9,4],[7,6,5]] 예시 2: 입력: n = 1 출력: [[1]] 조건: 1
nums 배열 번호와 val 값이 주어지면, val의 값을을 nums 내에서 전부 제거합니다. 원소의 순서가 바뀔 수 있습니다. 그런 다음 val과 동일하지 않은 요소의 수를 반환합니다. val과 동일하지 않은 nums의 요소 수를 k로 간주하고, 합격하려면 다음 작업을 수행해야 합니다: 배열 nums를 변경하여 nums의 첫 번째 k개의 원소가 val과 동일하지 않은 원소를 포함합니다. 나머지 nums의 원소는 nums의 크기뿐만 아니라 중요하지 않습니다. Return K 예시 1: 입력: nums = [3,2,2,3], val = 3 출력: 2, nums = [2,2,_,_] 설명: 함수는 k = 2를 반환해야 하며, 처음 두 개의 숫자 요소는 2입니다. 반환된 k 외에 무엇을 남겨두는지는 중요하지 ..