๐Ÿฏ ์•Œ๊ณ ๋ฆฌ์ฆ˜/BOJ

13์ผ์ฐจ(1/20) https://www.acmicpc.net/problem/16953from collections import dequedef bfs(a, b): # ํ์— (ํ˜„์žฌ ๊ฐ’, ์—ฐ์‚ฐ ํšŸ์ˆ˜)๋กœ ์‹œ์ž‘ ์ƒํƒœ๋ฅผ ๋„ฃ์Œ queue = deque([(a, 1)]) # ์‹œ์ž‘ ๊ฐ’ a์—์„œ ์—ฐ์‚ฐ 1๋ฒˆ๋ถ€ํ„ฐ ์‹œ์ž‘ visited = set([a]) # ๋ฐฉ๋ฌธํ•œ ๊ฐ’๋“ค์„ ๊ธฐ๋กํ•˜์—ฌ ์ค‘๋ณต ๋ฐฉ์ง€ while queue: current, count = queue.popleft() # 2๋ฅผ ๊ณฑํ•œ ๊ฐ’์ด B์™€ ๊ฐ™์œผ๋ฉด ๋ฐ”๋กœ ๋ฐ˜ํ™˜ if current == b: return count # ๋‘ ๊ฐ€์ง€ ์—ฐ์‚ฐ์„ ์‹œ๋„ # 1. 2๋ฅผ ๊ณฑํ•œ๋‹ค. ..
7์ผ์ฐจ(1/13) https://www.acmicpc.net/problem/1181๋žŒ๋‹ค๋ฅผ ์“ธ ์ˆ˜ ์žˆ๋Š๋ƒlists = []n = int(input())for _ in range(n): lists.append(input().strip())set_lists = set(lists)# ๊ธธ์ด ์šฐ์„  -> ์‚ฌ์ „ ์ˆœsorted_lists = sorted(set_lists, key=lambda x: (len(x), x))for word in sorted_lists: print(word)  https://www.acmicpc.net/problem/10825์ด๋•Œ, ๋žŒ๋‹ค์—์„œ -๋ฅผ ๋ถ™์—ฌ์„œ ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ํ‘œํ˜„ํ•˜๋Š”๋ฐ,๋žŒ๋‹ค์˜ ๊ธฐ๋ณธ ์ •๋ ฌ์€ ์˜ค๋ฆ„์ฐจ์ˆœ์ด๋‹ค. ๋‚ด๋ฆผ์ฐจ์ˆœ์„ ์œ„ํ•ด์„  -๋ฅผ ๋ถ™์ด๊ฑฐ๋‚˜, ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ reverse=True๋ฅผ ์จ์•ผํ•˜..
4์ผ์ฐจ(1/9) https://www.acmicpc.net/problem/11005 ๊ฝค ๊นŒ๋‹ค๋กœ์› ๋‹ค. n,b = map(int,input().split())ans=''while n!=0: remainder= n%b if remainder>=10: buf = chr(remainder - 10 + ord('A')) else: buf =str(remainder) ans = buf + ans n//=bprint(ans) https://www.acmicpc.net/problem/3062 N=int(input())for _ in range(N): num= int(input()) num_reverse = int(str(num)[::-1]) ans= n..
๋งค์ผ ์ตœ์†Œ ํ•œ ๋ฌธ์ œ์”ฉ ํ’€๊ณ , ์ƒ๊ฐ๊ณผ์ • ์ •๋ฆฌ 1์ผ์ฐจ(1/6) https://www.acmicpc.net/problem/2839 5,3์€ ๋ฐฐ์ˆ˜๊ด€๊ณ„๊ฐ€ ์•„๋‹ˆ๊ธฐ์—, ๋‹จ์ˆœํžˆ ๊ตฌํ•˜๋Š” ์ˆซ์ž๋ฅผ 5๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€์— ๋Œ€ํ•œ ๋ฌด๊ฒŒ๋ฅผ 3์œผ๋กœ ๋‚˜๋ˆ„๋Š” ๋ฐฉ์‹์œผ๋กœ ํ•˜๋ฉด ์•ˆ๋œ๋‹ค.์ ‘๊ทผ ๋ฐฉ๋ฒ•1. 5kg ๋ด‰์ง€๋ฅผ ์ตœ๋Œ€ํ•œ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌํ•˜๋‹ค.N์—์„œ 5kg ๋ด‰์ง€ ๊ฐฏ์ˆ˜๋ฅผ ์ค„์—ฌ๊ฐ€๋ฉฐ ๋‚˜๋จธ์ง€๊ฐ€ 3kg๋กœ ๋‚˜๋ˆ ์ง€๋Š”์ง€ ํ™•์ธN์—์„œ 3์„ ๋บ€ ์ˆซ์ž๊ฐ€ 5๋กœ ๋‚˜๋ˆ ์ง€๋Š”์ง€๋ฅผ ๋ด์•ผํ•จ. ex) 18 -> 15: 5๋กœ ๋‚˜๋ˆ ์ง์ด๋•Œ N์—์„œ๋Š” 3์„ ๋นผ๊ณ , answer๋Š” 1์„ ๋”ํ•˜๋ฉด๋œ๋‹ค.2. N์„ 3,5๋กœ ์ •ํ™•ํžˆ ๋ชป ๋‚˜๋ˆ„๋ฉด ๋ชป ๊ตฌํ•˜๋Š” ๊ฒƒ -> -1 def solution(n): answer=0 while n>=0: #n=7 -> 3,3,1 if n%5=..
DP๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ 2๊ฐ€์ง€๊ฐ€ ์กด์žฌํ•œ๋‹ค. Top-downBottom-up๊ตฌํ˜„์žฌ๊ท€๋ฐ˜๋ณต๋ฌธ์ €์žฅ๋ฐฉ์‹๋ฉ”๋ชจ์ด์ œ์ด์…˜ํƒ€๋ทธ๋ ˆ์ด์…˜ Memoization - ํ•„์š”ํ•œ ๋ถ€๋ถ„ ๋ฌธ์ œ๋“ค๋งŒ ๊ตฌํ•˜๊ธฐ๋ถ€๋ถ„ ๋ฌธ์ œ๋“ค์˜ ๋‹ต์„ ํ•œ ๋ฒˆ ๊ตฌํ–ˆ์œผ๋ฉด ๋˜ ๊ตฌํ•˜์ง€ ์•Š๋„๋ก (์ค‘๋ณต์—ฐ์‚ฐ ์—†๋„๋ก) cache์— ์ €์žฅํ•ด๋‘๊ณ  ๋‹ค์Œ์— ๊ฐ–๋‹ค ์“ฐ๊ธฐ Tabulation - ๋ถ€๋ถ„ ๋ฌธ์ œ๋“ค์˜ ๋‹ต์„ ๋ฏธ๋ฆฌ ๋‹ค ๊ตฌํ•ด๋‘๋ฉด ํŽธํ•˜๋‹ค.ํ…Œ์ด๋ธ”์„ ์ฑ„์›Œ๊ฐ„๋‹ค → ํƒ€๋ทธ๋ ˆ์ด์…˜ ๋ฌธ์ œ๋ฅผ ์ชผ๊ฐœ์„œ ์ž‘์€ ๋ฌธ์ œ๋ถ€ํ„ฐ ๊ตฌํ•ด๊ฐ€๋ฉฐ ์›๋ž˜ ๋ฌธ์ œ์˜ ๋‹ต์„ ๊ตฌํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค.ํ•ต์‹ฌ์€ ์ ํ™”์‹์„ ์ฐพ๊ณ , ํ…Œ์ด๋ธ”๋งŒ ์ž˜ ์ •์˜ํ•˜๋ฉด ํ’€๋ฆฐ๋‹ค. (์ ํ™”์‹ ์ฐพ๊ธฐ๊ฐ€ ์‰ฝ์ง€ ์•Š๋‹ค๋Š”๊ฒŒ ๋ฌธ์ œ ใ…‹ใ…‹) ์ด์ œ ๋ฌธ์ œ๋“ค์„ ํ’€์–ด๋ณด์ž. ๋ฌธ์ œํ’€์ดhttps://koreatstm.tistory.com/148https://koreatstm.tistory.com/149https:/..
https://www.acmicpc.net/problem/10844๊ทœ์น™์„ ๋จผ์ € ์ฐพ์•„๋ณด์ž๋ณธ์ธ์€ A4์šฉ์ง€์— ๊ทธ๋ ค๊ฐ€๋ฉฐ ๊ทœ์น™์„ ์ฐพ์•„๋ณด์•˜๋‹ค.์ธ๋ฑ์Šค๋ฅผ 0๋ถ€ํ„ฐํ•ด์„œ ์ž…๋ ฅ์ด ์ตœ๋Œ€ 100์ด๊ธฐ์—, 100ํ–‰ 10์—ด๋กœ ๋งŒ๋“ค์–ด๋ณธ๋‹ค๋ฉด, ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด ๋‚˜์˜จ๋‹ค.์จ๋ณด๋‹ˆ ๊ทœ์น™์ด ๋ณด์ธ๋‹ค.1ํ–‰์€ ๋ชจ๋“  ๊ฐ’์ด 1์ด๊ณ , 2ํ–‰๋ถ€ํ„ฐ๋Š” ํŠน๋ณ„ํ•œ ๊ทœ์น™์ด ์ƒ๊ธด๋‹ค.ํ™”์‚ดํ‘œ๋กœ ํ‘œ์‹œํ•ด ๋†“์•˜๋“ฏ 0์—ด์˜ ๊ฐ’์€ ์ด์ „ ํ–‰์˜ 1์—ด์˜ ๊ฐ’์ด๊ณ ,9์—ด์˜ ๊ฐ’์€ ์ด์ „ ํ–‰์˜ 8์—ด์˜ ๊ฐ’์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.๋˜ํ•œ ๊ฐ€์šด๋ฐ ๊ฐ’๋“ค์€ ์˜ˆ๋ฅผ๋“ค์–ด 3ํ–‰ 3์—ด์ด๋ผ๊ณ  ํ•˜๋ฉด, ๊ทธ ๊ฐ’์€ 2ํ–‰2์—ด๊ณผ 2ํ–‰4์—ด์˜ ๊ฐ’์˜ ํ•ฉ์ž„์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.์ด์ œ ํƒ€๋ทธ๋ ˆ์ด์…˜์œผ๋กœ ํ’€์–ด๋ณด์ž n=int(input())cache = [[0]* 10 for _ in range(101)]for i in range(1,101): for j i..
https://www.acmicpc.net/problem/11726๊ทœ์น™์„ ๋จผ์ € ์ฐพ์•„๋ณด์ž๋ณธ์ธ์€ A4์šฉ์ง€์— ๊ทธ๋ ค๊ฐ€๋ฉฐ ๊ทœ์น™์„ ์ฐพ์•„๋ณด์•˜๋‹ค.์ฆ‰, ์ „์— ํ’€์—ˆ๋˜ ๋‚ด์šฉ๊ณผ ๊ฐ™์€ ๋ฐฉ์‹์ด๋‹ค.https://koreatstm.tistory.com/148 [๋ฐฑ์ค€/Python] 2748:ํ”ผ๋ณด๋‚˜์น˜ ์ˆ˜ 2https://www.acmicpc.net/problem/2748n=int(input())def func(n): if n==0: return 0 if n==1: return 1 else: return func(n-1)+func(n-2)print(func(n))์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚œ๋‹ค.์บ์‹ฑ์„ ์•ˆํ•ด์„œ ์˜ค๋ž˜๊ฑธ๋ฆฌ๊ณ , ์‹œ๊ฐ„๋ณต์žก๋„๋„ ์—„์ฒญ ๋†’๊ธฐ์— ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€koreatstm.tistory.com์ด์ฒ˜๋Ÿผ f(n) = f(n-1) + f(n-2)์˜ ๊ทœ์น™์ด๋‹ค.์ด์ œ..
https://www.acmicpc.net/problem/11051์ดˆ๊ธฐ์ฝ”๋“œn, k = map(int,input().split())def fun(n,k): if k==n or k==0: return 1 else: return fun(n-1,k-1)+fun(n-1,k)print(fun(n,k)%10007)์‹œ๊ฐ„์ดˆ๊ณผ๋‚œ๋‹ค์žฌ๊ท€(๋ฉ”๋ชจ์ด์ œ์ด์…˜)import sysn, k = map(int,input().split())sys.setrecursionlimit(10**7)cache = [[0]*1001 for _ in range(1001)]def fun(n,k): if cache[n][k]: # 0์ด ์•„๋‹Œ ์ˆ˜๋ผ๋ฉด return cache[n][k] if k==n ..
๊ณ„๋ž€์†Œ๋…„
'๐Ÿฏ ์•Œ๊ณ ๋ฆฌ์ฆ˜/BOJ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ