본문 바로가기

LeetCode52

[Leetcode]1442. Count Triplets That Can Form Two Arrays of Equal XOR 문제 요약알고리즘 분류:  구간합, 누적합, 수학난이도: Medium문제내용:정수 배열 arr에서 세 개의 인덱스 (i, j, k)를 선택해야 합니다.인덱스 조건: 0 ≤ i XOR 조건: arr[i]^arr[i+1]^...^arr[j−1]=arr[j]^arr[j+1]^...^arr[k]이때, 아래 조건을 만족해야 합니다.이러한 (i, j, k) 조합의 개수를 구하세요.사이트 주소: https://leetcode.com/problems/count-triplets-that-can-form-two-arrays-of-equal-xor/description/문제풀이이번 문제는 완전탐색으로 풀면 O(N^4)나오지만 그러면 시간 초과가 나서 O(N^3)으로 풀어야 되는 문제이다. 그래서 이번에는 누적합과 구간합을 .. 2025. 3. 8.
[Leetcode]670. Maximum Swaps 문제 요약알고리즘 분류:  구현, 브루드 포스, 그리디난이도: Medium문제내용:숫자 num이 주어지고 두개 숫자 변경 해서 최대 값을 구하여라사이트 주소: https://leetcode.com/problems/maximum-swap/문제풀이이번 문제는 숫자 2개만 바꿔서 그 중 최대 값만 반환 하기 때문에 어렵지 않다고 생각하낟. 그래서 아래 처럼 구현만 된다.숫자를 배열 또는 리스트로 만든다. 그리고 num값을 최대값으로 지정 한다.이중 for문 돌려서 i는 0 ~ 배열 크기 -1, j는 i + 1 ~ 배열 크기 만큼 돌린다.i, j 바꾸고난뒤 숫자로 변환 한뒤 이전 최대 값과 비교하여 그중 큰 값으로 저장 한다. 위 처럼 구현하면 시간 복잡도는 num의 자리수를 N이라고 볼면 O(N^2)만큼 나온.. 2025. 3. 1.
[Leetcode]1781. Sum of Beauty of All Substrings 문제 요약알고리즘 분류:  구현, 문자열, 해쉬난이도: Medium문제내용:문자열의 "아름다움(beauty)"은 가장 많이 나타나는 문자와 가장 적게 나타나는 문자의 빈도 차이로 정의됩니다.예를 들어, 문자열 "abaacc"의 아름다움은 3−1=23 - 1 = 23−1=2입니다.문자열 sss가 주어졌을 때, sss의 모든 부분 문자열(substring)의 아름다움의 합을 반환하세요사이트 주소:https://leetcode.com/problems/sum-of-beauty-of-all-substrings/description/ 문제풀이이번 문제는 주어진 문자열에서 모든 부분 문자열을 추출하여 각 부분 문자열의 "아름다움"을 계산하고 이를 합산하는 문제입니다. 문제를 해결하기 위한 과정은 다음과 같습니다. 문.. 2025. 1. 13.
[Leetcode]2120. Execution of All Suffix Instructions Staying in a Grid 문제 요약알고리즘 분류:  이진법, 베열 난이도: Medium문제내용:n × n 크기의 격자가 주어집니다.로봇초기 위치 startPos에서 시작.문자열 s로 주어진 방향 이동 명령 ('L', 'R', 'U', 'D').로봇은 문자열 s의 어떤 i번째 명령부터 실행을 시작할 수 있고, 로봇의 명령을 순차적으로 실행 한다.(단 격자 범위 밖으로 이동시 멈춘다.)정상적으로 실행 가능한 명령의 개수를 반환 하여라사이트 주소: https://leetcode.com/problems/maximum-possible-number-by-binary-concatenation/description/문제풀이이 문제는 간단한 시뮬레이션 구현 문제이다. 문자열  s에서 각 명령을 시작점으로 설정하여 끝까지 실행하며, 실행 가능한 .. 2025. 1. 12.
[Leetcode]3309. Maximum Possible Number by Binary Concatenation 문제 요약알고리즘 분류:  이진법, 베열 난이도: Medium문제내용:주어진 크기가 3인 정수 배열의 요소들을 이진수로 변환하고, 이들을 다양한 순서로 이어 붙여 만들 수 있는 숫자 중 가장 큰 값을 찾아 반환하여라사이트 주소: https://leetcode.com/problems/maximum-possible-number-by-binary-concatenation/description/문제풀이이번 문제는 3개수를 각 이진법으로 변환하여  여러가지 순서로 이어붙인 다음  10진수로 변환 한것중 가장 큰것을 구하면 된다. 그럼 크게 2가지만 구현 하면된다.3개 숫자 2진수 변환후 이어 붙이 다음 10진수로 변환3개 숫자 순열구현1.  3개 숫자 2진수 변환후 이어 붙이 다음 10진수로 변환 직업 진법을 변.. 2025. 1. 11.
[Leetcode]2391. Minimum Amount of Time to Collect Garbage 문제 요약알고리즘 분류: 누적합, 문자열난이도: Medium문제내용:garbage 배열: 각 집의 쓰레기 종류 ('M', 'P', 'G')를 나타냄.travel 배열: 집 간 이동 시간 제공.각 트럭은 특정 쓰레기  ('M', 'P', 'G') 유형만 수거함.트럭은 집 0번에서 시작하며 필요한 집만 방문 가능.모든 쓰레기를 수거하는 데 필요한 최소 시간을 계산하여사이트 주소: https://leetcode.com/problems/minimum-amount-of-time-to-collect-garbage/description/ 문제풀이 이번 문제는 O(N)만큼 요구하는 문제이다. 그래서 누적합으로 풀어야한다. 누접합 관련 내용은 아래글에서 확인 해보면 된다.https://jih3508.tistory.com.. 2025. 1. 10.