[알고리즘 스터디] 파이썬 사용 팁1

Ko Seoyoung·2021년 1월 10일
0

알고리즘 스터디 1주차

1) 파이썬에서 한글 주석 사용하기

# -*- coding: utf-8 -*-
파일 최상단부에 위 주석을 써주면 한글 주석을 써도 에러가 안난다.

2) 연산: / 와 //차이

  • 3 / 5 결과: 1.66666
  • 3 // 5 결과: 1

3) 입력받기

  • n, m, k를 공백으로 구분하여 입력받기
    n,m,k = map(int, input().split())
    (이때 input은 string이어야 한다. ex) "5 8 3")

  • n개의 수를 list로 입력받기
    data = list(map(int, input().split()))

4) range 함수

  • range(n) : 0부터 n-1까지의 일련의 수를 크기가 n인 리스트로 반환한다. (range(5): [0,1,2,3,4])
  • range(1, n) : 1 <= x < n 에 해당하는 일련의 수

5) 정렬

  • 사용: 변수.sort()
  • 속성:
    - reverse: True인 경우 내림차순으로 정렬 (list.sort(reverse=True))

6) min(), max()

  • min()
data.sort()
min_value = data[0] # 대신

min_value = min(data) # 로 최소값을 구할 수 있다
  • max()
if min_value > result:
	result = min_value
#대신

result = max(result, min_value) # 로 최대값을 구할 수 있다.

7) 조합 사용

from itertools import combinations # 라이브러리 import
nCm = combinations([리스트], m) # 이런식으로 사용

알고리즘 스터디 2주차

8) ord

  • ord() 함수 : 특정한 한 문자를 아스키 코드 값으로 변환해 주는 함수
  • chr() 함수 : 아스키 코드 값을 문자로 변환해 주는 함수 (10진수, 16진수 사용 가능)
ord('A') # 65
ord('a') # 97

chr(65) # A
chr(97) # a

9) n x m 맵 0으로 초기화

d = [[0] * m for _ in range(n)]
# n: 4, m: 5
# [[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0]]

10) 전역변수

direction = 3
def turn_left():
    global direction # 전역변수 direction에 접근하기 위함
    direction += 1
    if direction == 3:
        direction = 0

#python

profile
Web Frontend Developer 👩🏻‍💻 #React #Nextjs #ApolloClient

0개의 댓글