본문 바로가기

알고리즘

(87)
데일리 알고리즘 230102 ~ 230106 데일리 알고리즘 230102 ~ 230106 230102 프로그래머스, 하샤드 수 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 def solution(x): answer = False s = 0 for c in str(x): s += int(c) if x % s == 0: answer = True return answer print( "18 :", solution((18))) //True print( "10 :", solution((10))) //True print( "12 :", solution((12))) //True print( "1..
코딩 테스트 연습 30일 코딩 테스트 연습 30일 프로그래머스, x만큼 간격이 있는 n개의 숫자 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 def solution(x, n): answer = [] for i in range(n): answer.append(x + i * x) return answer 📄 나의 코드 def solution(x, n): return list(range(x,x+x*n,x)) 테스트 케이스 8번에서 오류발생! range 함수의 세번째 parameter에 0이 들어가면 런타임 에러가 발생 ↓ def solution(x, n): if x =..
코딩 테스트 연습 29일 코딩 테스트 연습 29일 프로그래머스, 없는 숫자 더하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 numbers = [5,8,4,0,6,7,9] def solution(numbers): answer = sum(range(0,10)) for num in numbers: answer -= num return answer print(solution(numbers)) 📄 공부할 만한 코드 def solution(numbers): return sum(range(10)) - sum(numbers) 배열 요소의 합 또한 sum을 쓸 수 있다! 나의..
자료구조 3주차 숙제_2 자료구조 3주차 숙제_2 멜론 베스트 앨범 뽑기 📄 나의 코드 class PlaysIndex: def __init__(self, index, play): self.index = index self.play = play def get_melon_best_album(genre_array, play_array): dict_sum = {} for i in range(len(genre_array)): if genre_array[i] in dict_sum.keys(): dict_sum[genre_array[i]] += play_array[i] else: dict_sum[genre_array[i]] = play_array[i] dict_sum_sort = sorted(dict_sum.items(), key=lambd..
코딩 테스트 연습 28일 코딩 테스트 연습 28일 프로그래머스, 문자열 다루기 기본 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 s = "123523²" def solution(s): answer = False if (len(s) == 4 or len(s) == 6) and s.isdecimal(): answer = True return answer print(solution(s) 정규식으로 풀려다가 도저히 안풀려서 질의응답보고 힌트 받아 풀었다. 📄 공부할 만한 코드1 a = '3²' print(a.isdigit()) # True print(a.isdecimal..
자료구조 3주차 숙제 자료구조 3주차 숙제 쓱 최대로 할인 적용하기 📄 나의 코드 def get_max_discounted_price(prices, coupons): prices.sort(reverse=-1) coupons.sort(reverse=-1) result = 0 if len(coupons) = len(prices): for i in range(min(len(coupons), l..
코딩 테스트 연습 27일 코딩 테스트 연습 27일 프로그래머스, 두 정수 사이의 합 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 a = 5 b = 3 def solution(a, b): start = min(a, b) end = max(a, b) + 1 answer = 0 for i in range(start, end): answer += i return answer print(solution(a, b)) 📄 공부할 만한 코드 def adder(a, b): # 함수를 완성하세요 if a > b: a, b = b, a return sum(range(a,b+1)) #..
코딩 테스트 연습 22일,23일,26일 코딩 테스트 연습 22일,23일,26일 프로그래머스, 문자열 내 마음대로 정렬하기 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📄 나의 코드 def solution(strings, n): strings.sort() answer = sorted(strings, key=lambda x:x[n]) return answer n번째 인덱스로 정렬하기. 검색을 통해 정렬 기준 정하는 방법을 찾아봤다. 문제 요구사항 중, 정렬 기준이 같을 경우, 사전순으로 정렬해야 한다고해서. 먼저 사전순으로 정렬후, 인덱스 기준으로 정렬하는 걸 해줬다! 프로그래머스, [1차] 비..
코딩 테스트 연습 21일 코딩 테스트 연습 21일 프로그래머스, 평행 📄 나의 코드 dots = [[1, 4], [9, 2], [3, 8], [11, 6]] def solution(dots): answer = 0 x1 = dots[0][0] x2 = dots[1][0] x3 = dots[2][0] x4 = dots[3][0] y1 = dots[0][1] y2 = dots[1][1] y3 = dots[2][1] y4 = dots[3][1] if (y1 - y2) / (x1 - x2) == (y3 - y4) / (x3 - x4): answer = 1 if (y1 - y3) / (x1 - x3) == (y2 - y4) / (x2 - x4): answer = 1 if (y1 - y4) / (x1 - x4) == (y2 - y3) / (..
코딩 테스트 연습 20일 코딩 테스트 연습 20일 프로그래머스, 안전지대 📄 나의 코드 board = [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 1, 0, 0], [0, 0, 0, 0, 0]] def solution(board): x = [] y = [] for i in range(len(board)): for j in range(len(board)): if board[i][j] == 1: x.append(i) y.append(j) x_min = x[0]-1 if x[0]-1 >= 0 else 0 x_max = x[-1] + 2 if x[-1] + 2 = 0 else 0..