๐Ÿ—๏ธ Algorithm/๐ŸŸฉ ๋ฐฑ์ค€ 227

[๋ฐฑ์ค€] [Python] 1260๋ฒˆ_DFS์™€ BFS

https://www.acmicpc.net/problem/1260 1260๋ฒˆ: DFS์™€ BFS ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000), ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M(1 ≤ M ≤ 10,000), ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•  ์ •์ ์˜ ๋ฒˆํ˜ธ V๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ„์„ ์ด ์—ฐ๊ฒฐํ•˜๋Š” ๋‘ ์ •์ ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์–ด๋–ค ๋‘ ์ •์  ์‚ฌ www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 1260๋ฒˆ ๋ฌธ์ œ - DFS์™€ BFS # Depth First Search def dfs(n): print(n, end=' ') visited[n] = True for i in graph[n]: if not visited[i]: dfs(i) # Breadth First Search def bfs(n): visited[n] = True queue =..

[๋ฐฑ์ค€] [Python] 11651๋ฒˆ_๋‚˜์ด์ˆœ ์ •๋ ฌ

https://www.acmicpc.net/problem/11651 11651๋ฒˆ: ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ 2 ์ฒซ์งธ ์ค„์— ์ ์˜ ๊ฐœ์ˆ˜ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” i๋ฒˆ์ ์˜ ์œ„์น˜ xi์™€ yi๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (-100,000 ≤ xi, yi ≤ 100,000) ์ขŒํ‘œ๋Š” ํ•ญ์ƒ ์ •์ˆ˜์ด๊ณ , ์œ„์น˜๊ฐ€ ๊ฐ™์€ ๋‘ ์ ์€ ์—†๋‹ค. www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 11651๋ฒˆ ๋ฌธ์ œ - ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ 2 n = int(input()) coord = [] for _ in range(n): x, y = map(int, input().split()) coord.append([x,y]) coord.sort(key = lambda x: (x[1], x[0])) for i in coord: prin..

[๋ฐฑ์ค€] [Python] 10814๋ฒˆ_๋‚˜์ด์ˆœ ์ •๋ ฌ

https://www.acmicpc.net/problem/10814 10814๋ฒˆ: ๋‚˜์ด์ˆœ ์ •๋ ฌ ์˜จ๋ผ์ธ ์ €์ง€์— ๊ฐ€์ž…ํ•œ ์‚ฌ๋žŒ๋“ค์˜ ๋‚˜์ด์™€ ์ด๋ฆ„์ด ๊ฐ€์ž…ํ•œ ์ˆœ์„œ๋Œ€๋กœ ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, ํšŒ์›๋“ค์„ ๋‚˜์ด๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์œผ๋กœ, ๋‚˜์ด๊ฐ€ ๊ฐ™์œผ๋ฉด ๋จผ์ € ๊ฐ€์ž…ํ•œ ์‚ฌ๋žŒ์ด ์•ž์— ์˜ค๋Š” ์ˆœ์„œ๋กœ ์ •๋ ฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 10814๋ฒˆ ๋ฌธ์ œ - ๋‚˜์ด์ˆœ ์ •๋ ฌ n = int(input()) member = [] for _ in range(n): member.append(list(input().split())) # [['21', 'Junkyu'], ['21', 'Dohyun'], ['20', 'Sunyoung']] member.sort(key = lambda x: int(x[0])) for i in member:..

[๋ฐฑ์ค€] [Python] 11650๋ฒˆ_์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ

https://www.acmicpc.net/problem/11650 11650๋ฒˆ: ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ ์ฒซ์งธ ์ค„์— ์ ์˜ ๊ฐœ์ˆ˜ N (1 ≤ N ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” i๋ฒˆ์ ์˜ ์œ„์น˜ xi์™€ yi๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (-100,000 ≤ xi, yi ≤ 100,000) ์ขŒํ‘œ๋Š” ํ•ญ์ƒ ์ •์ˆ˜์ด๊ณ , ์œ„์น˜๊ฐ€ ๊ฐ™์€ ๋‘ ์ ์€ ์—†๋‹ค. www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 11650๋ฒˆ ๋ฌธ์ œ - ์ขŒํ‘œ ์ •๋ ฌํ•˜๊ธฐ n = int(input()) coord = [] for i in range(n): x, y = map(int, input().split()) coord.append([x,y]) coord.sort(key = lambda x: (x[0], x[1])) for i in coord: print(i[..

[๋ฐฑ์ค€] (Python) 11718๋ฒˆ_๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๊ธฐ

https://www.acmicpc.net/problem/11718 11718๋ฒˆ: ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๊ธฐ ์ž…๋ ฅ์ด ์ฃผ์–ด์ง„๋‹ค. ์ž…๋ ฅ์€ ์ตœ๋Œ€ 100์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž, ๋Œ€๋ฌธ์ž, ๊ณต๋ฐฑ, ์ˆซ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. ๊ฐ ์ค„์€ 100๊ธ€์ž๋ฅผ ๋„˜์ง€ ์•Š์œผ๋ฉฐ, ๋นˆ ์ค„์€ ์ฃผ์–ด์ง€์ง€ ์•Š๋Š”๋‹ค. ๋˜, ๊ฐ ์ค„์€ ๊ณต๋ฐฑ์œผ๋กœ ์‹œ www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 11718๋ฒˆ ๋ฌธ์ œ - ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๊ธฐ while True: try: print(input()) except EOFError: break

[๋ฐฑ์ค€] (Python) 1181๋ฒˆ_๋‹จ์–ด ์ •๋ ฌ

https://www.acmicpc.net/problem/1181 1181๋ฒˆ: ๋‹จ์–ด ์ •๋ ฌ ์ฒซ์งธ ์ค„์— ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 20,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด๊ฐ€ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 50์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค. www.acmicpc.net ํ’€์ด 1๋ฒˆ ํ’€์ด # ๋ฐฑ์ค€ 1181๋ฒˆ ๋ฌธ์ œ - ๋‹จ์–ด ์ •๋ ฌ # 1. ๊ธธ์ด๊ฐ€ ์งง์€ ๊ฒƒ๋ถ€ํ„ฐ # 2. ๊ธธ์ด๊ฐ€ ๊ฐ™์œผ๋ฉด ์‚ฌ์ „ ์ˆœ์œผ๋กœ import sys n = int(sys.stdin.readline().strip()) words = [] for _ in range(n): words.append(sys.stdin.readline().strip()) words = list(set(words)) # ์ค‘..

[๋ฐฑ์ค€] (Python) 1427๋ฒˆ_์ˆ์ฝ”๋”ฉ

https://www.acmicpc.net/problem/1427 1427๋ฒˆ: ์†ŒํŠธ์ธ์‚ฌ์ด๋“œ ์ฒซ์งธ ์ค„์— ์ •๋ ฌํ•˜๋ ค๊ณ  ํ•˜๋Š” ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. N์€ 1,000,000,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ํ’€์ด ์ •๋ ฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ # ๋ฐฑ์ค€ 1427๋ฒˆ ๋ฌธ์ œ - ์†ŒํŠธ์ธ์‚ฌ์ด๋“œ n = list(input()) n.sort(reverse=True) new_list = "".join(n) print(new_list)

[๋ฐฑ์ค€] (Python) 10989๋ฒˆ_์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 3

https://www.acmicpc.net/problem/10989 10989๋ฒˆ: ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ 3 ์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 10,000,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด ์ˆ˜๋Š” 10,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ž์—ฐ์ˆ˜์ด๋‹ค. www.acmicpc.net ํ’€์ด # ๋ฐฑ์ค€ 10989๋ฒˆ ๋ฌธ์ œ - ์ˆ˜ ์ •๋ ฌํ•˜๊ธฐ import sys n = int(sys.stdin.readline()) num = [0] * 10001 for i in range(n): num[int(sys.stdin.readline())] += 1 for i in range(10001): if num[i] != 0: for j in range(num[i]): print(i)

[๋ฐฑ์ค€] (Python) 10610๋ฒˆ_30

https://www.acmicpc.net/problem/10610 10610๋ฒˆ: 30 ์–ด๋А ๋‚ , ๋ฏธ๋ฅด์ฝ”๋Š” ์šฐ์—ฐํžˆ ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์–‘์ˆ˜ N์„ ๋ณด์•˜๋‹ค. ๋ฏธ๋ฅด์ฝ”๋Š” 30์ด๋ž€ ์ˆ˜๋ฅผ ์กด๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋Š” ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์ฐพ์€ ์ˆ˜์— ํฌํ•จ๋œ ์ˆซ์ž๋“ค์„ ์„ž์–ด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•œ www.acmicpc.net ํ’€์ด ๋‚ด ํ’€์ด # ๋ฐฑ์ค€ 10610๋ฒˆ ๋ฌธ์ œ - 30 n = list(input()) new_list = [] for i in n: new_list.append(int(i)) if 0 in new_list: new_list.sort(reverse=True) for j in range(len(new_list)): new_list[j] = str(new_list[j]) new_list = ''.join(n..

[๋ฐฑ์ค€] (Python) 10162๋ฒˆ _์ „์ž๋ ˆ์ธ์ง€

https://www.acmicpc.net/problem/10162 10162๋ฒˆ: ์ „์ž๋ ˆ์ธ์ง€ 3๊ฐœ์˜ ์‹œ๊ฐ„์กฐ์ ˆ์šฉ ๋ฒ„ํŠผ A B C๊ฐ€ ๋‹ฌ๋ฆฐ ์ „์ž๋ ˆ์ธ์ง€๊ฐ€ ์žˆ๋‹ค. ๊ฐ ๋ฒ„ํŠผ๋งˆ๋‹ค ์ผ์ •ํ•œ ์‹œ๊ฐ„์ด ์ง€์ •๋˜์–ด ์žˆ์–ด ํ•ด๋‹น ๋ฒ„ํŠผ์„ ํ•œ๋ฒˆ ๋ˆ„๋ฅผ ๋•Œ๋งˆ๋‹ค ๊ทธ ์‹œ๊ฐ„์ด ๋™์ž‘์‹œ๊ฐ„์— ๋”ํ•ด์ง„๋‹ค. ๋ฒ„ํŠผ A, B, C์— ์ง€์ •๋œ ์‹œ๊ฐ„์€ www.acmicpc.net ํ’€์ด ๊ทธ๋ฆฌ๋”” ์•Œ๊ณ ๋ฆฌ์ฆ˜ # ๋ฐฑ์ค€ 10162๋ฒˆ ๋ฌธ์ œ - ์ „์ž๋ ˆ์ธ์ง€ import sys n = int(sys.stdin.readline().rstrip()) buttons = [300, 60, 10] count = [0] * 3 if(n % 10 != 0): print(-1) else: for i in range(3): count[i] = n // buttons[i] n = n % button..