본문 바로가기

전체 글

(117)
프로그래머스 / 코딩 테스트 / 내적 문제 설명 문제 해결 두 리스트의 원소들을 내적한 결과를 반환하는 함수를 구현하면 되는 문제이다. zip 내장 함수를 이용하면 좀 더 코드를 깔끔하게 구현할 수 있다. 위키독스 온라인 책을 제작 공유하는 플랫폼 서비스 wikidocs.net def solve(a,b): res = 0 for i, j in zip(a,b): res += i * j return res def solution(a, b): answer = solve(a,b) return answer 다른 사람의 문제 해결 Comprehension 기법을 사용하여 두 리스트의 원소들을 곱한 리스트를 새로 생성했다. 파이썬의 Comprehension 소개 Comprehension이란 iterable한 오브젝트를 생성하기 위한 방법중 하나로 파이썬에..
프로그래머스 / 코딩 테스트 / 시저 암호 문제 설명 문제 해결 시저 암호를 구현하면 되는 문제이다. 대문자, 소문자, 공백이 문자열에 섞일 수 있다는 것을 생각하고 코딩하면 어렵지 않다. string 라이브러리에서 ascii_lowercase, ascii_uppercase 상수를 이용한다. string — 일반적인 문자열 연산 — Python 3.9.1 문서 string — 일반적인 문자열 연산 소스 코드: Lib/string.py 문자열 상수 이 모듈에 정의된 상수는 다음과 같습니다: string.ascii_letters 아래에 나오는 ascii_lowercase와 ascii_uppercase 상수를 이어붙인 것입니다 docs.python.org 상수들을 tuple 형태의 데이터로 저장한 후, 각 문자에 해당하는 tuple의 index를 찾고..
프로그래머스 / 코딩 테스트 / 문자열을 정수로 바꾸기 문제 설명 문제 해결 이미 파이썬에는 문자열을 정수로 바꾸는 함수가 존재한다. def solve(s): return int(s) def solution(s): answer = solve(s) return answer 물론 직접 구현하는 방법도 존재한다. 맨앞에 부호가 존재할 수도 안 존재할 수도 있다. (1234, -1234, +1234) 해당 사항만 유의하고 문제를 풀면 쉽게 풀 수 있다. def solve(s): res = 0 sign = 1 start = 0 if s[0] == '+' or s[0] == '-': sign = -1 if s[0] == '-' else 1 start = 1 for i in range(start, len(s)): res += (ord(s[i]) - 48) * (10**(..