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

전체 κΈ€

(159)
[BOJ] μŠ€νƒ (#10828) 문제 μ •μˆ˜λ₯Ό μ €μž₯ν•˜λŠ” μŠ€νƒμ„ κ΅¬ν˜„ν•œ λ‹€μŒ, μž…λ ₯으둜 μ£Όμ–΄μ§€λŠ” λͺ…령을 μ²˜λ¦¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. λͺ…령은 총 λ‹€μ„― 가지이닀. push X: μ •μˆ˜ Xλ₯Ό μŠ€νƒμ— λ„£λŠ” 연산이닀. pop: μŠ€νƒμ—μ„œ κ°€μž₯ μœ„μ— μžˆλŠ” μ •μˆ˜λ₯Ό λΉΌκ³ , κ·Έ 수λ₯Ό 좜λ ₯ν•œλ‹€. λ§Œμ•½ μŠ€νƒμ— λ“€μ–΄μžˆλŠ” μ •μˆ˜κ°€ μ—†λŠ” κ²½μš°μ—λŠ” -1을 좜λ ₯ν•œλ‹€. size: μŠ€νƒμ— λ“€μ–΄μžˆλŠ” μ •μˆ˜μ˜ 개수λ₯Ό 좜λ ₯ν•œλ‹€. empty: μŠ€νƒμ΄ λΉ„μ–΄μžˆμœΌλ©΄ 1, μ•„λ‹ˆλ©΄ 0을 좜λ ₯ν•œλ‹€. top: μŠ€νƒμ˜ κ°€μž₯ μœ„μ— μžˆλŠ” μ •μˆ˜λ₯Ό 좜λ ₯ν•œλ‹€. λ§Œμ•½ μŠ€νƒμ— λ“€μ–΄μžˆλŠ” μ •μˆ˜κ°€ μ—†λŠ” κ²½μš°μ—λŠ” -1을 좜λ ₯ν•œλ‹€. μž…λ ₯ 첫째 쀄에 μ£Όμ–΄μ§€λŠ” λͺ…λ Ήμ˜ 수 N (1 ≤ N ≤ 10,000)이 μ£Όμ–΄μ§„λ‹€. λ‘˜μ§Έ 쀄뢀터 N개의 μ€„μ—λŠ” λͺ…령이 ν•˜λ‚˜μ”© μ£Όμ–΄μ§„λ‹€. μ£Όμ–΄μ§€λŠ” μ •μˆ˜λŠ” 1보닀 ν¬κ±°λ‚˜ κ°™κ³ , 100,000보..
[BOJ] 거꾸둜 ꡬꡬ단 (#13410) 문제 일반적인 κ΅¬κ΅¬λ‹¨μ—μ„œ κ°€μž₯ 큰 μˆ˜λŠ” λ§ˆμ§€λ§‰ ν•­μ˜ 값이 제일 크닀. 거꾸둜 κ΅¬κ΅¬λ‹¨μ—μ„œλŠ”, 각 항에 κ΅¬κ΅¬λ‹¨μ˜ 계산 결과둜 λ‚˜μ˜¨ 값을 λ’€μ§‘μ–΄ μ €μž₯을 ν•œλ‹€. μ΄λ ‡κ²Œ ν•˜λ©΄ κ°€μž₯ 큰 값이 항상 λ§ˆμ§€λ§‰μ΄ μ•„λ‹ˆκ²Œ λœλ‹€. 예λ₯Ό λ“€μ–΄ 8λ‹¨μ˜ 9개 ν•­μ˜ 값은 8, 16, 24, 32, 40, 48, 56, 64, 72 이 λ˜μ–΄ 72κ°€ κ°€μž₯ ν¬μ§€λ§Œ, 거꾸둜 κ΅¬κ΅¬λ‹¨μ—μ„œλŠ” 8, 61, 42, 23, 4, 84, 65, 46, 27 κ°€ λ˜μ–΄ 84κ°€ κ°€μž₯ 큰 값을 κ°€μ§€κ²Œ λœλ‹€. λ‹¨μ˜ 수 Nκ³Ό ν•­μ˜ 수 Kκ°€ μ£Όμ–΄μ§ˆ λ•Œ, 거꾸둜 κ΅¬κ΅¬λ‹¨μ˜ κ°€μž₯ 큰 값을 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫째 쀄에 Nκ³Ό Kκ°€ μ£Όμ–΄μ§„λ‹€. 두 μˆ˜λŠ” λͺ¨λ‘ 1,000보닀 μž‘κ±°λ‚˜ 같은 μžμ—°μˆ˜μ΄λ‹€. 좜λ ₯ 첫째 쀄에 μ£Όμ–΄μ§„ 단과 ν•­μ—μ„œ λ‚˜μ˜¬ 수 μžˆλŠ” κ°€μž₯ 큰 ..
[Programmers] 카펫 문제 LeoλŠ” μΉ΄νŽ«μ„ μ‚¬λŸ¬ κ°”λ‹€κ°€ μ•„λž˜ κ·Έλ¦Όκ³Ό 같이 μ€‘μ•™μ—λŠ” λ…Έλž€μƒ‰μœΌλ‘œ μΉ ν•΄μ Έ 있고 ν…Œλ‘λ¦¬ 1쀄은 κ°ˆμƒ‰μœΌλ‘œ μΉ ν•΄μ Έ μžˆλŠ” 격자 λͺ¨μ–‘ μΉ΄νŽ«μ„ λ΄€μŠ΅λ‹ˆλ‹€. LeoλŠ” μ§‘μœΌλ‘œ λŒμ•„μ™€μ„œ μ•„κΉŒ λ³Έ 카펫의 λ…Έλž€μƒ‰κ³Ό κ°ˆμƒ‰μœΌλ‘œ μƒ‰μΉ λœ 격자의 κ°œμˆ˜λŠ” κΈ°μ–΅ν–ˆμ§€λ§Œ, 전체 카펫의 ν¬κΈ°λŠ” κΈ°μ–΅ν•˜μ§€ λͺ»ν–ˆμŠ΅λ‹ˆλ‹€. Leoκ°€ λ³Έ μΉ΄νŽ«μ—μ„œ κ°ˆμƒ‰ 격자의 수 brown, λ…Έλž€μƒ‰ 격자의 수 yellowκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§ˆ λ•Œ 카펫의 κ°€λ‘œ, μ„Έλ‘œ 크기λ₯Ό μˆœμ„œλŒ€λ‘œ 배열에 λ‹΄μ•„ return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μž‘μ„±ν•΄μ£Όμ„Έμš”. μ œν•œ 사항 κ°ˆμƒ‰ 격자의 수 brown은 8 이상 5,000 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€. λ…Έλž€μƒ‰ 격자의 수 yellowλŠ” 1 이상 2,000,000 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€. 카펫의 κ°€λ‘œ κΈΈμ΄λŠ” μ„Έλ‘œ 길이와 κ°™κ±°λ‚˜, μ„Έλ‘œ 길이보닀 κΉλ‹ˆ..
[BOJ] λΈ”λž™μž­ (#2798) 문제 μΉ΄μ§€λ…Έμ—μ„œ 제일 인기 μžˆλŠ” κ²Œμž„ λΈ”λž™μž­μ˜ κ·œμΉ™μ€ μƒλ‹Ήνžˆ 쉽닀. μΉ΄λ“œμ˜ 합이 21을 λ„˜μ§€ μ•ŠλŠ” ν•œλ„ λ‚΄μ—μ„œ, μΉ΄λ“œμ˜ 합을 μ΅œλŒ€ν•œ 크게 λ§Œλ“œλŠ” κ²Œμž„μ΄λ‹€. λΈ”λž™μž­μ€ μΉ΄μ§€λ…Έλ§ˆλ‹€ λ‹€μ–‘ν•œ κ·œμ •μ΄ μžˆλ‹€. ν•œκ΅­ 졜고의 λΈ”λž™μž­ 고수 김정인은 μƒˆλ‘œμš΄ λΈ”λž™μž­ κ·œμΉ™μ„ λ§Œλ“€μ–΄ 상근, μ°½μ˜μ΄μ™€ κ²Œμž„ν•˜λ €κ³  ν•œλ‹€. 김정인 λ²„μ „μ˜ λΈ”λž™μž­μ—μ„œ 각 μΉ΄λ“œμ—λŠ” μ–‘μ˜ μ •μˆ˜κ°€ μ“°μ—¬ μžˆλ‹€. κ·Έ λ‹€μŒ, λ”œλŸ¬λŠ” Nμž₯의 μΉ΄λ“œλ₯Ό λͺ¨λ‘ μˆ«μžκ°€ 보이도둝 λ°”λ‹₯에 λ†“λŠ”λ‹€. 그런 후에 λ”œλŸ¬λŠ” 숫자 M을 크게 μ™ΈμΉœλ‹€. 이제 ν”Œλ ˆμ΄μ–΄λŠ” μ œν•œλœ μ‹œκ°„ μ•ˆμ— Nμž₯의 μΉ΄λ“œ μ€‘μ—μ„œ 3μž₯의 μΉ΄λ“œλ₯Ό 골라야 ν•œλ‹€. λΈ”λž™μž­ λ³€ν˜• κ²Œμž„μ΄κΈ° λ•Œλ¬Έμ—, ν”Œλ ˆμ΄μ–΄κ°€ κ³ λ₯Έ μΉ΄λ“œμ˜ 합은 M을 λ„˜μ§€ μ•ŠμœΌλ©΄μ„œ Mκ³Ό μ΅œλŒ€ν•œ κ°€κΉκ²Œ λ§Œλ“€μ–΄μ•Ό ν•œλ‹€. Nμž₯의 μΉ΄λ“œμ— 써져 μžˆλŠ” μˆ«μžκ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, ..
[BOJ] λ¬Έμžμ—΄ 폭발 (#9935) 문제 μƒκ·Όμ΄λŠ” λ¬Έμžμ—΄μ— 폭발 λ¬Έμžμ—΄μ„ 심어 λ†“μ•˜λ‹€. 폭발 λ¬Έμžμ—΄μ΄ ν­λ°œν•˜λ©΄ κ·Έ λ¬ΈμžλŠ” λ¬Έμžμ—΄μ—μ„œ 사라지며, 남은 λ¬Έμžμ—΄μ€ ν•©μ³μ§€κ²Œ λœλ‹€. ν­λ°œμ€ λ‹€μŒκ³Ό 같은 κ³Όμ •μœΌλ‘œ μ§„ν–‰λœλ‹€. λ¬Έμžμ—΄μ΄ 폭발 λ¬Έμžμ—΄μ„ ν¬ν•¨ν•˜κ³  μžˆλŠ” κ²½μš°μ—, λͺ¨λ“  폭발 λ¬Έμžμ—΄μ΄ ν­λ°œν•˜κ²Œ λœλ‹€. 남은 λ¬Έμžμ—΄μ„ μˆœμ„œλŒ€λ‘œ 이어 λΆ™μ—¬ μƒˆλ‘œμš΄ λ¬Έμžμ—΄μ„ λ§Œλ“ λ‹€. μƒˆλ‘œ 생긴 λ¬Έμžμ—΄μ— 폭발 λ¬Έμžμ—΄μ΄ ν¬ν•¨λ˜μ–΄ μžˆμ„ μˆ˜λ„ μžˆλ‹€. ν­λ°œμ€ 폭발 λ¬Έμžμ—΄μ΄ λ¬Έμžμ—΄μ— 없을 λ•ŒκΉŒμ§€ κ³„μ†λœλ‹€. μƒκ·Όμ΄λŠ” λͺ¨λ“  폭발이 λλ‚œ 후에 μ–΄λ–€ λ¬Έμžμ—΄μ΄ λ‚¨λŠ”μ§€ ꡬ해보렀고 ν•œλ‹€. λ‚¨μ•„μžˆλŠ” λ¬Έμžκ°€ μ—†λŠ” κ²½μš°κ°€ μžˆλ‹€. μ΄λ•ŒλŠ” "FRULA"λ₯Ό 좜λ ₯ν•œλ‹€. 폭발 λ¬Έμžμ—΄μ€ 같은 문자λ₯Ό 두 개 이상 ν¬ν•¨ν•˜μ§€ μ•ŠλŠ”λ‹€. μž…λ ₯ 첫째 쀄에 λ¬Έμžμ—΄μ΄ μ£Όμ–΄μ§„λ‹€. λ¬Έμžμ—΄μ˜ κΈΈμ΄λŠ” 1보닀 ν¬κ±°λ‚˜ κ°™κ³ , 1,00..
[BOJ] 톡계학 (#2108) 문제 수λ₯Ό μ²˜λ¦¬ν•˜λŠ” 것은 ν†΅κ³„ν•™μ—μ„œ μƒλ‹Ήνžˆ μ€‘μš”ν•œ 일이닀. ν†΅κ³„ν•™μ—μ„œ N개의 수λ₯Ό λŒ€ν‘œν•˜λŠ” κΈ°λ³Έ ν†΅κ³„κ°’μ—λŠ” λ‹€μŒκ³Ό 같은 것듀이 μžˆλ‹€. 단, N은 ν™€μˆ˜λΌκ³  κ°€μ •ν•˜μž. μ‚°μˆ ν‰κ·  : N개의 μˆ˜λ“€μ˜ 합을 N으둜 λ‚˜λˆˆ κ°’ 쀑앙값 : N개의 μˆ˜λ“€μ„ μ¦κ°€ν•˜λŠ” μˆœμ„œλ‘œ λ‚˜μ—΄ν–ˆμ„ 경우 κ·Έ 쀑앙에 μœ„μΉ˜ν•˜λŠ” κ°’ μ΅œλΉˆκ°’ : N개의 μˆ˜λ“€ 쀑 κ°€μž₯ 많이 λ‚˜νƒ€λ‚˜λŠ” κ°’ λ²”μœ„ : N개의 μˆ˜λ“€ 쀑 μ΅œλŒ“κ°’κ³Ό μ΅œμ†Ÿκ°’μ˜ 차이 N개의 μˆ˜κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, λ„€ κ°€μ§€ κΈ°λ³Έ 톡계값을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫째 쀄에 수의 개수 N(1 ≤ N ≤ 500,000)이 μ£Όμ–΄μ§„λ‹€. 단, N은 ν™€μˆ˜μ΄λ‹€. κ·Έ λ‹€μŒ N개의 μ€„μ—λŠ” μ •μˆ˜λ“€μ΄ μ£Όμ–΄μ§„λ‹€. μž…λ ₯λ˜λŠ” μ •μˆ˜μ˜ μ ˆλŒ“κ°’μ€ 4,000을 λ„˜μ§€ μ•ŠλŠ”λ‹€. 좜λ ₯ 첫째 μ€„μ—λŠ” μ‚°μˆ ν‰κ· μ„ 좜λ ₯ν•œλ‹€. μ†Œμˆ˜μ  μ΄ν•˜ ..
[BOJ] ν•™μƒλ²ˆν˜Έ (#1235) 문제 μ΄λ²ˆμ—λŠ” 학생듀을 λ”μš± 효율적으둜 κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ ν•™μƒλ§ˆλ‹€ κ³ μœ ν•œ 학생 번호λ₯Ό λΆ€μ—¬ν•˜κΈ°λ‘œ ν•˜μ˜€λ‹€. 학생 λ²ˆν˜ΈλŠ” 0λΆ€ν„° 9 μ‚¬μ΄μ˜ 숫자둜 이루어진 λ¬Έμžμ—΄λ‘œ, λͺ¨λ“  ν•™μƒλ“€μ˜ 학생 λ²ˆν˜ΈλŠ” μ„œλ‘œ λ‹€λ₯΄μ§€λ§Œ κ·Έ κΈΈμ΄λŠ” λͺ¨λ‘ κ°™λ‹€. ν•™μƒλ“€μ˜ 번호λ₯Ό λΆ€μ—¬ν•΄ 놓고 λ³΄λ‹ˆ, κΉ€μ§„μ˜ μ‘°κ΅λŠ” μ–΄μ©Œλ©΄ λ²ˆν˜Έκ°€ μ§€λ‚˜μΉ˜κ²Œ κΈ΄ 것은 μ•„λ‹Œκ°€ 싢은 생각이 λ“€μ—ˆλ‹€. 예λ₯Ό λ“€μ–΄ μ•„λž˜μ™€ 같은 7자리의 학생 번호λ₯Ό 보자. μ΄λ¦„λ²ˆν˜Έ μ˜€λ―Όμ‹ 1212345 κΉ€ν˜•νƒ 1212356 μ΄λ™ν˜Έ 0033445 이처럼 학생 번호λ₯Ό ꡳ이 7자리둜 ν•˜μ§€ μ•Šκ³ , λ’€μ—μ„œ μ„Έ μžλ¦¬λ§Œμ„ μΆ”λ €μ„œ 남겨 놓아도 λͺ¨λ“  ν•™μƒλ“€μ˜ 학생 번호λ₯Ό μ„œλ‘œ λ‹€λ₯΄κ²Œ λ§Œλ“€ 수 μžˆλ‹€. μ΄λ¦„λ²ˆν˜Έ μ˜€λ―Όμ‹ 345 κΉ€ν˜•νƒ 356 μ΄λ™ν˜Έ 445 ν•˜μ§€λ§Œ μ„Έ μžλ¦¬λ³΄λ‹€ 적게 남겨 λ†“μ•„μ„œλŠ” λͺ¨λ“  ν•™μƒλ“€μ˜ 학생 ..
[Programmeres] μ •μˆ˜ λ‚΄λ¦Όμ°¨μˆœμœΌλ‘œ λ°°μΉ˜ν•˜κΈ° 문제 ν•¨μˆ˜ solution은 μ •μˆ˜ n을 λ§€κ°œλ³€μˆ˜λ‘œ μž…λ ₯λ°›μŠ΅λ‹ˆλ‹€. n의 각 자릿수λ₯Ό 큰것뢀터 μž‘μ€ 순으둜 μ •λ ¬ν•œ μƒˆλ‘œμš΄ μ •μˆ˜λ₯Ό λ¦¬ν„΄ν•΄μ£Όμ„Έμš”. 예λ₯Όλ“€μ–΄ n이 118372λ©΄ 873211을 λ¦¬ν„΄ν•˜λ©΄ λ©λ‹ˆλ‹€. μ œν•œμ‚¬ν•­ n은 1이상 8000000000 μ΄ν•˜μΈ μžμ—°μˆ˜μž…λ‹ˆλ‹€. ν•΄μ„€ μ½”λ“œ def solution(n): n = int(n) temp = map(str,str(n)) return int(''.join(sorted(temp, reverse=True))) 뢄석 > map ν•¨μˆ˜λ₯Ό μ΄μš©ν•˜λ©΄ μš°λ¦¬λŠ” μš”μ†Œμ— μ μš©ν•  ν•¨μˆ˜ ν•˜λ‚˜λ§Œ λ”± λ„˜κ²¨μ€€λ‹€λ©΄ μ•Œμ•„μ„œ, μžλ™μ μœΌλ‘œ 리슀트λ₯Ό ν•¨μˆ˜μ— μ μš©ν•΄μ„œ map 객체λ₯Ό λ°˜ν™˜ν•΄ μ€€λ‹€. κ·ΈλŸ¬κΈ°μ— μž…λ ₯받은 μ •μˆ˜ n을 str ν˜•νƒœλ‘œ map ν•¨μˆ˜λ₯Ό μ μš©ν•΄μ£Όλ©΄ str ν˜•νƒœμ˜ λ¦¬μŠ€νŠΈκ°€ λ§Œλ“€μ–΄μ§„λ‹€. 그리..