문제는 다음과 같다. 여러 줄에 걸쳐 서로 연결된 노드의 관계들을 입력받는다고 하자. # 입력 5 # 서로 연결된 관계의 수 1 2 2 5 5 1 3 4 4 6 다음과 같이 입력받았을 때, 파이썬의 딕셔너리와 리스트를 이용해 그래프를 표현할 것이다. n = int(input()) dic = {} for i in range(n): a, b = map(int, input().split()) dic[a] = dic.get(a, []) + [b] dic[b] = dic.get(b, []) + [a] print(dic) 여기서 딕셔너리의 get함수를 모른다면 여기를 참고하자😉 암튼, 저렇게 딕셔너리를 채우고 출력해보면 {1: [2, 5], 2: [1, 5], 5: [2, 1], 3: [4], 4: [3, 6], ..
GET 함수 딕셔너리의 get(x) 함수는 x라는 key에 대응되는 value값을 돌려준다. 만약 get(x, 'Baaaaaaam') 함수에 두번째 인자를 넣어주면 x라는 key가 딕셔너리에 없는 경우, 'Baaaaaaam'을 디폴트 값을 돌려준다. 'Baaaaaaam'이라는 key값이 딕셔너리에 없는데 dic['Baaaaaaam']을 사용하면 key 오류를 발생시키는데 get함수를 사용하면 key값이 없어도 오류를 발생시키지 않고 None을 반환해준다. 즉, 딕셔너리 안에 찾으려는 Key 값이 없을 경우 미리 정해 둔 디폴트 값을 대신 가져오게 하고 싶을 때에는 get(x, '디폴트 값')을 사용하면 된다!! Example genres = ["classic", "pop", "classic", "clas..
순열(Permutation) 순열은 n개의 원소를 사용해 순서를 정해 r개의 배열로 나타내는 것이다! 순열은 순서가 있기 때문에 원소의 종류가 같아도 순서가 다르면 다른 배열이 된다. Python Permutations Python의 라이브러리를 활용해 순열을 구하는 방법이다. from itertools import permutations a = [1,2,3] permute = permutations(a,2) print(list(permute)) >> 결과 [(1,2),(1,3),(2,1),(2,3),(3,1),(3,2)] 조합(Combination) 조합은 n개의 원소를 사용해 순서의 관계없이 r개의 배열로 나타내는 것이다. 조합은 순서가 없기 때문에 원소의 종류가 같으면 같은 배열이 된다! Pytho..
우선순위큐(PriorityQueue) | 데이터를 추가하는 것은 어떤 순서로 해도 노상관 | 제거될 때는 가장 작은 값을 제거 Class Import from queue import PriorityQueue 우선순위큐 생성 qre = PriorityQueue() qre = PriorityQueue(maxsize = 8) # 최대 크기를 8로 잡음 우선순위큐에 원소 추가/삭제 # 추가 que.put(2) que.put((2, "apple")) # 삭제 que.get() 우선순위큐 원소들 출력 # 그냥 프린트하면 >>> print(que) # 결과가 이렇게 나옴 >>> print(que.get()) (2, 'apple') 우선순위큐는 인덱스로 접근도 불가능하고 iterable하지 않기 때문에 for문에서 i..
1차원 배열 입력받기 map함수를 이용하면 for문을 쓰지 않고 한줄에 여러개의 정수를 입력받을 수 있다. 입력값을 공백을 기준으로 나눈다. num_list = list(map(int, input().split())) >> 결과 >> 입력 1 2 3 4 5 >> 출력 [1, 2, 3, 4, 5] 한줄에 정수형 변수 여러개 입력받기 이 경우에는 받을 변수의 개수를 지정할 수 있다. 만약 입력받은 개수가 변수 개수와 다르면 에러 발생-- a, b, c, d = map(int, input().split()) >> 결과 # 입력 1, 2, 3, 4 # 출력 >> print(a) 1 >> print(b) 2 한줄에 문자열 변수 여러개 입력받기 a, b = input().split() >> 결과 # 입력 123 3..
- Total
- Today
- Yesterday
- SWExpert
- 괄호
- 완전탐색
- hash
- Python
- BOJ
- 코딩테스트
- 우선순위큐
- 2020 KAKAO BLIND RECRUITMENT
- 2019 Kakao Blind Recruitment
- programmers
- 순열
- 프로그래머스
- SW Expert
- 백준
- Permutation
- 딕셔너리
- 문자열
- 힙
- 파이썬
- C++
- 문자열처리
- 정렬
- combination
- 재귀
- left join
- 해시
- 구현
- 스택
- dictionary
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |