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

๐Ÿ’ป Programming/์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ…Œ์ŠคํŠธ17

[python] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์นด์นด์˜ค21_๋ฉ”๋‰ด ๋ฆฌ๋‰ด์–ผ (์™„์ „ํƒ์ƒ‰, combinations) ๋ฌธ์ œ ํ’€์ด itertools ์—์„œ combinations ์„ import ํ•ด์„œ ๋ฌธ์ž์—ด์˜ ์กฐํ•ฉ์„ ์ด์šฉํ•œ๋‹ค. combinations ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๊ฐ ํŠœํ”Œ์— ํ•˜๋‚˜์˜ ์กฐํ•ฉ์ด ๊ฐ ์›์†Œ๋ณ„๋กœ ์ชผ๊ฐœ์ ธ์„œ ์ถœ๋ ฅ๋˜๋ฏ€๋กœ, ํ•„์š”์— ๋”ฐ๋ผ ํ›„์ฒ˜๋ฆฌ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. a = 'abcd' b = list(combinations(a,2)) print(b) for i in range(len(b)): b[i] = ''.join(b[i]) print(b) ๋ฌธ์ œ๋Š” order ๋ฌธ์ž์—ด์„ ์ˆœํšŒํ•˜๋ฉด์„œ ๊ฐ ์ฃผ๋ฌธ๋ณ„๋กœ ๋ชจ๋“  ์กฐํ•ฉ์˜ ๊ฐœ์ˆ˜๋ฅผ foodMap์œผ๋กœ ์นด์šดํŠธํ•˜๊ณ , ์„ธํŠธ์˜ ๋ฉ”๋‰ด ๊ฐœ์ˆ˜๋ณ„ max๊ฐ’์„ ์นด์šดํŠธํ•ด๋‘”๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋งˆ์ง€๋ง‰์— course๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ foodMap์—์„œ value๊ฐ’์ด maxCnt์™€ ๋™์ผํ•œ key๋งŒ answer์— appendํ•˜๊ณ  ๋งˆ์ง€๋ง‰์— .. 2022. 2. 21.
[python] ๋ฐฑ์ค€3190_๋ฑ€ (๊ตฌํ˜„) ๋ฌธ์ œ ํ’€์ด ์ด์ฐจ์› ๋ฆฌ์ŠคํŠธ์ƒ์˜ ๋งต์—์„œ ๋ฑ€์ด ์ด๋™ํ•˜๋„๋ก ๋ฆฌ์ŠคํŠธ์˜ ํŠน์ • ์œ„์น˜์—์„œ ๋™,๋‚จ,์„œ,๋ถ์˜ ์œ„์น˜๋กœ ์ด๋™ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ด์•ผ ํ•œ๋‹ค. ๋˜ํ•œ, ๋ฑ€์˜ ๋จธ๋ฆฌ๊ฐ€ ๋ฑ€์˜ ๋ชธ์— ๋‹ฟ๋Š” ์ˆœ๊ฐ„ ์ข…๋ฃŒํ•ด์•ผ ํ•˜๋ฏ€๋กœ, ๋งค ์‹œ์ ๋งˆ๋‹ค ๋ฑ€์ด ์กด์žฌํ•˜๋Š” ์œ„์น˜๋ฅผ ํ•ญ์ƒ ์ด์ฐจ์› ๋ฆฌ์ŠคํŠธ์— ๊ธฐ๋กํ•ด์•ผ ํ•œ๋‹ค. n = int(input()) k = int(input()) data= [[0]*(n+1) for _ in range(n+1)] info = [] for _ in range(k): a,b = map(int,input().split()) data[a][b] = 1 l = int(input()) for _ in range(l): x,c = input().split() info.append((int(x),c)) # ๋™,๋‚จ,์„œ,๋ถ dx = [0,1,0,-.. 2022. 2. 15.
[python] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์‹ ๊ณ  ๊ฒฐ๊ณผ ๋ฐ›๊ธฐ (๊ตฌํ˜„) ๋ฌธ์ œ ํ’€์ด def solution(id_list, report, k): answer = [0]*len(id_list) report = list(set(report)) id = dict() ans_dict = dict() for i in range(len(id_list)): id[id_list[i]]=0 ans_dict[id_list[i]]=0 for i in report: a = i.split(' ')[0] b = i.split(' ')[1] id[b] +=1 for i in range(len(report)): a = report[i].split(' ')[0] b = report[i].split(' ')[1] if id[b] >= k: ans_dict[a] += 1 for i in range(len(id.. 2022. 2. 15.
[python] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_์‹คํŒจ์œจ (์ •๋ ฌ) ๋ฌธ์ œ ํ’€์ด ์šฐ์„  ์Šคํ…Œ์ด์ง€ ๋ฒˆํ˜ธ์™€ ์‹คํŒจ์œจ์„ ํ•จ๊ป˜ ์ €์žฅํ•  ๋”•์…”๋„ˆ๋ฆฌ answer์„ ๋งŒ๋“ ๋‹ค. ์Šคํ…Œ์ด์ง€๋ฅผ ์ •๋ ฌํ•˜๊ณ  ์Šคํ…Œ์ด์ง€์—์„œ for๋ฌธ์„ ๋Œ๋ฉด์„œ ๊ฐ ์ธ๋ฑ์Šค๋ฅผ ์นด์šดํŠธํ•ด์„œ 0๊ฐœ์ด๋ฉด answer์— 0์„, ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด answer์— ์‹คํŒจ์œจ์„ ๊ณ„์‚ฐํ•ด์„œ ๋„ฃ๊ณ  ์œ ์ €์ˆ˜๋Š” ์นด์šดํŠธํ–ˆ๋˜ ์ˆ˜๋Š” ๋นผ์ค€๋‹ค. for๋ฌธ์„ ๋‹ค ๋Œ๊ณ  answer์„ ์‹คํŒจ์œจ์— ๋”ฐ๋ผ ์ •๋ ฌํ•ด์„œ ๋ฆฌํ„ดํ•ด์ค€๋‹ค. def solution(N, stages): answer = {} stages.sort() numUser = len(stages) for i in range(1,N+1): cnt = stages.count(i) if cnt==0: answer[i]=0 else: answer[i]=(cnt/numUser) numUser=numUser-cnt answer = dict(.. 2022. 2. 15.
[python] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_ํ”„๋ฆฐํ„ฐ (์Šคํƒํ) ๋ฌธ์ œ ํ’€์ด ํ์— ์šฐ์„  ์ˆœ์œ„, index ์ˆœ์œผ๋กœ ์ €์žฅํ•˜๊ณ  while ๋ฌธ์„ ๋Œ๋ฉด์„œ ํ์—์„œ ํ•˜๋‚˜์”ฉ ๋นผ๊ณ  ์šฐ์„ ์ˆœ์œ„์— ๋” ๋†’์€๊ฒŒ ํ์— ๋‚จ์•„์žˆ์œผ๋ฉด ํ˜„์žฌ ๊ฐ’์„ ๋‹ค์‹œ ํ์— ์ง‘์–ด๋„ฃ๋Š”๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ์— result์— +1 ํ•˜๊ณ  ํ˜„์žฌ index๊ฐ€ location๊ณผ ๋™์ผํ•˜๋ฉด while ๋ฌธ breakํ•˜๊ณ  result๋ฅผ ๋ฆฌํ„ดํ•ด์ค€๋‹ค. from collections import deque def solution(priorities, location): result = 0 d = deque([(v,i) for i,v in enumerate(priorities)]) # priority, index ์ˆœ์œผ๋กœ que์— ์ €์žฅ while len(d): item = d.popleft() if d and max(d)[0] > item[0]: .. 2022. 2. 14.
[python] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค_๋ฌธ์ž์—ด ์••์ถ• (์™„์ „ ํƒ์ƒ‰) ๋ฌธ์ œ ํ’€์ด ์ž…๋ ฅ์œผ๋กœ ์ฃผ์–ด์ง€๋Š” ๋ฌธ์ž๊ฐ€ 1000 ์ดํ•˜์ด๊ธฐ ๋•Œ๋ฌธ์— ์™„์ „ํƒ์ƒ‰์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ธธ์ด๊ฐ€ N์ธ ๋ฌธ์ž์—ด์ด ์ž…๋ ฅ๋˜๋ฉด 1๋ถ€ํ„ฐ N/2 ๊นŒ์ง€์˜ ๋ชจ๋“  ์ˆ˜๋ฅผ ๋‹จ์œ„๋กœ ํ•˜์—ฌ ๋ฌธ์ž์—ด์„ ์••์ถ•ํ•˜๋Š” ๋ชจ๋“  ๋ฐฉ๋ฒ•์„ ํ™•์ธํ•˜๊ณ , ๊ฐ€์žฅ ์งง๊ฒŒ ์••์ถ•๋˜๋Š” ๊ธธ์ด๋ฅผ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ๊ตฌ์ฒด์ ์ธ ๋ฐฉ๋ฒ•์€ step ์‚ฌ์ด์ฆˆ๋กœ ๋ฌธ์ž์—ด์„ ์ž˜๋ผ์„œ prev์— ์ €์žฅํ•ด๋‘๊ณ , ๋‹ค์Œ ์œ„์น˜๋ฅผ step ์‚ฌ์ด์ฆˆ๋กœ ์ž๋ฅด๊ณ  prev์™€ ๋˜‘๊ฐ™์€์ง€ ๋น„๊ตํ•˜๋ฉด์„œ ์ง„ํ–‰ํ•œ๋‹ค. def solution(s): answer = len(s) # step์„ 1๋ถ€ํ„ฐ ๋ฌธ์ž์—ด ๊ธธ์ด ๋ฐ˜๊นŒ์ง€ ๋Š˜๋ ค๊ฐ€๋ฉฐ ํ™•์ธ for step in range(1, len(s)//2 +1): compressed = "" prev = s[0:step] # ์•ž์—์„œ ๋ถ€ํ„ฐ step ๋งŒํผ์˜ ๋ฌธ์ž์—ด ์ถ”์ถœ count = 1 # step.. 2022. 2. 14.
728x90