๊ฐœ๋ฐœ/๐Ÿค– ์•Œ๊ณ ๋ฆฌ์ฆ˜ 43

โšก๏ธ baekjoon. 14501 ํ‡ด์‚ฌ [Silver III][python]

๊ด€๋ จ ํ’€์ด๋ฅผ ๋ดค์„๋•Œ ํƒ์š•๋ฒ•์œผ๋กœ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋‚˜ ํ•˜๋‹ค๊ฐ€, ์ฃผ์–ด์ง„ ์˜ˆ์‹œ ์ผ€์ด์Šค๋กœ ๋„์ €ํžˆ ์ ‘๊ทผํ•  ์ˆ˜๊ฐ€ ์—†์–ด์„œ, dfs๋กœ ์ ‘๊ทผํ•ด์„œ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜์— ๋Œ€ํ•ด ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ฐ€ ์ตœ๋Œ“๊ฐ’์„ ๋ณด์—ฌ์ฃผ๋Š” ์ ‘๊ทผ ๋ฐฉ์‹์„ ํƒํ–ˆ๋‹ค. N = int(input()) results = list() # history ๋ณ€์ˆ˜๋Š” debug ์šฉ๋„ def dfs(start, current, history): if (start >= len(meetingList)): results.append(current) return # ์˜ค๋Š˜ ์žกํ˜€์žˆ๋Š” ๋ฏธํŒ…์„ ์ง„ํ–‰ํ•  ๊ฒฝ์šฐ next = start + meetingList[start][0] if (next

baekjoon. 1071 ์†ŒํŠธ [Platinum V][python]

๋ฌธ์ œ๋งํฌ : https://www.acmicpc.net/problem/1071 1071๋ฒˆ: ์†ŒํŠธ N๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉด, ์ด๊ฒƒ์„ ์—ฐ์†๋œ ๋‘ ์ˆ˜๊ฐ€ ์—ฐ์†๋œ ๊ฐ’์ด ์•„๋‹ˆ๊ฒŒ ์ •๋ ฌ(A[i] + 1 ≠ A[i+1])ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ด ์—ฌ๋Ÿฌ ๊ฐ€์ง€๋ผ๋ฉด ์‚ฌ์ „์ˆœ์œผ๋กœ ๊ฐ€์žฅ ์•ž์„œ๋Š” ๊ฒƒ์„ ์ถœ๋ ฅํ•œ๋‹ค. www.acmicpc.net ์ตœ์ข…์ ์ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ๋Š” ์ด ๋ถ„์˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ–ˆ๋‹ค. https://hoji25.tistory.com/4 [๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜] 1071๋ฒˆ ์†ŒํŠธ c++ a[i]+1 ์ด a[i+1]์ด ์•„๋‹Œ ์ •๋ ฌ ์ค‘ ์‚ฌ์ „ ์ˆœ์ด ๊ฐ€์žฅ ๋น ๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์‚ฌ์ „ ์ˆœ์ด ๊ฐ€์žฅ ๋นจ๋ผ์•ผ ํ•˜๋ฏ€๋กœ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ์„ ์ง„ํ–‰ํ•œ๋‹ค. v[i]+1์ด v[i+1]์ผ ๋•Œ, 2๊ฐ€์ง€์˜ ๊ฒฝ์šฐ๋ฅผ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. 1. v[i+ hoji25..

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฐœ๋…. ์ž๋ฃŒ๊ตฌ์กฐ์—์„œ์˜ ํ‰๊ท  ~ ์ตœ์•… ์‹œ๊ฐ„ ๋ณต์žก๋„

์ ‘๊ทผ ํƒ์ƒ‰ ์‚ฝ์ž… ์‚ญ์ œ ๋ฐฐ์—ด (array) O(1) ~ O(1) O(n) ~ O(n) O(n) ~ O(n) O(n) ~ O(n) ์Šคํƒ (stack) O(n) ~ O(n) O(n) ~ O(n) O(1) ~ O(1) O(1) ~ O(1) ํ (queue) O(n) ~ O(n) O(n) ~ O(n) O(1) ~ O(1) O(1) ~ O(1) ์ด์ค‘ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ (doubly linked list) O(n) ~ O(n) O(n) ~ O(n) O(1) ~ O(1) O(1) ~ O(1) ํ•ด์‹œ ํ…Œ์ด๋ธ” (hash tablee) O(1) ~ O(n) O(1) ~ O(n) O(1) ~ O(n) O(1) ~ O(n) ์ด์ง„ ํƒ์ƒ‰ ํŠธ๋ฆฌ (BST) O(logn) ~ O(n) O(logn) ~ O(n) O(logn) ~ O(n) O(..

baekjoon. ํšŒ์˜์‹ค ๋ฐฐ์ • [Silver I] [python]

๋ฌธ์ œ ๋งํฌ : 1931๋ฒˆ: ํšŒ์˜์‹ค ๋ฐฐ์ • (1,4), (5,7), (8,11), (12,14) ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. www.acmicpc.net N = int(input()) meetings = [] for i in range(N): start, end = map(int, input().split()) meetings.append([start, end]) # print(meetings) meetings.sort(key=lambda x: (x[1], x[0])) # ํšŒ์˜ ๋๋‚˜๋Š” ์‹œ๊ฐ„ ์˜ค๋ฆ„์ฐจ์ˆœ, ๊ฐ™๋‹ค๋ฉด, ํฌ์˜ ์‹œ์ž‘ํ•˜๋Š” ์‹œ๊ฐ„ ์˜ค๋ฆ„์ฐจ์ˆœ # print(meetings) # (ํšŒ์˜ ๋๋‚˜๋Š” ์‹œ๊ฐ„ - ํšŒ์˜ ์‹œ์ž‘๋˜๋Š” ์‹œ๊ฐ„)์ด ์ž‘์€ ๊ฒƒ๋ถ€ํ„ฐ ๊ณ ๋ฅธ๋‹ค. # ํšŒ์˜๊ฐ€ ์‹œ์ž‘๋˜๋Š” ์‹œ๊ฐ„์ด ์ž‘์€ ๊ฐ’๋ถ€ํ„ฐ ๊ณ ๋ฅธ๋‹ค. # ํšŒ์˜๊ฐ€ ๋๋‚˜๋Š” ์‹œ๊ฐ„์ด ์ž‘..

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ฟ€ํŒ. ํŒŒ์ด์ฌ

1. ํŒŒ์ด์ฌ slice 1๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” array ๊ฐ€์ ธ์˜ฌ ๋•Œ : a[1:] ํŒŒ์ด์ฌ ์ฝ”๋”ฉ ๋„์žฅ: 11.4 ์Šฌ๋ผ์ด์Šค ์‚ฌ์šฉํ•˜๊ธฐ ์‹œํ€€์Šค ์ž๋ฃŒํ˜•์€ ์Šฌ๋ผ์ด์Šค๋ผ๋Š” ๊ธฐ๋Šฅ์„ ์ž์ฃผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์Šฌ๋ผ์ด์Šค(slice)๋Š” ๋ฌด์—‡์ธ๊ฐ€์˜ ์ผ๋ถ€๋ฅผ ์ž˜๋ผ๋‚ธ๋‹ค๋Š” ๋œป์ธ๋ฐ, ์‹œํ€€์Šค ์Šฌ๋ผ์ด์Šค๋„ ๋ง ๊ทธ๋Œ€๋กœ ์‹œํ€€์Šค ๊ฐ์ฒด์˜ ์ผ๋ถ€๋ฅผ ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค. ์‹œํ€€์Šค๊ฐ์ฒด[ dojang.io 2. ํŒŒ์ด์ฌ sort https://wikidocs.net/16041 15. List(๋ฆฌ์ŠคํŠธ)(5) - ๋ฆฌ์ŠคํŠธ ์ •๋ ฌ ## 1. list ๋ณธ์ฒด ์ •๋ ฌ - reverse : ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ฑฐ๊พธ๋กœ ๋’ค์ง‘๋Š”๋‹ค. desc ์ •๋ ฌ์ด ์•„๋‹˜ ```python >>> a = [1, 10, 5, 7, 6] >>> a.r… wikidocs.net - sort : ์ •๋ ฌ, ๊ธฐ๋ณธ๊ฐ’์€ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ, reverse์˜ต์…˜..

baekjoon. ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ [Silver II] [python]

๋ฌธ์ œ ๋งํฌ : 1541๋ฒˆ: ์žƒ์–ด๋ฒ„๋ฆฐ ๊ด„ํ˜ธ ์ฒซ์งธ ์ค„์— ์‹์ด ์ฃผ์–ด์ง„๋‹ค. ์‹์€ ‘0’~‘9’, ‘+’, ๊ทธ๋ฆฌ๊ณ  ‘-’๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ๊ฐ€์žฅ ์ฒ˜์Œ๊ณผ ๋งˆ์ง€๋ง‰ ๋ฌธ์ž๋Š” ์ˆซ์ž์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—ฐ์†ํ•ด์„œ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์—ฐ์‚ฐ์ž๊ฐ€ ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๊ณ , 5์ž๋ฆฌ๋ณด๋‹ค www.acmicpc.net expression = input() expressionArr = expression.split('-') first = 0; # ์ฒ˜์Œ ๋งˆ์ด๋„ˆ์Šค๊ฐ€ ๋‚˜์˜ค๊ธฐ ์ „๊นŒ์ง€ ๋ชจ๋‘ ๋”ํ•ด์ฃผ๊ณ , ๊ทธ๋‹ค์Œ ๋ชจ๋‘ ๋นผ์ค€๋‹ค. # ๋ฐ˜๋ก€ 50 - (50) - (50) for num in expressionArr[0].split('+'): first = first + int(num) result = first if len(expressionArr) > 1: for numArr..

[codeforce] D. Non-zero Segments

๋ฌธ์ œ ์ถœ์ฒ˜ https://codeforces.com/problemset/problem/1426/D Problem - 1426D - Codeforces codeforces.com ํ’€์ด n = int(input()) nums = list(map(int, input().split())) # print(nums) acc_sum = [0] * 200001 # ๋ˆ„์ ํ•ฉ ์œ„ํ•œ ๊ณต๊ฐ„ sub_acc_map = {} sub_acc_map[0] = 'exists' # ํ•ฉ์ด 0 ์ธ ๊ฒƒ์„ ์ฐพ๊ธฐ ์œ„ํ•ด ์ดˆ๊ธฐํ™” result = 0 for i in range(n): acc_sum[i] = nums[i]; if i > 0 : acc_sum[i] = acc_sum[i] + acc_sum[i - 1] if acc_sum[i] in sub_a..

baekjoon. ํŠธ๋ฆฌ ์ˆœํšŒ [Silver I] [python]

๋ฌธ์ œ๋งํฌ : https://www.acmicpc.net/problem/1991 1991๋ฒˆ: ํŠธ๋ฆฌ ์ˆœํšŒ ์ฒซ์งธ ์ค„์—๋Š” ์ด์ง„ ํŠธ๋ฆฌ์˜ ๋…ธ๋“œ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 26)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ๊ฐ ๋…ธ๋“œ์™€ ๊ทธ์˜ ์™ผ์ชฝ ์ž์‹ ๋…ธ๋“œ, ์˜ค๋ฅธ์ชฝ ์ž์‹ ๋…ธ๋“œ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋…ธ๋“œ์˜ ์ด๋ฆ„์€ A๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ์•ŒํŒŒ www.acmicpc.net class Node: def __init__(node, data, left_node, right_node): node.data = data node.left_node = left_node node.right_node = right_node n = int(input()) tree = {} def preOrder(node): print(node.data, end = '') if..

baekjoon. ์นด๋“œ2 [python] [Silver IV]

๋ฌธ์ œ๋งํฌ :https://www.acmicpc.net/problem/2164 2164๋ฒˆ: ์นด๋“œ2 N์žฅ์˜ ์นด๋“œ๊ฐ€ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ์นด๋“œ๋Š” ์ฐจ๋ก€๋กœ 1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ๋ฒˆํ˜ธ๊ฐ€ ๋ถ™์–ด ์žˆ์œผ๋ฉฐ, 1๋ฒˆ ์นด๋“œ๊ฐ€ ์ œ์ผ ์œ„์—, N๋ฒˆ ์นด๋“œ๊ฐ€ ์ œ์ผ ์•„๋ž˜์ธ ์ƒํƒœ๋กœ ์ˆœ์„œ๋Œ€๋กœ ์นด๋“œ๊ฐ€ ๋†“์—ฌ ์žˆ๋‹ค. ์ด์ œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋™์ž‘์„ ์นด๋“œ๊ฐ€ www.acmicpc.net from collections import deque N = int(input()) # ๋ณด๋“œ์˜ ํฌ๊ธฐ K = int(input()) # ์‚ฌ๊ณผ์˜ ๊ฐœ์ˆ˜ def printAll(board): for i in range(N): for j in range(N): print(board[i][j], end = ' ') print("") print("") # ์‚ฌ๊ณผ ๊ฐฏ์ˆ˜ # ์ด์ฒ˜๋Ÿผ ํ•˜๋ฉด ํ•œ ํ–‰๋งŒ ๋ฐ”๊พธ์–ด๋„..

๋ฐ˜์‘ํ˜•