leetcode
-
Problem : https://leetcode.com/problems/alternating-groups-ii Difficulty : Medium Status : Solved Time : 00:14:52 문제 설명 더보기빨강과 블루 타일로 구성된 원이 있다. 정수 배열 colors와 정수 k가 주어진다. 타일 i의 색상은 colors[i]로 표현된다. * colors[i] == 0은 타일 i가 빨강임을 의미한다.* colors[i] == 1은 타일 i가 파랑임을 의미한다. 교대하는 그룹은 원 안의 k개의 연속되는 모든 타일이 교대하는 색상으로 이루어졌음을 의미한다 (그룹의 첫 번째와 마지막 번째를 제외한 모든 타일이 왼쪽과 오른쪽과는 다른 색상의 타일을 가지고 있음을 의미한다) 교대하는 그룹의 개수를..
3208. Alternating Groups IIProblem : https://leetcode.com/problems/alternating-groups-ii Difficulty : Medium Status : Solved Time : 00:14:52 문제 설명 더보기빨강과 블루 타일로 구성된 원이 있다. 정수 배열 colors와 정수 k가 주어진다. 타일 i의 색상은 colors[i]로 표현된다. * colors[i] == 0은 타일 i가 빨강임을 의미한다.* colors[i] == 1은 타일 i가 파랑임을 의미한다. 교대하는 그룹은 원 안의 k개의 연속되는 모든 타일이 교대하는 색상으로 이루어졌음을 의미한다 (그룹의 첫 번째와 마지막 번째를 제외한 모든 타일이 왼쪽과 오른쪽과는 다른 색상의 타일을 가지고 있음을 의미한다) 교대하는 그룹의 개수를..
11:13:35 -
Problem : https://leetcode.com/problems/minimum-recolors-to-get-k-consecutive-black-blocks Difficulty : Easy Status : Solved Time : 00:11:15 문제 설명 더보기길이 n의 blocks 문자열이 주어집니다. blocks[i]는 'W' 혹은 'B'이며, i번째 block의 색상을 의미합니다. 'W'와 'B'는 각각 흰색과 검은색을 의미합니다. 또한 정수 k가 주어지며, 연속적인 검은 블록의 목표 개수를 의미합니다. 한 번의 작업에서, 당신은 흰색 블록이 검은색 블록이 되도록 바꿀 수 있습니다. 최소한 하나 이상의 k개의 연속적인 블록들이 나타나도록 필요한 최소 작업 개수를 반환하세요. 풀이 다시 오랫..
2379. Minimum Recolors to Get K Consecutive Black BlocksProblem : https://leetcode.com/problems/minimum-recolors-to-get-k-consecutive-black-blocks Difficulty : Easy Status : Solved Time : 00:11:15 문제 설명 더보기길이 n의 blocks 문자열이 주어집니다. blocks[i]는 'W' 혹은 'B'이며, i번째 block의 색상을 의미합니다. 'W'와 'B'는 각각 흰색과 검은색을 의미합니다. 또한 정수 k가 주어지며, 연속적인 검은 블록의 목표 개수를 의미합니다. 한 번의 작업에서, 당신은 흰색 블록이 검은색 블록이 되도록 바꿀 수 있습니다. 최소한 하나 이상의 k개의 연속적인 블록들이 나타나도록 필요한 최소 작업 개수를 반환하세요. 풀이 다시 오랫..
2025.03.08 -
Problem : https://leetcode.com/problems/shifting-letters-ii Difficulty : Medium Status : Solved Time : 00:11:44 문제 설명 더보기영소문자로 구성된 문자열 s와, 2차원 정수 배열 shift를 입력이 주어집니다. shift[i] = [start_i, end_i, direction_i]dlek.모든 i에 대해서, 인덱스 start_i부터 인덱스 end_i(를 포함한)의 모든 문자는 direction_i=1일때 앞으로 shift되며 direction_i = 0일때 뒤로 shift됩니다. 문자가 앞으로 shift된다는 의미는, 이 문자를 알파벳 상의 다음 문자로 교체함을 의미합니다('z' 는 'a'가 되도록 순환합니다)...
2381. Shifting Letters IIProblem : https://leetcode.com/problems/shifting-letters-ii Difficulty : Medium Status : Solved Time : 00:11:44 문제 설명 더보기영소문자로 구성된 문자열 s와, 2차원 정수 배열 shift를 입력이 주어집니다. shift[i] = [start_i, end_i, direction_i]dlek.모든 i에 대해서, 인덱스 start_i부터 인덱스 end_i(를 포함한)의 모든 문자는 direction_i=1일때 앞으로 shift되며 direction_i = 0일때 뒤로 shift됩니다. 문자가 앞으로 shift된다는 의미는, 이 문자를 알파벳 상의 다음 문자로 교체함을 의미합니다('z' 는 'a'가 되도록 순환합니다)...
2025.01.05 -
Problem : https://leetcode.com/problems/unique-length-3-palindromic-subsequences Difficulty : Medium Status : Solved Time : 00:12:21 문제 설명 더보기문자열 s가 주어졌을 때, s의 부분 문자열 중 길이 3의 유일한 펠린드롬의 개수를 반환하라.같은 부분 문자열을 만드는 여러 방법이 있다고 해도, 이는 1개로 세어짐에 유의하라. 펠린드롬은 앞으로, 뒤로 읽어도 같은 문자열을 의미한다.부분 문자열은 원본 문자열에서 일부 문자(안 쓸 수도 있다)를, 남은 문자들의 상대적인 순서를 바꾸지 않고 제거함으로써 얻어지는 새로운 문자열이다. 풀이 해시를 사용하자. (거듭 말하지만, 파이썬에서 해시 - set, ..
1930. Unique Length-3 Palindromic SubsequencesProblem : https://leetcode.com/problems/unique-length-3-palindromic-subsequences Difficulty : Medium Status : Solved Time : 00:12:21 문제 설명 더보기문자열 s가 주어졌을 때, s의 부분 문자열 중 길이 3의 유일한 펠린드롬의 개수를 반환하라.같은 부분 문자열을 만드는 여러 방법이 있다고 해도, 이는 1개로 세어짐에 유의하라. 펠린드롬은 앞으로, 뒤로 읽어도 같은 문자열을 의미한다.부분 문자열은 원본 문자열에서 일부 문자(안 쓸 수도 있다)를, 남은 문자들의 상대적인 순서를 바꾸지 않고 제거함으로써 얻어지는 새로운 문자열이다. 풀이 해시를 사용하자. (거듭 말하지만, 파이썬에서 해시 - set, ..
2025.01.04 -
Problem : https://leetcode.com/problems/maximum-score-after-splitting-a-stringDifficulty : EasyStatus : SolvedTime : 00:04:33문제 설명 더보기0, 1로 구성된 문자열 s가 주어졌을 때, 이 문자열을 비어있지 않은 부분 문자열 둘로 나눴을 때 최대 스코어를 반환하라.문자열을 나눈 후의 스코어는 왼쪽 부분문자열의 0의 개수와 오른쪽 부분문자열의 1의 개수의 합이다. 풀이 약간의 창의력 문제.오른쪽의 1의 개수를 먼저 다 세 놓고, 모든 split case를 슬라이딩 윈도우(즉 포인터를 하나씩 옮겨가며) 방식으로 구해볼 수 있다.만약 나누는 부분이 1이면 이면 오른쪽 점수가 1 감소(오른쪽의 1이 하나 왼쪽으로 ..
1422. Maximum Score After Splitting a StringProblem : https://leetcode.com/problems/maximum-score-after-splitting-a-stringDifficulty : EasyStatus : SolvedTime : 00:04:33문제 설명 더보기0, 1로 구성된 문자열 s가 주어졌을 때, 이 문자열을 비어있지 않은 부분 문자열 둘로 나눴을 때 최대 스코어를 반환하라.문자열을 나눈 후의 스코어는 왼쪽 부분문자열의 0의 개수와 오른쪽 부분문자열의 1의 개수의 합이다. 풀이 약간의 창의력 문제.오른쪽의 1의 개수를 먼저 다 세 놓고, 모든 split case를 슬라이딩 윈도우(즉 포인터를 하나씩 옮겨가며) 방식으로 구해볼 수 있다.만약 나누는 부분이 1이면 이면 오른쪽 점수가 1 감소(오른쪽의 1이 하나 왼쪽으로 ..
2025.01.01 -
Problem : https://leetcode.com/problems/minimum-cost-for-tickets Difficulty : Medium Status : Solved Time : 00:17:48 문제 설명 더보기당신은 미리 일 년치 기차 여행을 계획하고 있습니다. 당신이 일 년간 기차를 탈 일자들이 정수 배열 'days'로 주어집니다. 각각의 day는 1 ~ 365사이의 정수입니다.기차표는 세 가지 다른 방법으로 판매됩니다. costs[0] 달러에 파는 1일 이용권costs[1] 달러에 파는 7일 이용권costs[2] 달러에 파는 30일 이용권 이 이용권들은 연속되는 수 일간의 여행동안 허용됩니다. 예를 들어, 우리가 2일차에 7일 이용권을 샀다면, 우리는 2, 3, 4, 5, 6, 7..
983. Minimum Cost For TicketsProblem : https://leetcode.com/problems/minimum-cost-for-tickets Difficulty : Medium Status : Solved Time : 00:17:48 문제 설명 더보기당신은 미리 일 년치 기차 여행을 계획하고 있습니다. 당신이 일 년간 기차를 탈 일자들이 정수 배열 'days'로 주어집니다. 각각의 day는 1 ~ 365사이의 정수입니다.기차표는 세 가지 다른 방법으로 판매됩니다. costs[0] 달러에 파는 1일 이용권costs[1] 달러에 파는 7일 이용권costs[2] 달러에 파는 30일 이용권 이 이용권들은 연속되는 수 일간의 여행동안 허용됩니다. 예를 들어, 우리가 2일차에 7일 이용권을 샀다면, 우리는 2, 3, 4, 5, 6, 7..
2024.12.31