λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

πŸ“š Algorithm/Baekjoon

(33)
[Baekjoon] λ°±μ€€ 2644 '촌수 계산' λ¬Έμ œν’€μ΄ Python, 파이썬, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 2644 문제 우리 λ‚˜λΌλŠ” κ°€μ‘± ν˜Ήμ€ μΉœμ²™λ“€ μ‚¬μ΄μ˜ 관계λ₯Ό μ΄Œμˆ˜λΌλŠ” λ‹¨μœ„λ‘œ ν‘œν˜„ν•˜λŠ” λ…νŠΉν•œ λ¬Έν™”λ₯Ό 가지고 μžˆλ‹€. μ΄λŸ¬ν•œ μ΄Œμˆ˜λŠ” λ‹€μŒκ³Ό 같은 λ°©μ‹μœΌλ‘œ κ³„μ‚°λœλ‹€. 기본적으둜 λΆ€λͺ¨μ™€ μžμ‹ 사이λ₯Ό 1촌으둜 μ •μ˜ν•˜κ³  μ΄λ‘œλΆ€ν„° μ‚¬λžŒλ“€ κ°„μ˜ 촌수λ₯Ό κ³„μ‚°ν•œλ‹€. 예λ₯Ό λ“€λ©΄ λ‚˜μ™€ 아버지, 아버지와 ν• μ•„λ²„μ§€λŠ” 각각 1촌으둜 λ‚˜μ™€ ν• μ•„λ²„μ§€λŠ” 2촌이 되고, 아버지 ν˜•μ œλ“€κ³Ό ν• μ•„λ²„μ§€λŠ” 1촌, λ‚˜μ™€ 아버지 ν˜•μ œλ“€κ³ΌλŠ” 3촌이 λœλ‹€. μ—¬λŸ¬ μ‚¬λžŒλ“€μ— λŒ€ν•œ λΆ€λͺ¨ μžμ‹λ“€ κ°„μ˜ 관계가 μ£Όμ–΄μ‘Œμ„ λ•Œ, 주어진 두 μ‚¬λžŒμ˜ 촌수λ₯Ό κ³„μ‚°ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ μ‚¬λžŒλ“€μ€ 1, 2, 3, …, n (1 ≤ n ≤ 100)의 μ—°μ†λœ 번호둜 각각 ν‘œμ‹œλœλ‹€. μž…λ ₯ 파일의 첫째 μ€„μ—λŠ” 전체 μ‚¬λžŒμ˜ 수 n이 주어지고, λ‘˜μ§Έ μ€„μ—λŠ” 촌수λ₯Ό 계산해야 ν•˜..
[Baekjoon] λ°±μ€€ 1339 '단어 μˆ˜ν•™' λ¬Έμ œν’€μ΄ Python, 파이썬, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 1339 문제 λ―Όμ‹μ΄λŠ” μˆ˜ν•™ν•™μ›μ—μ„œ 단어 μˆ˜ν•™ 문제λ₯Ό ν‘ΈλŠ” μˆ™μ œλ₯Ό λ°›μ•˜λ‹€. 단어 μˆ˜ν•™ λ¬Έμ œλŠ” N개의 λ‹¨μ–΄λ‘œ 이루어져 있으며, 각 λ‹¨μ–΄λŠ” μ•ŒνŒŒλ²³ λŒ€λ¬Έμžλ‘œλ§Œ 이루어져 μžˆλ‹€. μ΄λ•Œ, 각 μ•ŒνŒŒλ²³ λŒ€λ¬Έμžλ₯Ό 0λΆ€ν„° 9κΉŒμ§€μ˜ 숫자 쀑 ν•˜λ‚˜λ‘œ λ°”κΏ”μ„œ N개의 수λ₯Ό ν•©ν•˜λŠ” λ¬Έμ œμ΄λ‹€. 같은 μ•ŒνŒŒλ²³μ€ 같은 숫자둜 λ°”κΏ”μ•Ό ν•˜λ©°, 두 개 μ΄μƒμ˜ μ•ŒνŒŒλ²³μ΄ 같은 숫자둜 λ°”λ€Œμ–΄μ§€λ©΄ μ•ˆ λœλ‹€. 예λ₯Ό λ“€μ–΄, GCF + ACDEBλ₯Ό κ³„μ‚°ν•œλ‹€κ³  ν•  λ•Œ, A = 9, B = 4, C = 8, D = 6, E = 5, F = 3, G = 7둜 κ²°μ •ν•œλ‹€λ©΄, 두 수의 합은 99437이 λ˜μ–΄μ„œ μ΅œλŒ€κ°€ 될 것이닀. N개의 단어가 μ£Όμ–΄μ‘Œμ„ λ•Œ, κ·Έ 수의 합을 μ΅œλŒ€λ‘œ λ§Œλ“œλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫째 쀄에 λ‹¨μ–΄μ˜ 개수 N(1 ≤ N ≤ 10)이..
[Baekjoon] λ°±μ€€ 9461 'νŒŒλ„λ°˜ μˆ˜μ—΄' λ¬Έμ œν’€μ΄ Python, 파이썬, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 9461 문제 였λ₯Έμͺ½ κ·Έλ¦Όκ³Ό 같이 μ‚Όκ°ν˜•μ΄ λ‚˜μ„  λͺ¨μ–‘μœΌλ‘œ 놓여져 μžˆλ‹€. 첫 μ‚Όκ°ν˜•μ€ μ •μ‚Όκ°ν˜•μœΌλ‘œ λ³€μ˜ κΈΈμ΄λŠ” 1이닀. κ·Έ λ‹€μŒμ—λŠ” λ‹€μŒκ³Ό 같은 κ³Όμ •μœΌλ‘œ μ •μ‚Όκ°ν˜•μ„ 계속 μΆ”κ°€ν•œλ‹€. λ‚˜μ„ μ—μ„œ κ°€μž₯ κΈ΄ λ³€μ˜ 길이λ₯Ό k라 ν–ˆμ„ λ•Œ, κ·Έ 변에 길이가 k인 μ •μ‚Όκ°ν˜•μ„ μΆ”κ°€ν•œλ‹€. νŒŒλ„λ°˜ μˆ˜μ—΄ P(N)은 λ‚˜μ„ μ— μžˆλŠ” μ •μ‚Όκ°ν˜•μ˜ λ³€μ˜ 길이이닀. P(1)λΆ€ν„° P(10)κΉŒμ§€ 첫 10개 μˆ«μžλŠ” 1, 1, 1, 2, 2, 3, 4, 5, 7, 9이닀. N이 μ£Όμ–΄μ‘Œμ„ λ•Œ, P(N)을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫째 쀄에 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€μ˜ 개수 Tκ°€ 주어진닀. 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λŠ” ν•œ μ€„λ‘œ 이루어져 있고, N이 주어진닀. (1 ≤ N ≤ 100) 좜λ ₯ 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ§ˆλ‹€ P(N)을 좜λ ₯ν•œλ‹€. 🧐 풀이 T = int(in..
[Baekjoon] λ°±μ€€ 13164 'ν–‰λ³΅μœ μΉ˜μ›' λ¬Έμ œν’€μ΄ 파이썬, Python, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 13164 문제 행볡 μœ μΉ˜μ› 원μž₯인 νƒœμ–‘μ΄λŠ” μ–΄λŠ λ‚  Nλͺ…μ˜ 원생듀을 ν‚€ μˆœμ„œλŒ€λ‘œ 일렬둜 쀄 μ„Έμš°κ³ , 총 K개의 쑰둜 λ‚˜λˆ„λ €κ³  ν•œλ‹€. 각 μ‘°μ—λŠ” 원생이 적어도 ν•œ λͺ… μžˆμ–΄μ•Ό ν•˜λ©°, 같은 쑰에 μ†ν•œ 원생듀은 μ„œλ‘œ 인접해 μžˆμ–΄μ•Ό ν•œλ‹€. μ‘°λ³„λ‘œ μΈμ›μˆ˜κ°€ 같을 ν•„μš”λŠ” μ—†λ‹€. μ΄λ ‡κ²Œ λ‚˜λ‰˜μ–΄μ§„ 쑰듀은 각자 단체 ν‹°μ…”μΈ λ₯Ό λ§žμΆ”λ €κ³  ν•œλ‹€. μ‘°λ§ˆλ‹€ ν‹°μ…”μΈ λ₯Ό λ§žμΆ”λŠ” λΉ„μš©μ€ μ‘°μ—μ„œ κ°€μž₯ ν‚€κ°€ 큰 원생과 κ°€μž₯ ν‚€κ°€ μž‘μ€ μ›μƒμ˜ ν‚€ 차이만큼 λ“ λ‹€. μ΅œλŒ€ν•œ λΉ„μš©μ„ 아끼고 μ‹Άμ–΄ ν•˜λŠ” νƒœμ–‘μ΄λŠ” K개의 쑰에 λŒ€ν•΄ ν‹°μ…”μΈ  λ§Œλ“œλŠ” λΉ„μš©μ˜ 합을 μ΅œμ†Œλ‘œ ν•˜κ³  μ‹Άμ–΄ν•œλ‹€. νƒœμ–‘μ΄λ₯Ό 도와 μ΅œμ†Œμ˜ λΉ„μš©μ„ κ΅¬ν•˜μž. μž…λ ₯ μž…λ ₯의 첫 μ€„μ—λŠ” μœ μΉ˜μ›μ— μžˆλŠ” μ›μƒμ˜ 수λ₯Ό λ‚˜νƒ€λ‚΄λŠ” μžμ—°μˆ˜ N(1 ≤ N ≤ 300,000)κ³Ό λ‚˜λˆ„λ €κ³  ν•˜λŠ” 쑰의 개수λ₯Ό λ‚˜νƒ€..
[Baekjoon] λ°±μ€€ 13305 'μ£Όμœ μ†Œ' λ¬Έμ œν’€μ΄ 파이썬, Python, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 13305 문제 μ–΄λ–€ λ‚˜λΌμ— N개의 λ„μ‹œκ°€ μžˆλ‹€. 이 λ„μ‹œλ“€μ€ 일직선 λ„λ‘œ μœ„μ— μžˆλ‹€. νŽΈμ˜μƒ 일직선을 μˆ˜ν‰ λ°©ν–₯으둜 λ‘μž. 제일 μ™Όμͺ½μ˜ λ„μ‹œμ—μ„œ 제일 였λ₯Έμͺ½μ˜ λ„μ‹œλ‘œ μžλ™μ°¨λ₯Ό μ΄μš©ν•˜μ—¬ μ΄λ™ν•˜λ €κ³  ν•œλ‹€. μΈμ ‘ν•œ 두 λ„μ‹œ μ‚¬μ΄μ˜ λ„λ‘œλ“€μ€ μ„œλ‘œ 길이가 λ‹€λ₯Ό 수 μžˆλ‹€. λ„λ‘œ 길이의 λ‹¨μœ„λŠ” kmλ₯Ό μ‚¬μš©ν•œλ‹€. 처음 μΆœλ°œν•  λ•Œ μžλ™μ°¨μ—λŠ” 기름이 μ—†μ–΄μ„œ μ£Όμœ μ†Œμ—μ„œ 기름을 λ„£κ³  μΆœλ°œν•˜μ—¬μ•Ό ν•œλ‹€. κΈ°λ¦„ν†΅μ˜ ν¬κΈ°λŠ” λ¬΄μ œν•œμ΄μ–΄μ„œ μ–Όλ§ˆλ“ μ§€ λ§Žμ€ 기름을 넣을 수 μžˆλ‹€. λ„λ‘œλ₯Ό μ΄μš©ν•˜μ—¬ 이동할 λ•Œ 1kmλ§ˆλ‹€ 1λ¦¬ν„°μ˜ 기름을 μ‚¬μš©ν•œλ‹€. 각 λ„μ‹œμ—λŠ” 단 ν•˜λ‚˜μ˜ μ£Όμœ μ†Œκ°€ 있으며, λ„μ‹œ λ§ˆλ‹€ μ£Όμœ μ†Œμ˜ 리터당 가격은 λ‹€λ₯Ό 수 μžˆλ‹€. κ°€κ²©μ˜ λ‹¨μœ„λŠ” 원을 μ‚¬μš©ν•œλ‹€. 예λ₯Ό λ“€μ–΄, 이 λ‚˜λΌμ— λ‹€μŒ 그림처럼 4개의 λ„μ‹œκ°€ μžˆλ‹€κ³  ν•˜μž. 원 μ•ˆ..
[Baekjoon] λ°±μ€€ 2667 '단지 번호 뢙이기' λ¬Έμ œν’€μ΄ 파이썬, Python, μ•Œκ³ λ¦¬μ¦˜ 정리 πŸ“ 2667 문제 κ³Ό 같이 μ •μ‚¬κ°ν˜• λͺ¨μ–‘μ˜ 지도가 μžˆλ‹€. 1은 집이 μžˆλŠ” 곳을, 0은 집이 μ—†λŠ” 곳을 λ‚˜νƒ€λ‚Έλ‹€. μ² μˆ˜λŠ” 이 지도λ₯Ό 가지고 μ—°κ²°λœ μ§‘μ˜ λͺ¨μž„인 단지λ₯Ό μ •μ˜ν•˜κ³ , 단지에 번호λ₯Ό 뢙이렀 ν•œλ‹€. μ—¬κΈ°μ„œ μ—°κ²°λ˜μ—ˆλ‹€λŠ” 것은 μ–΄λ–€ 집이 쒌우, ν˜Ήμ€ μ•„λž˜μœ„λ‘œ λ‹€λ₯Έ 집이 μžˆλŠ” 경우λ₯Ό λ§ν•œλ‹€. λŒ€κ°μ„ μƒμ— 집이 μžˆλŠ” κ²½μš°λŠ” μ—°κ²°λœ 것이 μ•„λ‹ˆλ‹€. λŠ” 을 λ‹¨μ§€λ³„λ‘œ 번호λ₯Ό 뢙인 것이닀. 지도λ₯Ό μž…λ ₯ν•˜μ—¬ λ‹¨μ§€μˆ˜λ₯Ό 좜λ ₯ν•˜κ³ , 각 단지에 μ†ν•˜λŠ” μ§‘μ˜ 수λ₯Ό μ˜€λ¦„μ°¨μˆœμœΌλ‘œ μ •λ ¬ν•˜μ—¬ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫 번째 μ€„μ—λŠ” μ§€λ„μ˜ 크기 N(μ •μ‚¬κ°ν˜•μ΄λ―€λ‘œ κ°€λ‘œμ™€ μ„Έλ‘œμ˜ ν¬κΈ°λŠ” κ°™μœΌλ©° 5≤N≤25)이 μž…λ ₯되고, κ·Έ λ‹€μŒ Nμ€„μ—λŠ” 각각 N개의 자료(0ν˜Ήμ€ 1)κ°€ μž…λ ₯λœλ‹€. 좜λ ₯ 첫 번째 μ€„μ—λŠ” 총 λ‹¨μ§€μˆ˜λ₯Ό 좜λ ₯ν•˜μ‹œμ˜€...

728x90