[Python] heapq ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
ยท
๐Ÿ—จLanguage/Python
ํž™ํ(heapq)๋Š” ํŒŒ์ด์ฌ ํ‘œ์ค€๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๋ชจ๋“ˆ๋กœ Heap ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ง€์›ํ•œ๋‹ค. ์™„์ „ ์ด์ง„ํŠธ๋ฆฌ ํ˜•ํƒœ๋ฅผ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ตœ์†Ÿ๊ฐ’๊ณผ ์ตœ๋Œ“๊ฐ’์„ ๋น ๋ฅด๊ฒŒ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค . ํŒŒ์ด์ฌ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ตœ์†Œํž™(min-heap)์„ ์ œ๊ณตํ•œ๋‹ค. (๋ถ€๋ชจ ๋…ธ๋“œ์˜ ๊ฐ’์€ ์ž์‹ ๋…ธ๋“œ์˜ ๊ฐ’๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.)์ฃผ์š” ๋ฉ”์†Œ๋“œheapq.heappush(heap, item)ํž™์˜ ์กฐ๊ฑด์„ ์œ ์ง€ํ•˜๋ฉด์„œ item์„ heap์— push ํ•ด์ค€๋‹ค. ( O(logn) )import heapqheap = []for i in range(10): heapq.heappush(heap, i)print(heap)## [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]heapq.heappop(heap)ํž™์—์„œ ๊ฐ€์žฅ ์ž‘์€ ์š”์†Œ๋ฅผ ์ œ๊ฑฐํ•˜๊ณ  ๋ฐ˜ํ™˜ํ•จ.  ( O(logn)..
[Python] itertools ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ
ยท
๐Ÿ—จLanguage/Python
itertools ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํšจ์œจ์ ์œผ๋กœ ์ˆœ์—ด๊ณผ ์กฐํ•ฉ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. permutations( ) - ์ˆœ์—ด์ˆœ์—ด์€ ์„œ๋กœ ๋‹ค๋ฅธ n๊ฐœ์˜ ๋‹ค๋ฅธ ์›์†Œ๋ฅผ ๊ฐ€์ง€๋Š” ์–ด๋–ค ์ง‘ํ•ฉ์—์„œ ์ค‘๋ณต ์—†์ด ์ˆœ์„œ์— ์ƒ๊ด€ ์žˆ๊ฒŒ r๊ฐœ์˜ ์›์†Œ๋ฅผ ์„ ํƒํ•˜๊ฑฐ๋‚˜ ๋‚˜์—ดํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. import itertoolsarr = ['A', 'B', 'C', 'D']nPr = itertools.permutations(arr, 2)print(list(nPr))"""[('A', 'B'), ('A', 'C'), ('A', 'D'), ('B', 'A'), ('B', 'C'), ('B', 'D'), ('C', 'A'), ('C', 'B'), ('C', 'D'), ('D', 'A'), ('D', 'B'), ('D', 'C')]"""combination..
[Python] sys.stdin.readline() ์‚ฌ์šฉํ•˜๊ธฐ
ยท
๐Ÿ—จLanguage/Python
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๋‹ค๋ณด๋ฉด ์‹œ๊ฐ„ ์ œํ•œ์ด๋ผ๋Š” ๋ฒฝ์„ ๋งˆ์ฃผํ•˜๊ฒŒ ๋œ๋‹ค. Python์€ ์ž…๋ ฅ์„ ๋ฐ›๊ธฐ ์œ„ํ•ด input()๊ณผ sys.stdin.readline()์„ ์‚ฌ์šฉํ•˜๋Š”๋ฐ sys.stdin.readline()์„ ์‚ฌ์šฉํ•˜๋ฉด ๋” ๋น ๋ฅด๊ฒŒ ์ž…๋ ฅ์„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค.  Input( ) vs sys.stdin.readline( )input( )input( ) ์€ ์ž๋™์œผ๋กœ ๊ฐœํ–‰ ๋ฌธ์ž๋ฅผ ์ œ๊ฑฐํ•œ๋‹ค. (์ž…๋ ฅ๋ฐ›์€ ๋ฌธ์ž์—ด์— ๊ฐœํ–‰ ๋ฌธ์ž๋งŒ์„ ์ œ๊ฑฐํ•˜์—ฌ ์ค„ ๋ฐ”๊ฟˆ ์—†์ด ์ถœ๋ ฅํ•จ)์ƒ๋Œ€์ ์œผ๋กœ ๋А๋ฆฌ๋‹ค. ๋” ์ด์ƒ ์ž…๋ ฅ์ด ์—†๋Š” ๊ฒฝ์šฐ์— ์‹คํ–‰๋˜๋ฉด EOF ์—๋Ÿฌ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. sys.stdin.readline( )sys.stdin.readline( )์€ ๊ฐœํ–‰ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค.์ƒ๋Œ€์ ์œผ๋กœ ๋น ๋ฅด๋‹ค.EOF๋ฅผ ๋งŒ๋‚˜๋„ ์—๋Ÿฌ๋ฅผ ๋ฐ˜ํ™˜ํ•˜์ง€ ์•Š๊ณ  ๋นˆ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค. sys..
์—ฌ์šฐ๋น„_YoBi
'๐Ÿ—จLanguage/Python' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก