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

๐Ÿ’ป CS18

[Advent of Code] Day 1 Historian Hysteria https://adventofcode.com/ Advent of Code 2024 adventofcode.com ์˜์–ด ๋…ํ•ด๋„ ๋Š˜๋ฆฌ๊ณ , ์ฝ”๋”ฉ ์‹ค๋ ฅ๋„ ๋Š˜๋ฆฌ๊ณ  ๋Ÿญํ‚ค๋น„ํ‚ค ์ž–์•„ ๐Ÿ€1๋ฒˆ ๋ฌธ์ œ๋Š” ๋‘ ๊ฐœ์˜ ๋ฆฌ์ŠคํŠธ๋ฅผ ๊ฐ๊ฐ ์ •๋ ฌํ•˜์—ฌ, ๊ฐ ์ฐจ์ด๋ฅผ ํ•ฉํ•˜๋ฉด ๋œ๋‹ค.result = 0left = []right = []with open('input/01.txt','r') as file: for line in file: left_number, right_number = map(int, line.split()) left.append(left_number) right.append(right_number)left.sort()right.sort()for i in range(len(left)): .. 2024. 12. 1.
[์ •๋ณด์ฒ˜๋ฆฌ๊ธฐ์‚ฌ] ์š”๊ตฌ์‚ฌํ•ญ ํ™•์ธ (1) - ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก  ์†Œํ”„ํŠธ์›จ์–ด ์ƒ๋ช…์ฃผ๊ธฐ (SDLC - Software Development Life Cycle)ํ”„๋กœ์„ธ์Šค์š”๊ตฌ์‚ฌํ•ญ ๋ถ„์„  → ์„ค๊ณ„ → ๊ตฌํ˜„ → ํ…Œ์ŠคํŠธ → ์œ ์ง€๋ณด์ˆ˜๋ชจ๋ธ ์ข…๋ฅ˜ (ํญํ”„๋‚˜๋ฐ˜)ํญํฌ์ˆ˜ ๋ชจ๋ธ์ˆœ์ฐจ์  ์ ‘๊ทผ์ดํ•ด๊ฐ€ ์šฉ์ด, ๊ด€๋ฆฌ๊ฐ€ ํŽธ๋ฆฌ์š”๊ตฌ์‚ฌํ•ญ ๋ณ€๊ฒฝ ์–ด๋ ค์›€ํ”„๋กœํ† ํƒ€์ดํ•‘ ๋ชจ๋ธํ”„๋กœํ† ํƒ€์ž… ๊ฐœ๋ฐœ์š”๊ตฌ ๋ถ„์„ ์šฉ์ดํ”„๋กœํ†  ํƒ€์ž… ํ๊ธฐ → ๋น„์šฉ ์ฆ๊ฐ€๋‚˜์„ ํ˜• ๋ชจ๋ธ์œ„ํ—˜์„ฑ ๊ฐ์†Œ์™€ ๋ณ€๊ฒฝ์— ์œ ์—ฐํ•œ ๋Œ€์ฒ˜๋ฐ˜๋ณต์  ๋ชจ๋ธ์ฆ๋ถ„๋ฐฉ์‹์œผ๋กœ ๋ณ‘ํ–‰ ๊ฐœ๋ฐœ๋ณ‘ํ–‰ ๊ฐœ๋ฐœ๋กœ ์ผ์ • ๋‹จ์ถ•์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐฉ๋ฒ•๋ก ์ข…๋ฅ˜๊ตฌ์กฐ์  ๋ฐฉ๋ฒ•๋ก ์ •๋ณด๊ณตํ•™ ๋ฐฉ๋ฒ•๋ก ๊ฐ์ฒด ์ง€ํ–ฅ ๋ฐฉ๋ฒ•๋ก ์ปดํฌ๋„ŒํŠธ ๋ฐฉ๋ฒ•๋ก ์• ์ž์ผ ๋ฐฉ๋ฒ•๋ก ์ œํ’ˆ ๊ณ„์—ด ๋ฐฉ๋ฒ•๋ก  ์• ์ž์ผ ๋ฐฉ๋ฒ•๋ก ํŠน์ง•๊ฐœ๋ฐœ ๊ธฐ๊ฐ„์ด ์งง๊ณ  ์‹ ์†ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›์•„ ์œ ๋™์ ์œผ๋กœ ๊ฐœ๋ฐœ์ข…๋ฅ˜XP (์ต์ŠคํŠธ๋ฆผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ)5๊ฐœ์˜ ๊ฐ€์น˜์™€ 12๊ฐœ์˜ ์‹ค์ฒœํ•ญ๋ชฉ1~3์ฃผ์˜ ๋ฐ˜๋ณต์Šคํฌ๋Ÿผ๋งค์ผ ์ •ํ•ด์ง„ ์‹œ๊ฐ„, ์žฅ์†Œ์—์„œ ์งง์€ ์‹œ๊ฐ„์˜.. 2024. 3. 31.
CCW, CW- ์™ธ์  ์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ ๋Œ๋ฉด ์™ธ์  ๊ฒฐ๊ณผ๊ฐ€ + -> ๊ฒฐ๊ณผ๊ฐ€ + ๋ฉด, ์‹œ๊ณ„๋ฐฉํ–ฅ ๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ์œผ๋กœ ๋Œ๋ฉด ์™ธ์  ๊ฒฐ๊ณผ๊ฐ€ - -> ๊ฒฐ๊ณผ๊ฐ€ -๋ฉด ๋ฐ˜์‹œ๊ณ„ ๋ฐฉํ–ฅ ํ‰๋ฉด์ด๋ผ๊ณ  ๊ฐ€์ •ํ•˜๋ฉด AB X AC (๋ฒกํ„ฐ) = m1n2 - m2n1 2024. 1. 21.
์ตœ์†Œ ๊ณต๋ฐฐ์ˆ˜(์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜) ์ฐพ๊ธฐ - ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ• (๋‚˜๋จธ์ง€ ์ •๋ฆฌ) ๊ฒฐ๋ก  ๋จผ์ € def gcd(a, b): while b != 0: a, b = b, a % b return a def lcm(a, b): return a * b // gcd(a, b) test_number = int(input()) for _ in range(test_number): number_1, number_2 = map(int, input().split()) print(lcm(number_1, number_2)) ์›๋ฆฌ ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ• a > b ์ผ ๋•Œ, a % b = r ์ด๋ฉด a์™€ b์˜ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜๋Š” b์™€ r์˜ ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜์™€ ๊ฐ™๋‹ค ๋‚˜๋จธ์ง€ ์ •๋ฆฌ a % b = r ์ด๋ฉด, a = bq + r (q๋Š” ์ž„์˜์˜ ๋ชซ) ๋งŒ์•ฝ d๊ฐ€ a์™€ b์˜ ๊ณต์•ฝ์ˆ˜ ๋ผ๋ฉด, d๋Š” r๋„ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค ์ขŒ๋ณ€ a % d = 0 ์šฐ๋ณ€ bq .. 2024. 1. 20.
๋ฐฑ์ค€ ํ—ˆ๋ธŒ ์—ฐ๋™ํ•˜๊ธฐ ๋ฐฑ์ค€ ํ—ˆ๋ธŒ๋ฅผ ์ด์šฉํ•ด์„œ ๋ฐฑ์ค€๋„ ํ’€๊ณ , ๊นƒํ—ˆ๋ธŒ ์ž”๋””๋„ ์‹ฌ์–ด๋ณด์ž ๋ฐฑ์ค€ ํ—ˆ๋ธŒ ์„ค์น˜ ์•„๋ž˜ ๋งํฌ๋กœ ๊ฐ€์„œ ๋ฐฑ์ค€ํ—ˆ๋ธŒ ์ต์Šคํ…์…˜์„ ํฌ๋กฌ์— ์„ค์น˜ํ•œ๋‹ค. https://chromewebstore.google.com/detail/%EB%B0%B1%EC%A4%80%ED%97%88%EB%B8%8Cbaekjoonhub/ccammcjdkpgjmcpijpahlehmapgmphmk?hl=ko ๋ฐฑ์ค€ํ—ˆ๋ธŒ(BaekjoonHub) Automatically integrate your BOJ submissions to GitHub chrome.google.com ๊นƒํ—ˆ๋ธŒ ์ธ์ฆ ํ›„ ๋ ˆํฌ์ง€ํ† ๋ฆฌ ์—ฐ๋™ Create a new Private Repository - ์ƒˆ๋กœ์šด ๋ ˆํฌ์ง€ํ† ๋ฆฌ ์—ฐ๊ฒฐ Link an Existing Repository - ๊ธฐ์กด์˜ ๋ ˆํฌ์ง€ํ† ๋ฆฌ .. 2024. 1. 16.
๋ฏธ๋กœ ํƒˆ์ถœ ๋ช…๋ น์–ด ์‹œ๋„ ํ–ˆ๋˜ ๋ฐฉ๋ฒ• - BFS (๊ฐ„๋งŒ์— BFS ๋กœ ํ’€๊ฒ ๋‹ค๊ณ  ๋งˆ์Œ๋จน๋Š” ๋ฐ”๋žŒ์—..) ๊ฒฐ๋ก  - ๋จผ์ € ๊ฑฐ๋ฆฌ ๊ณ„์‚ฐํ•ด์„œ ๋˜๋‚˜ ์•ˆ๋˜๋‚˜ ํ™•์ธํ›„ ๋ณ€์œ„๋Ÿ‰์„ ๊ณ„์‚ฐํ•ด์„œ d, l, r, u ์จ์•ผ ๋˜๋Š”๊ฑฐ ๊ณ„์‚ฐํ•˜๊ณ  ๋‚จ์€ ์นด์šดํŠธ์—์„œ d, l๋ฅผ ๋จผ์ €๊ฐ€์„œ (์ตœ๋Œ€ (n,1)) ๊ฐ„๋‹ค ๋‹ค์Œ์— ๊ทธ๋ž˜๋„ ์นด์šดํŠธ๊ฐ€ ๋‚จ์œผ๋ฉด rlrlrlrlrl ๋ฅผ ๋ฐ˜๋ณตํ•œ๋‹ค. from collections import deque # def solution(n, m, x, y, r, c, k): # answer = '' # q = deque([(x,y,"", 0)]) # while q: # pos_x, pos_y, path, count = q.popleft() # print(pos_x, pos_y, path, count) # if count == k : # if pos_x .. 2023. 2. 2.