알고리즘 풀이79 [알고리즘] 프로그래머스 | 행렬의 곱셈 행렬의 곱셈 답: 더보기 def solution(arr1, arr2): answer = [] n1 = len(arr1) n2 = len(arr2[0]) for i in range(n1): num_list = [] for k in range(n2): number = 0 for j in range(len(arr1[0])): number += arr1[i][j] * arr2[j][k] num_list.append(number) answer.append(num_list) return answer 문제 분석 및 해석 이차원배열 arr1, arr2 arr1에 arr2를 곱한 결과를 반환하는 함수, solution 반환 >> 풀이생각 for문을 여러번 사용하여 arr1의 행과 arr2의 열을 곱하고 더하는 식을 만든.. 2023. 8. 16. [알고리즘] 프로그래머스 | 소수 만들기 소수만들기 답: 더보기 식 하나로 만들기 from itertools import combinations def solution(nums): result = 0 n_list = list((combinations(nums, 3))) for number in n_list: num = sum(number) new_num = int(num ** 0.5) + 1 for i in range(2, new_num): if num % i == 0: break else: result += 1 return result 함수로 나누기 from itertools import combinations def is_prime(n): new_num = int(n**0.5+1) for i in range(2, new_num): if n .. 2023. 8. 15. [알고리즘] 프로그래머스 | 소수 찾기 Lv.1 소수 찾기 #수학 #에라토스테네스의 체 답: 더보기 이중 for 문을 피하기 위해 검증함수를 따로 빼내었다. def is_prime(n): new_n = int(n**0.5) + 1 for i in range(2, new_n): if n % i == 0: return False return True def solution(n): answer = 0 for i in range(2, n + 1): if is_prime(i) == True: answer += 1 return answer 다른 사람의 풀이 1) def solution(n): answer = 0 for i in range(2, n+1): if i == 2: answer += 1 continue for j in range(2, int(i ** (1.. 2023. 8. 12. [알고리즘] 프로그래머스 | 삼총사, 키패드 누르기 삼총사 답: 더보기 from itertools import combinations def solution(number): answer = 0 combi = list(combinations(number, 3)) for i in combi: if sum(i) == 0: answer +=1 return answer 문제 분석 및 해석 요소별로 중복이 없는 조합을 구하고 ** 서로 다른 학생의 정수 번호가 같을 수 있습니다. 주의!! 학생 3명의 정수 번호를 더했을 때 0 더해서 0이되는지 확인 >>풀이생각 조합이구나! combinations써야지! 리뷰. 모듈 활용이외의 풀이도 도전해봐야겠다 counter 끼리 계산이 되는 것도 새로웠다 키패드 누르기 답: 더보기 1) 좌표를 지정해서 풀이 key = {1:(.. 2023. 8. 11. 이전 1 ··· 6 7 8 9 10 11 12 ··· 20 다음