-
1. 진법 변환법
num, base = map(int, input().strip().split(' ')) answer = int(str(num), base) print(answer)
2. 문자열 정렬
s, n = input().strip().split(' ') n = int(n) print("%s\n%s\n%s\n" % (s.ljust(n),s.center(n),s.rjust(n)))
3. 문자열 라이브러리
import string num = int(input().strip()) print_dic = {0:string.ascii_lowercase, 1:string.ascii_uppercase} print(print_dic[num])
4. Trans 배열
나는 numpy를 썼는데..
import numpy as np def solution(mylist): return np.transpose(np.array(mylist)).tolist()
아래처럼 map을 사용하면 더 쉽게 뒤집을 수 있었다..
new_list = list(map(list, zip(*mylist)))
>>> mylist = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] >>> zip(mylist) [([1, 2, 3],), ([4, 5, 6],), ([7, 8, 9],)] >>> zip(*mylist) [(1, 4, 7), (2, 5, 8), (3, 6, 9)] >>> map(list,zip(*mylist)) [[1, 4, 7], [2, 5, 8], [3, 6, 9]] >>> list(map(list,zip(*mylist))) [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
5. 리스트 원소간 차이 구하기
이번에도 zip을 이용하는 것이였다. 나는 인덱스로 접근을 했는데...
def solution(mylist): return [abs(mylist[i]-mylist[i+1]) for i in range(len(mylist)-1)]
아래처럼 zip을 이용해 더 쉽게 가능했다.
def solution(mylist): return [abs(num_1-num_2) for num_1, num_2 in zip(mylist, mylist[1:])]
6. 2차원 배열을 1차원으로 줄이기
def solution(mylist): return sum(mylist,[])
7. 순열과 조합
순열은 permutations(순서 고려), 조합은 combinations(순서 고려 X) : 고려한다-> AB와 BA를 다르게 인식한다.
from itertools import permutations def solution(mylist): return sorted(list(permutations(mylist,len(mylist))))
8.for-else
난생 첨본다.. 난 지금껏 flag 성애자였는데
처음엔 아래와같이 풀었는데
import math mul = 1 flag = False for _ in range(5): mul *= int(input()) if math.sqrt(mul) == int(math.sqrt(mul)): print("found") flag = True break if not flag: print("not found")
세-상에...
import math mul = 1 for _ in range(5): mul *= int(input()) if math.sqrt(mul) == int(math.sqrt(mul)): print("found") break else: print("not found")
9. bisect 모듈
from bisect import bisect mylist = [1, 2, 3, 7, 9, 11, 33] bisect(mylist, 2)
10. 가장 큰 수와 작은 수
max_value = float('-inf') min_value = float('inf')
'2021년 > 알고리즘' 카테고리의 다른 글
[파이썬 알고리즘 인터뷰] 페어의 노드 스왑 (0) 2021.03.23 [파이썬 알고리즘 인터뷰] 역순 연결 리스트 (0) 2021.03.22 [파이썬 알고리즘 인터뷰] 두 정렬 리스트의 병합 (0) 2021.03.22 [파이썬 알고리즘 인터뷰] 두 수의 덧셈 (0) 2021.03.22 [파이썬 인터뷰 알고리즘] 주식을 살고팔기 가장 좋은 시점 (0) 2021.03.18