본문 바로가기

*Algorithm/Programmers_Level212

[programmers] 프로그래머스 Level2 행렬의 곱셈(파이썬 Python) [programmers] 프로그래머스 Level2 행렬의 곱셈 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 행렬의 곱셈 코딩테스트 연습 - 행렬의 곱셈 [[2, 3, 2], [4, 2, 4], [3, 1, 4]] [[5, 4, 3], [2, 4, 1], [3, 1, 1]] [[22, 22, 11], [36, 28, 18], [29, 20, 14]] programmers.co.kr 2) 풀이 과정 X > X 3) 코드 (1) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def solution(arr1, arr2): answer = [] for i in range(len(arr1)): answer.app.. 2020. 11. 19.
[programmers] 프로그래머스 Level2 다음 큰 숫자(파이썬 Python) [programmers] 프로그래머스 Level2 다음 큰 숫자 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 다음 큰 숫자 코딩테스트 연습 - 다음 큰 숫자 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니 programmers.co.kr 2) 풀이 과정 1. 입력된 숫자 n을 +1씩 증가 2. 이진수로 변환 3. 1의 개수가 동일 한지. 4. 1~3의 경우를 만족하면 가장 작은 수. > X 3) 코드 크게 2가지로 나누었다. 2개 모두 구현 해보는걸 추천한다.. 2020. 11. 18.
[programmers] 프로그래머스 Level2 피보나치 수(파이썬 Python) [programmers] 프로그래머스 Level2 피보나치 수 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 피보나치 수 파이썬 코딩테스트 연습 - 피보나치 수 피보나치 수는 F(0) = 0, F(1) = 1일 때, 1 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 수 입니다. 예를들어 F(2) = F(0) + F(1) = 0 + 1 = 1 F(3) = F(1) + F(2) = 1 + 1 = 2 F(4) = F(2) + F(3) = 1 + 2 = 3 F(5) = F(3) + F(4) = programmers.co.kr 2) 풀이 과정 (1) F(1)과, F(2) 부터 우선 정의 Why? 문제에서 주어진 제한사항 1 .. 2020. 11. 17.
[programmers] 프로그래머스 Level2 올바른 괄호(파이썬 Python) [programmers] 프로그래머스 Level2 올바른 괄호 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 올바른 괄호 코딩테스트 연습 - 올바른 괄호 괄호가 바르게 짝지어졌다는 것은 '(' 문자로 열렸으면 반드시 짝지어서 ')' 문자로 닫혀야 한다는 뜻입니다. 예를 들어 ()() 또는 (())() 는 올바른 괄호입니다. )()( 또는 (()( 는 올바르지 않은 괄호 programmers.co.kr 2) 풀이 과정 1. '('가 들어오면 stack의 개수를 증가 2. 만약 ')'가 있는 상황에서 ㄴ 위에서 저장한 '('를 꺼내면서 개수를 빼준다. ㄴ 문자 ')'가 '('보다 많게 된다면, 이것 역시 false 3. 1,2를 모두 순회하고 나.. 2020. 11. 16.
[programmers] 프로그래머스 Level2 124 나라의 숫자(파이썬 Python) [programmers] 프로그래머스 Level2 124 나라의 숫자 (파이썬 Python) * 문제출처 : 프로그래머스 코딩 테스트 연습, 알고리즘 문제 1) 문제 프로그래머스 124 나라의 숫자 코딩테스트 연습 - 124 나라의 숫자 programmers.co.kr 2) 풀이 과정 1. 각 수를 3으로 나눠 본다. Why? 규칙 게임에서는 곱하기보다 나눠야 경우의 수가 적어지니 대부분 몫과 나머지로 이용한 연산을 많이 사용 2. 3이상의 수부터 각 각의 수가 왜 그렇게 입력되는지 확인(규칙 게임이라는 걸 인지) 각 패턴 속 확인 가능한 정보 체크 3->4 4->11 5->12 6->14 7->21 8->22 9->24 10->41( 일의 자리에 4 추가, 몫 -1 - > 십의 자리에 추가(십진법 기준.. 2020. 11. 12.