본문 바로가기

파이썬69

1863. Sum of All Subset XOR Totals 문제 요약알고리즘 분류:  백트레킹, 수학, 배열난이도: Medium문제내용:수 배열 nums가 주어진다.XOR 총합(XOR total)은 배열의 모든 요소를 비트 단위 XOR 연산한 값이며, 배열이 비어 있는 경우에는 0으로 정의한다.[2, 5, 6]의 XOR 총합은 2 XOR 5 XOR 6 = 1 이다.정수 배열 nums가 주어질 때, nums의 모든 부분집합에 대한 XOR 총합의 합을 구하여 반환하여라사이트 주소: https://leetcode.com/problems/sum-of-all-subset-xor-totals/description/문제풀이 이번 문제는 백트레킹 문제이다. 백트레킹 관련 자세한 내용은 아래의 사이트에 참조하면된다.https://jih3508.tistory.com/84 [알고리.. 2025. 4. 9.
[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.
[BAEKJOON]2748 피보나치 수 2 문제 요약알고리즘 분류: dp난이도:  Bronze1문제내용:피보나치 수는 0과 1로 시작한다. 피보나치 식은 아래와 같다.Fn = Fn-1 + Fn-2 N이 주어 졌을때 피보나치 Fn을 구하여라 (N 사이트: https://www.acmicpc.net/problem/2748문제풀이이번 문제는 재귀 호출로 풀기에는 숫자가 커질수록 계산량이 급격히 증가하기 때문에, 동적 계획법(Dynamic Programming, DP*을 사용해야 효율적으로 해결할 수 있다. 동적 계획법에 대해 잘 모르신다면, 아래 링크를 통해 자세한 설명을 확인 해보면 된다.https://jih3508.tistory.com/89 [알고리즘 이론] 동적계획법(Dynamic Programming, DP)이론 이번에 볼 알고리즘은 동적계획법.. 2025. 1. 14.
[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.