๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๋ฐ˜์‘ํ˜•

Programming

(40)
[Softeer][level3] ์ง•๊ฒ€๋‹ค๋ฆฌ (python) https://softeer.ai/practice/info.do?idx=1&eid=390 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด rocks์— ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐ์€ ๋Œ์˜ ์œ„์น˜ ๊ธฐ์ค€์œผ๋กœ ๋ช‡ ๊ฐœ๊นŒ์ง€ ๋ฐ์„ ์ˆ˜ ์žˆ๋Š”์ง€ ์ €์žฅ. ์™ผ์ชฝ -> ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ์”ฉ ์ด๋™ํ•˜๋ฉด์„œ, ํ•ด๋‹น ๋Œ ๊ธฐ์ค€(๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐ์€ ๋Œ์ด๋ผ ๊ฐ€์ •)์œผ๋กœ ์™ผ์ชฝ์— ๋” ์ž‘์€ ๊ฐฏ์ˆ˜๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธ. ๋” ์ž‘์€ ๋Œ์ด ์กด์žฌํ•˜๋ฉด, ๊ทธ ๋Œ๋“ค ์ค‘ ๊ฐ€์žฅ ํฐ ๋Œ์— ๋„๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ• ์ˆ˜(์ž‘์€ ๋Œ ์ค‘ ๊ฐ€์žฅ ํฐ ๋Œ์„ ๋งˆ์ง€๋ง‰์œผ๋กœ ํ†ต๊ณผํ•˜๋Š” ๊ฐฏ์ˆ˜) + 1(ํ˜„์žฌ ๋Œ์„ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ง€๋‚˜๋Š” ๊ฒฝ์šฐ)์„ rocks์— ์ €์žฅ. ex) "3,2,1,4,5"์—์„œ "3,4,5" ๊ฐ€ ์ตœ๋Œ€๋กœ ๋ฐ์„ ์ˆ˜ ์žˆ๋Š” ๋Œ์˜ ์ˆ˜ ์ฝ”๋“œ import sys N = int(input..
[Softeer][level3] ์ˆ˜ํผ ๋ฐ”์ด๋Ÿฌ์Šค (python) https://softeer.ai/practice/info.do?idx=1&eid=391 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด K x P^(10 x N)์„ ๊ตฌํ•ด์•ผํ•˜๋Š”๋ฐ N์ด ๋„ˆ๋ฌด ์ปค์ง„๋‹ค๋Š”๊ฒŒ ๋ฌธ์ œ. O(logN)์„ ๋งŒ์กฑํ•˜๋„๋ก ์žฌ๊ท€์ ์œผ๋กœ ํ’€์–ด์•ผํ•จ. - cal(2,10) = cal(2,5) x cal(2,5) - cal(2,5) = cal(2,2) x cal(2,2) x 2 - cal(2,2) = cal(2,1) x cal(2,1) - cal(2,1) = 2 ์ฝ”๋“œ import sys K, P, N = map(int, sys.stdin.readline().split()) # 0.1์ดˆ๋‹น ์ฆ๊ฐ€ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ดˆ๋ฅผ 0.1์ดˆ ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝ N *= 10 def Cal..
[Softeer][level3] ์„ฑ์  ํ‰๊ท  (python) https://softeer.ai/practice/info.do?idx=1&eid=389 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด - round(์ถœ๋ ฅํ•  ๊ฐ’, ๋ฐ˜์˜ฌ๋ฆผํ•ด์„œ ๋‚˜ํƒ€๋‚ผ ์ž๋ฆฌ) - print("%2f" %์‹ค์ˆ˜) - .format() : {:.2f}.format(์‹ค์ˆ˜) -> 2๋ฒˆ์งธ ์ž๋ฆฌ๊นŒ์ง€ ๋‚˜ํƒ€๋‚ด๊ฒ ๋‹ค - f-string : f'{์‹ค์ˆ˜:.2f}' ์ฝ”๋“œ import sys N, K = map(int, input().split()) scores = list(map(int, sys.stdin.readline().split())) results = [] for i in range(K) : start, end = map(int, input().split())..
[Softeer][level2] ์ „๊ด‘ํŒ (python) https://softeer.ai/practice/info.do?idx=1&eid=624 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ๋‘ ๊ฐ’์ด ๋‹ค๋ฅผ ๋•Œ(0,1) 1, ๊ฐ™์œผ๋ฉด 0์ด๋˜๋Š” XOR์—ฐ์‚ฐ์„ ํ™œ์šฉ. ๊ฐ ์ˆซ์ž๋งˆ๋‹ค ์ผœ์ง€๋Š” ์œ„์น˜์˜ ์ •๋ณด๋ฅผ ์‚ฌ์ „์— num์ด๋ผ๋Š” dictionary์— value๊ฐ’์œผ๋กœ ์ €์žฅ. stringํ˜• 5์ž๋ฆฌ ์ˆซ์ž๋กœ ๋งŒ๋“ค๊ณ  ํ•˜๋‚˜์”ฉ ๋น„๊ตํ•˜์—ฌ ๋‹ค๋ฅธ ์ˆซ์ž์ธ ๊ฒฝ์šฐ ์Šค์œ„์น˜ ๋ช‡ ๋ฒˆ ๋ˆŒ๋Ÿฌ์•ผํ•˜๋Š”์ง€ ๊ณ„์‚ฐ ์ฝ”๋“œ import sys # ์ˆซ์ž ์ •๋ณด ์‚ฌ์ „์— ์ •์˜ num = { ' ' : '0000000', '0' : '1110111', '1' : '0010010', '2' : '1011101', '3' : '1011011', '4' : '0111010', '5' : ..
[Softeer][level2] ํšŒ์˜์‹ค ์˜ˆ์•ฝ (python) https://softeer.ai/practice/info.do?idx=1&eid=626 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ๊ตฌํ˜„ ๋ฌธ์ œ๋ผ ํ•˜๋“œ์ฝ”๋”ฉ(๋„ˆ๋ฌด ํ—ˆ์ ‘ํ•˜๋„ค์š”). dictionaryํ˜•ํƒœ๋กœ ํšŒ์˜์‹ค ์ด๋ฆ„๊ณผ ์‹œ๊ฐ„(9~18) ๊ณต๊ฐ„ ์ƒ์„ฑํ•˜๊ณ  ์˜ˆ์•ฝ๋œ ์‹œ๊ฐ„ ํ• ๋‹น. dictionary์—์„œ for๋ฌธ - ๊ทธ๋ƒฅ ๋Œ๋ฆฌ๋ฉด key๊ฐ’ - .values()ํ•˜๋ฉด value๊ฐ’ - .items()ํ•˜๋ฉด key, value๊ฐ’ ๋ฐ›์•„์˜ด *๋‹จ ์ˆœ์„œ๋Š” random. ์ •๋ ฌํ•˜๋ ค๋ฉด sorted()ํ•ด์•ผํ•จ - sort(), sorted() : sort()๋Š” method๋กœ return๊ฐ’ ์—†์Œ. sorted()๋Š” ํ•จ์ˆ˜๋กœ ์ƒˆ๋กœ์šด ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑ ์ฝ”๋“œ import sys N, M = map(int, inp..
[Softeer][level2] ๋น„๋ฐ€ ๋ฉ”๋‰ด (python) https://softeer.ai/practice/info.do?idx=1&eid=623 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด - "".join() : ๊ณต๋ฐฑ์„ ๊ตฌ๋ถ„์ž๋กœ ํ•˜์—ฌ ํ•ฉ์นจ - "_".join() : _๋ฅผ ๊ตฌ๋ถ„์ž๋กœ ํ•˜์—ฌ ํ•ฉ์นจ str์œผ๋กœ ์ €์žฅํ•ด์„œ ๋น„๋ฐ€ ๋ฉ”๋‰ด๊ฐ€ ์กด์žฌํ•˜๋Š”์ง€ ํ™•์ธ ์ฝ”๋“œ import sys M, N, K = map(int, sys.stdin.readline().split()) answer = "normal" secret_menu = "".join(list(map(str, sys.stdin.readline().split()))) input_btn = "".join(list(map(str, sys.stdin.readline().split(..
[Softeer][level2] ๋ฐ”์ด๋Ÿฌ์Šค (python) https://softeer.ai/practice/info.do?idx=1&eid=407 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ์ฒ˜์Œ์— ๊ฐ„๋‹จํ•˜๊ฒŒ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ–ˆ๋”๋‹ˆ ์ œ์•ฝ์กฐ๊ฑด์„ ๋„˜์–ด๊ฐ€๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒ. import sys # K, P, N = map(int, input().split()) K, P, N = map(int, sys.stdin.readline().split()) for _ in range(N) : K *= P print(K % 1000000007) ๋”ฐ๋ผ์„œ Moduler arithmetic์„ ์ด์šฉ. [Moduler arithmetic] : ์ •์ˆ˜์˜ ํ•ฉ๊ณผ ๊ณฑ์„ ์–ด๋–ค ์ˆ˜์˜ ๋‚˜๋จธ์ง€๋ฅผ ์ด์šฉํ•˜์—ฌ ์ •์˜ -> ๋‚˜๋จธ์ง€๋ฅผ ์ด์šฉํ•œ ์‚ฐ์ˆ  ์—ฐ์‚ฐ a x b mod..
[Softeer][level2] GBC (python) https://softeer.ai/practice/info.do?idx=1&eid=584 Softeer ์—ฐ์Šต๋ฌธ์ œ๋ฅผ ๋‹ด์„ Set์„ ์„ ํƒํ•ด์ฃผ์„ธ์š”. ์ทจ์†Œ ํ™•์ธ softeer.ai ๋ฌธ์ œ ํ’€์ด ๊ธธ์ด๋งŒํผ์˜ ์†๋„๋ฅผ ๋ฆฌ์ŠคํŠธ๋กœ ์ €์žฅํ•˜์—ฌ 1m ๋‹จ์œ„๋กœ ์†๋„ ๋น„๊ตํ•˜์—ฌ ์ฐจ์ด๊ฐ€ ๊ฐ€์žฅ ํฐ ๊ฐ’ ์ฐพ์Œ ์ฝ”๋“œ import sys n,m = map(int,input().split()) section = [] test_section = [] for i in range(n) : # ๊ตฌ๊ฐ„, ์ œํ•œ์†๋„ ์ž…๋ ฅ length, limit = map(int, input().split()) section += [limit] * length for i in range(m) : # ๊ตฌ๊ฐ„ ์šดํ–‰๊ธธ์ด, ์†๋„ ์ž…๋ ฅ length, limit = map(int, inpu..

๋ฐ˜์‘ํ˜•