자바스크립트17 [BAEKJOON]25206 너의 평점은 문제 요약알고리즘 분류: 구현, 수학난이도: Silver5문제내용:전공평점은 (학점 × 과목평점)의 합을 학점의 총합으로 나눈 값P/F 과목 중 등급이 'P'인 과목은 계산에서 제외해야 함20줄에 걸쳐 과목명, 학점, 등급이 주어짐사이트: https://www.acmicpc.net/problem/25206문제풀이 이번 문제는 단순하게 구현과 소수 계산을 요구 하는 문제이다. 등급에 따른 과목평점을 정의 한 다음 과목평점이 P를 제외한 총학점과 총 과목 평점을 계산한 뒤 총 과목 평점 / 총 학점계산만 하면 끝이다. 자세한것은 아래 코드보면 된다.CodePython# 등급에 따른 과목평점 정의grades = { "A+" : 4.5, "A0": 4.0, "B+": 3.5, "B0": 3.. 2025. 4. 17. [Leetcode]984. String Without AAA or BBB 문제 요약알고리즘 분류: 그리디, 정렬난이도: Medium문제내용:.두 정수 a와 b가 주어질 때, 다음 조건을 만족하는 문자열 s를 반환하세요:s의 길이는 a + b이고, 정확히 a개의 'a' 문자와 정확히 b개의 'b' 문자를 포함합니다.부분 문자열 'aaa'는 s에 나타나지 않습니다.부분 문자열 'bbb'는 s에 나타나지 않습니다.사이트 주소:https://leetcode.com/problems/string-without-aaa-or-bbb/description/문제풀이 이번문제는 완전탐색아닌 그리디로 최적의 해로 시간복잡도가 최소화를 할 후 있다.그리디 관련 내용은 아래글로 참고 하면된다.https://jih3508.tistory.com/70 [알고리즘 이론] 그리디(Greedy)이론 그리디 알.. 2025. 4. 14. [Leetcode]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. 이전 1 2 3 다음