파이썬 4

[이것이 취업을 위한 코딩테스트다] 구현: 시뮬레이션과 완전 탐색

구현(Implementation) 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정 풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제를 지칭 알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제 실수 연산을 다루고, 특정 소수점 자리까지 출력해야 하는 문제 문자열을 특정한 기준에 따라서 끊어 처리해야 하는 문제 적절한 라이브러리를 찾아서 사용해야 하는 문제 완전탐색 : 모든 경우의 수를 주저 없이 다 계산하는 해결 방법 시뮬레이션 : 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행 일반적으로 알고리즘 문제에서의 2차원 공간은 행렬(Matrix)의 의미로 사용 상하좌우 여행가 A는 N x N 크기의 정사각형 공간에 서 있습니다. 이 공간은 1 x 1 크기의 정사각형으로 나누어져 있습니다. ..

Python/CodingTest 2023.01.16

파이썬 n진수 변환

10진수 n진수 변환 int 함수의 2번째 인자를 활용하여 8, 16, 2진수 문자열을 정수형(int)로 형변환 int(문자열, n) n : 8(8진수), 16(16진수), 2(2진수) oct() 함수 10진수 -> 8진수 문자열 '0o' 가 붙음 hex() 함수 10진수 -> 16진수 문자열 '0x' 가 붙음 bin() 함수 10진수 -> 2진수 '0b'가 붙음 이진수 더하기 이진수를 의미하는 두 개의 문자열 bin1과 bin2가 매개변수로 주어질 때, 두 이진수의 합을 return하도록 solution 함수를 완성해주세요. 제한사항 return 값은 이진수를 의미하는 문자열입니다. 1 ≤ bin1, bin2의 길이 ≤ 10 bin1과 bin2는 0과 1로만 이루어져 있습니다. bin1과 bin2는 "..

Python/공부 2023.01.07

파이썬 최대공약수, 최소공배수 함수 - gcd, lcm

최대공약수 함수 gcd greatest common divisor import math math.gcd(n1, n2, ... ) 인자로 숫자들을 입력 0개부터 n개까지 인자로 들어온 숫자들의 최대공약수(정수)를 반환 인자가 0개인 경우 반환 값은 0. 모든 인자의 값이 0인 경우에도 반환 값은 0 gcd(0, n) = n import math print(math.gcd(3)) # 3출력 print(math.gcd(3, 6)) # 3출력 print(math.gcd(66, 22, 11)) # 11출력 최소공배수 함수 lcm least common multiple import math math.lcm(n1, n2, ... ) 인자로 숫자들을 입력 0개부터 n개까지 인자로 들어온 숫자들의 최소공배수(정수)를 반..

Python/공부 2023.01.05

[이것이 취업을 위한 코딩테스트다] 그리디 알고리즘

그리디 알고리즘(탐욕법) 현재 상황에서 지금 당장 좋은 것만 고르는 방법 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구 정당성 분석이 중요. 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지 검토 일반적인 상황에서 그리디 알고리즘은 최적의 해를 보장할 수 없을 때가 많음 탐욕법으로 얻은 해가 최적의 해가 되는 상황에서, 이를 추론할 수 있어야 풀리도록 출제 거스름돈 당신은 음식점의 계산을 도와주는 점원입니다. 카운터에는 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 무한히 존재한다고 가정합니다. 손님에게 거슬러 주어야 할 돈이 N원일 때 거슬러 주어야 할 동전의 최소 개수를 구하세요. 단, 거슬러 줘야 할 돈 N은 항상 10의 배수입니..

Python/CodingTest 2023.01.02