본문 바로가기

Algorithm/Brute Force

(142)
(Python3) - 프로그래머스(코딩테스트 입문) : 짝수의 합 https://school.programmers.co.kr/learn/courses/30/lessons/120831 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.krlist comprehension을 사용해본 문제였습니다.📕 풀이방법📔 정답 출력 | 반환2 에서 n까지 for loop를 수행하며 짝수들을 저장한 배열의 sum을 반환합니다.📕 Code📔 Python3def solution(n): return sum([even for even in range(2, n+1, 2)])*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.
(Python3) - 프로그래머스(코딩테스트 입문) : 순서쌍의 개수 https://school.programmers.co.kr/learn/courses/30/lessons/120836 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr간단 전수조사 문제였습니다.📕 풀이방법📔 입력 및 초기화정답 변수 answer 선언 후 0으로 초기화합니다.📔 풀이과정순서쌍이 순서가 상관이 없으므로 나누어 떨어지는 값을 모두 세서 answer에 더해줍니다.📔 정답 출력 | 반환answer를 반환합니다.📕 Code📔 Python3def solution(n): answer = 0 for i in range(1, n+1): if n % i == 0: ..
(Python3) - 프로그래머스(코딩 기초 트레이닝) : 조건에 맞게 수열 변환하기 2 https://school.programmers.co.kr/learn/courses/30/lessons/181881 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr전수조사로 해결한 문제였습니다.📕 풀이방법📔 입력 및 초기화현재 array cur_arr과 반복 횟수 x를 선언 후 적절히 초기화합니다.📔 풀이과정while loop를 수행하며 다음을 진행합니다.1. prev_arr를 선언해 현재 cur_arr값을 deep copy해줍니다.2. calculate_arr사용해서 홀수, 짝수에 대한 조건에 따라 cur_arr값을 갱신해줍니다.3. 만약 prev_ar..
(Python) - LeetCode (easy) 1925. Count Square Sum Triples https://leetcode.com/problems/count-square-sum-triples/description/전수조사 문제였습니다.📕 풀이방법📔 입력 및 초기화정답 변수 ans선언 후 0으로 초기화합니다.📔 풀이과정$ a^2 + b^2 = c^2 $에서 c = $\sqrt{a^2 + b^2}$ 가 됩니다.1부터 n까지 이중 for loop를 수행하며 다음을 수행합니다.를 수행했을 때 c값이 정수면서 n이하라면 ans를 1씩 추가합니다.📔 정답 출력 | 반환ans를 반환합니다.📕 Code📔 pythonclass Solution(object): def countTriples(self, n): ans = 0 for a in range(1, n+1): ..
(C++) - LeetCode (easy) 1893. Check if All the Integers in a Range Are Covered https://leetcode.com/problems/check-if-all-the-integers-in-a-range-are-covered/description/전수조사 문제였습니다.📕 풀이방법📔 풀이과정left부터 right까지 for loop를 수행하며 다음을 진행합니다.1. ranges에 left부터 right까지의 수가 존재하지 않는 경우 포함되지 않았으므로 false를 반환합니다.2. 아닌 경우 넘어갑니다.📔 정답 출력 | 반환for loop탈출 후 모든 범위를 cover했으므로 true를 반환합니다.📕 Code📔 C++class Solution {public: bool isCovered(vector>& ranges, int left, int right) { for ..
(C++) - LeetCode (easy) 1876. Substrings of Size Three with Distinct Characters https://leetcode.com/problems/substrings-of-size-three-with-distinct-characters/description/부분 문자열로 전수 조사하는 문제였습니다.📕 풀이방법📔 입력 및 초기화정답 변수 ans를 선언해줍니다.📔 풀이과정1. s에 대해 원소를 순회하며 시작점 i 기준으로 길이 3의 부분 문자열을 변수 sub에 저장합니다.2. sub문자열이 반복되는지 isWordRepeated함수를 수행해 반복되지 않았다면 ans를 1씩 더해줍니다.   2-1. isWordRepeated함수는 내부에 key alphabat, value 빈도수를 가지는 alphaMap을 선언해 이미 존재하는 alphabat이 있다면 value가 양수이므로 true를 for문 모..
(C++) - LeetCode (easy) 1863. Sum of All Subset XOR Totals https://leetcode.com/problems/sum-of-all-subset-xor-totals/description/전수조사로 해결한 문제였습니다.📕 풀이방법📔 풀이과정dfs를 수행하며 현재 원소를 선택한 경우, 선택하지 않은 경우를 나눠 재귀함수를 수행해줍니다.1. 종료조건은 현재 index가 nums.size()인 경우이며 이 경우에 인자인 currentXOR의 최종 값을 반환해줍니다.2. 현재 index로 xor 연산을 한 값을 include로, 하지 않은 값은 exclude로 재귀함수를 호출한 결과를 저장하고 해당 함수의 끝에 include + exclude 값을 반환함으로써 중간 값을 얻을 수 있습니다.📔 정답 출력 | 반환dfs함수의 결과를 반환합니다.📕 Code📔 C++c..
(C++) - LeetCode (easy) 1854. Maximum Population Year https://leetcode.com/problems/maximum-population-year/description/전수조사 문제였습니다.📕 풀이방법📔 입력 및 초기화최대 인구 maxPopulation, 정답 연도 ans, 1950 ~ 2050까지의 전 해 인구대비 변화 populationChanges를 선언 후 적절히 초기화합니다. 📔 풀이과정1. logs의 원소를 순회하며 populationChanges에 출생과 사망을 기록해줍니다. 1950년부터이므로 해당값만큼 빼 index를 조정한 후  populationChanges에 저장합니다.2. 1950년 부터 현재 인구를 추적할 currentPopulation을 선언 후 0으로 초기화합니다.3. 1950년부터 2050년까지의 연도를 확인하면서 다..