목록코딩 테스트 (165)
개발 일지
HTML 삽입미리보기할 수 없는 소스 예시 1:입력: num = 1234출력: 3412설명: 숫자 3과 숫자 1을 바꾸면 숫자 3214가 됩니다.숫자 2를 숫자 4와 바꾸면 숫자 3412가 됩니다.다른 스왑 시퀀스가 있을 수 있지만 3412가 가장 많은 수임을 알 수 있습니다.또한 숫자 4는 패리티가 다르기 때문에 숫자 1과 교환할 수 없습니다. 예시 2:입력: num = 65875출력: 87655설명: 숫자 8과 숫자 6을 바꾸면 숫자 85675가 됩니다.첫 번째 숫자 5와 숫자 7을 바꾸면 숫자 87655가 됩니다.다른 스왑 시퀀스가 있을 수 있지만 87655가 가장 많은 수임을 알 수 있습니다. 조건: 1 9">HTML 삽입미리보기할 수 없는 소스 정답:public class Solution { ..

i, toi]가 노드 fromi에서 노드 toi로의 방향성 에지를 나타내는 배열 에지가 주어집니다.그래프의 모든 노드에 도달할 수 있는 가장 작은 정점 집합을 구합니다. 고유한 솔루션이 존재한다는 것이 보장됩니다.정점은 어떤 순서로든 반환할 수 있습니다." data-ke-type="html">HTML 삽입미리보기할 수 없는 소스 예시 1:입력: n = 6, edges = [[0,1],[0,2],[2,5],[3,4],[4,2]]출력: [0,3]설명: 하나의 정점에서 모든 노드에 도달하는 것은 불가능합니다. 0부터 [0,1,2,5]에 도달할 수 있습니다. 3부터 [3,4,2,5]에 도달할 수 있습니다. 그래서 [0,3]을 출력합니다. 예시 2:입력: n = 5, edges = [[0,1],[2,1],[3,..
크기 n의 정수 배열이 주어지면 ⌊ n/3 ⌋ 번 이상 나타나는 모든 원소를 구합니다. 예시 1:입력: nums = [3,2,3]출력: [3] 예시 2:입력: nums = [1]출력: [1] 예시 3:입력: nums = [1,2]출력: [1,2] 조건:1 -10^9 정답:public class Solution { public IList MajorityElement(int[] nums) { List result = new List(); int countCheck = nums.Length / 3 + 1; var numsDistinct = nums.Distinct().ToArray(); for (int i = 0; i n == num..
야구 경기의 점수를 이상한 규칙으로 유지하고 있습니다. 경기가 시작되면 빈 기록으로 시작합니다.문자열 operations 목록이 주어지며, operations[i]는 레코드에 적용해야 하는 ith 연산이며 다음 중 하나입니다: 정수 x.새로운 점수 x를 기록합니다.'+'.이전 두 점수의 합인 새 점수를 기록합니다.'D'.이전 점수의 두 배에 해당하는 새 점수를 기록합니다.'C'.이전 점수를 무효화하고 레코드에서 제거합니다.모든 연산을 적용한 후 레코드에 있는 모든 점수의 합을 반환합니다.테스트 케이스는 답과 모든 중간 계산이 32비트 정수에 맞고 모든 연산이 유효하도록 생성됩니다. 예시 1:입력: ops = ["5","2","C","D","+"]출력: 30설명:"5" - 레코드에 5를 추가하면 레코드는..
문자열 s가 주어지면 모든 대문자를 동일한 소문자로 바꾼 후 문자열을 반환합니다. 예시 1:입력: s = "Hello"출력: "hello" 예시 2:입력: s = "here"출력: "here" 예시 3:입력: s = "LOVELY"출력: "lovely" 조건:1 s는 인쇄 가능한 ASCII 문자로 구성됩니다. 정답:public class Solution { public string ToLowerCase(string s) { return s.ToLower(); }}해설: ToLower를 이용하여 모두 소문자로 변경 후 return합니다.
내장된 해시 테이블 라이브러리를 사용하지 않고 해시셋을 설계합니다.MyHashSet 클래스 구현:void add(키) 값 key를 해시셋에 삽입합니다.bool contain(key) 해시셋에 값 key가 있는지 여부를 반환합니다.void remove(key) 해시셋에서 값 key를 제거합니다. 해시셋에 key가 없는 경우 아무것도 수행하지 않습니다. 예시 1:입력["MyHashSet", "add", "add", "contains", "contains", "add", "contains", "remove", "contains"][[], [1], [2], [1], [3], [2], [2], [2], [2]]출력[null, null, null, true, false, null, true, null, false]..
정수 x가 주어졌을 때 x가 대칭수라면 true로 반환됩니다, 그렇지 않으면 false를 반환합니다. 예시 1:입력: x = 121출력: true설명: 121은 왼쪽에서 오른쪽으로, 오른쪽에서 왼쪽으로 121로 읽힙니다. 예시 2:입력: x = -121출력: false설명: 왼쪽에서 오른쪽으로 -121로 표시됩니다. 오른쪽에서 왼쪽으로 121-가 됩니다. 따라서 대칭수가 아닙니다. 예시 3:입력: x = 10출력: false설명: 오른쪽에서 왼쪽으로 01을 읽습니다. 따라서 대칭수가 아닙니다. 조건:-2^31 정답:public class Solution { public bool IsPalindrome(int x) { var result = x.ToString().Reverse().T..

이진 트리는 트리의 모든 노드가 같은 값을 가질 때 단일값을 갖습니다.이진 트리의 root가 주어지면 주어진 트리가 유니값인 경우 true로 반환하거나 그렇지 않은 경우 false로 반환합니다. 예시 1:입력: root = [1,1,1,1,1,null,1]출력: true 예시 2:입력: root = [2,2,2,5,2]출력: false 조건:트리의 노드 수는 [1, 100] 범위에 있습니다.0 정답:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(in..

이진 검색 트리(BST)의 root와 정수 val이 주어집니다.BST에서 노드의 값이 val과 같은 노드를 찾아서 해당 노드에 뿌리를 둔 하위 트리를 반환합니다. 이러한 노드가 없는 경우 null을 반환합니다. 예시 1:입력: root = [4,2,7,1,3], val = 2출력: [2,1,3] 예시 2:입력: root = [4,2,7,1,3], val = 5출력: [] 조건:트리의 노드 수는 [1, 5000] 범위에 있습니다.1 루트는 이진 검색 트리입니다.1 정답:/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public ..
양의 정수 배열 arr이 주어졌을 때, k번 이상 반복되는 길이 m의 패턴을 구합니다.패턴은 하나 이상의 값으로 구성된 하위 배열(연속적인 하위 시퀀스)로, 겹치지 않고 여러 번 연속으로 반복됩니다. 패턴은 패턴의 길이와 반복 횟수로 정의됩니다.길이 m의 패턴이 k번 이상 반복되는 경우 true로 반환하고, 그렇지 않으면 false로 반환합니다. 예시 1:입력: arr = [1,2,4,4,4,4], m = 1, k = 3출력: 참설명: 길이 1의 패턴 (4)은 연속으로 4회 반복됩니다. 패턴은 k번 이상 반복될 수 있지만 그보다 적게 반복될 수는 없습니다. 예시 2:입력: arr = [1,2,1,2,1,1,1,3], m = 2, k = 2출력: true설명: 길이가 2인 패턴 (1,2) 가 2번 연속으..