심화 알고리즘
·
알고리즘과 코딩 테스트/파이썬 문법
1. numpy 없이, 2차원 리스트(행렬) Slicing 하기 2차원 행렬 board에서 M x N 행렬을 빼낸다고 가정하면 m = row 수 n = column 수 i = row 인덱스 j = column 인덱스 m, n = 3, 2 for i in range(len(board) + 1 - m): for j in range(len(board) + 1 - n): [row[j:j+n] for row in board[i:i+m]] 이런식으로 하면 될 것이다! 2. 최대공약수를 유클리드 호제법으로 구하고, 이어서 최소공배수까지 구하기 유클리드 호제법이란 숫자 a, b가 있을 때, [a를 b로 나눈 나머지와 b의 최대공약수] 와 [그냥 a 와 b의 최대공약수]가 같다는 것을 의미한다. 그렇다면, a를 b로 나..
기초
·
알고리즘과 코딩 테스트/파이썬 문법
0. 유용한 파이썬 내장 메서드 1) eval() 수학 수식이 "문자열 포맷"으로 들어오면, 해당 수식을 계산한 결과를 반환한다. result = eval("(3 + 5) * 7") print(result) # 56 2) 딕셔너리.items() 딕셔너리에 있는 키와 값들의 쌍을 얻을 수 있다. car = {"name" : "BMW", "price" : "7000"} car.items() -> [('name', 'BMW'), ('price', '7000')] 3-1) input().split(':') 콜론 ':' 기호를 기준으로 자른다. 3-2) print(?, ?, sep=':') 콜론 ':' 기호를 사이에 두고 값을 출력한다. sep는 분류기호(seperator)를 의미한다. 4) 문자열.isdigit..