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

μ•Œκ³ λ¦¬μ¦˜85

[Java] BOJ 1764 λ“£λ³΄μž‘ 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/1764κΉ€μ§„μ˜μ΄ 듣도 λͺ»ν•œ μ‚¬λžŒμ˜ λͺ…단과, 보도 λͺ»ν•œ μ‚¬λžŒμ˜ λͺ…단이 μ£Όμ–΄μ§ˆ λ•Œ, 듣도 보도 λͺ»ν•œ μ‚¬λžŒμ˜ λͺ…단을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.첫째 쀄에 듣도 λͺ»ν•œ μ‚¬λžŒμ˜ 수 N, 보도 λͺ»ν•œ μ‚¬λžŒμ˜ 수 M이 주어진닀.μ΄μ–΄μ„œ λ‘˜μ§Έ 쀄뢀터 N개의 쀄에 걸쳐 듣도 λͺ»ν•œ μ‚¬λžŒμ˜ 이름과, N+2μ§Έ 쀄뢀터 보도 λͺ»ν•œ μ‚¬λžŒμ˜ 이름이 μˆœμ„œλŒ€λ‘œ 주어진닀. 이름은 띄어쓰기 없이 μ•ŒνŒŒλ²³ μ†Œλ¬Έμžλ‘œλ§Œ 이루어지며, κ·Έ κΈΈμ΄λŠ” 20 μ΄ν•˜μ΄λ‹€. N, M은 500,000 μ΄ν•˜μ˜ μžμ—°μˆ˜μ΄λ‹€.듣도 λͺ»ν•œ μ‚¬λžŒμ˜ λͺ…λ‹¨μ—λŠ” μ€‘λ³΅λ˜λŠ” 이름이 μ—†μœΌλ©°, 보도 λͺ»ν•œ μ‚¬λžŒμ˜ λͺ…단도 λ§ˆμ°¬κ°€μ§€μ΄λ‹€.λ“£λ³΄μž‘μ˜ μˆ˜μ™€ κ·Έ λͺ…단을 μ‚¬μ „μˆœμœΌλ‘œ 좜λ ₯ν•œλ‹€.아이디어듣도 λͺ»ν•œ μ‚¬λžŒμ΄λ¦„μ„ hashmap에 .. 2024. 7. 23.
[Java] BOJ 1874 μŠ€νƒ μˆ˜μ—΄ 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/1874μŠ€νƒμ€ 자료λ₯Ό λ„£λŠ” (push) μž…κ΅¬μ™€ 자료λ₯Ό λ½‘λŠ” (pop) μž…κ΅¬κ°€ κ°™μ•„ 제일 λ‚˜μ€‘μ— λ“€μ–΄κ°„ μžλ£Œκ°€ 제일 λ¨Όμ € λ‚˜μ˜€λŠ” (LIFO, Last in First out) νŠΉμ„±μ„ 가지고 μžˆλ‹€.1λΆ€ν„° nκΉŒμ§€μ˜ 수λ₯Ό μŠ€νƒμ— λ„£μ—ˆλ‹€κ°€ 뽑아 λŠ˜μ–΄λ†“μŒμœΌλ‘œμ¨, ν•˜λ‚˜μ˜ μˆ˜μ—΄μ„ λ§Œλ“€ 수 μžˆλ‹€.μ΄λ•Œ, μŠ€νƒμ— pushν•˜λŠ” μˆœμ„œλŠ” λ°˜λ“œμ‹œ μ˜€λ¦„μ°¨μˆœμ„ 지킀도둝 ν•œλ‹€κ³  ν•˜μž.μž„μ˜μ˜ μˆ˜μ—΄μ΄ μ£Όμ–΄μ‘Œμ„ λ•Œ μŠ€νƒμ„ μ΄μš©ν•΄ κ·Έ μˆ˜μ—΄μ„ λ§Œλ“€ 수 μžˆλŠ”μ§€ μ—†λŠ”μ§€, μžˆλ‹€λ©΄ μ–΄λ–€ μˆœμ„œλ‘œ push와 pop 연산을 μˆ˜ν–‰ν•΄μ•Ό ν•˜λŠ”μ§€λ₯Ό μ•Œμ•„λ‚Ό 수 μžˆλ‹€. 이λ₯Ό κ³„μ‚°ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λΌ.첫 쀄에 n (1 ≤ n ≤ 100,000)이 주어진닀. λ‘˜μ§Έ 쀄뢀터 n개의 μ€„μ—λŠ” μˆ˜μ—΄μ„ 이.. 2024. 7. 23.
[Java] BOJ 1654 λžœμ„  자λ₯΄κΈ° 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/1654μ˜€μ˜μ‹μ€ 자체적으둜 K개의 λžœμ„ μ„ 가지고 μžˆλ‹€. κ·ΈλŸ¬λ‚˜ K개의 λžœμ„ μ€ 길이가 μ œκ°κ°μ΄λ‹€. 박성원은 λžœμ„ μ„ λͺ¨λ‘ N개의 같은 길이의 λžœμ„ μœΌλ‘œ λ§Œλ“€κ³  μ‹Άμ—ˆκΈ° λ•Œλ¬Έμ— K개의 λžœμ„ μ„ μž˜λΌμ„œ λ§Œλ“€μ–΄μ•Ό ν•œλ‹€. 예λ₯Ό λ“€μ–΄ 300cm 짜리 λžœμ„ μ—μ„œ 140cm 짜리 λžœμ„ μ„ 두 개 μž˜λΌλ‚΄λ©΄ 20cmλŠ” 버렀야 ν•œλ‹€. (이미 자λ₯Έ λžœμ„ μ€ 뢙일 수 μ—†λ‹€.) 편의λ₯Ό μœ„ν•΄ λžœμ„ μ„ 자λ₯΄κ±°λ‚˜ λ§Œλ“€ λ•Œ μ†μ‹€λ˜λŠ” κΈΈμ΄λŠ” μ—†λ‹€κ³  κ°€μ •ν•˜λ©°, 기쑴의 K개의 λžœμ„ μœΌλ‘œ N개의 λžœμ„ μ„ λ§Œλ“€ 수 μ—†λŠ” κ²½μš°λŠ” μ—†λ‹€κ³  κ°€μ •ν•˜μž. 그리고 자λ₯Ό λ•ŒλŠ” 항상 μ„Όν‹°λ―Έν„° λ‹¨μœ„λ‘œ μ •μˆ˜κΈΈμ΄λ§ŒνΌ 자λ₯Έλ‹€κ³  κ°€μ •ν•˜μž. Nκ°œλ³΄λ‹€ 많이 λ§Œλ“œλŠ” 것도 N개λ₯Ό λ§Œλ“œλŠ” 것에 ν¬ν•¨λœλ‹€. μ΄λ•Œ λ§Œλ“€ 수 μžˆλŠ”.. 2024. 7. 22.
[Java] BOJ 2108 톡계학 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/2108ν†΅κ³„ν•™μ—μ„œ N개의 수λ₯Ό λŒ€ν‘œν•˜λŠ” κΈ°λ³Έ ν†΅κ³„κ°’μ—λŠ” λ‹€μŒκ³Ό 같은 것듀이 μžˆλ‹€. 단, N은 ν™€μˆ˜λΌκ³  κ°€μ •ν•˜μž.μ‚°μˆ ν‰κ·  : N개의 μˆ˜λ“€μ˜ 합을 N으둜 λ‚˜λˆˆ 값쀑앙값 : N개의 μˆ˜λ“€μ„ μ¦κ°€ν•˜λŠ” μˆœμ„œλ‘œ λ‚˜μ—΄ν–ˆμ„ 경우 κ·Έ 쀑앙에 μœ„μΉ˜ν•˜λŠ” κ°’μ΅œλΉˆκ°’ : N개의 μˆ˜λ“€ 쀑 κ°€μž₯ 많이 λ‚˜νƒ€λ‚˜λŠ” κ°’λ²”μœ„ : N개의 μˆ˜λ“€ 쀑 μ΅œλŒ“κ°’κ³Ό μ΅œμ†Ÿκ°’μ˜ 차이N개의 μˆ˜κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, λ„€ 가지 κΈ°λ³Έ 톡계값을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.첫째 쀄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진닀. 단, N은 ν™€μˆ˜μ΄λ‹€. κ·Έ λ‹€μŒ N개의 μ€„μ—λŠ” μ •μˆ˜λ“€μ΄ 주어진닀. μž…λ ₯λ˜λŠ” μ •μˆ˜μ˜ μ ˆλŒ“κ°’μ€ 4,000을 λ„˜μ§€ μ•ŠλŠ”λ‹€.첫째 μ€„μ—λŠ” μ‚°μˆ ν‰κ· μ„ 좜λ ₯ν•œλ‹€. μ†Œμˆ˜μ  μ΄ν•˜ 첫.. 2024. 7. 22.
[Java] BOJ 1966 ν”„λ¦°ν„° 큐 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/1966μƒˆλ‘œμš΄ ν”„λ¦°ν„°κΈ° λ‚΄λΆ€ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό κ°œλ°œν•˜μ˜€λŠ”λ°, 이 ν”„λ¦°ν„°κΈ°λŠ” λ‹€μŒκ³Ό 같은 쑰건에 따라 인쇄λ₯Ό ν•˜κ²Œ λœλ‹€.ν˜„μž¬ Queue의 κ°€μž₯ μ•žμ— μžˆλŠ” λ¬Έμ„œμ˜ ‘μ€‘μš”λ„’λ₯Ό ν™•μΈν•œλ‹€.λ‚˜λ¨Έμ§€ λ¬Έμ„œλ“€ 쀑 ν˜„μž¬ λ¬Έμ„œλ³΄λ‹€ μ€‘μš”λ„κ°€ 높은 λ¬Έμ„œκ°€ ν•˜λ‚˜λΌλ„ μžˆλ‹€λ©΄, 이 λ¬Έμ„œλ₯Ό μΈμ‡„ν•˜μ§€ μ•Šκ³  Queue의 κ°€μž₯ 뒀에 재배치 ν•œλ‹€. 그렇지 μ•Šλ‹€λ©΄ λ°”λ‘œ 인쇄λ₯Ό ν•œλ‹€.예λ₯Ό λ“€μ–΄ Queue에 4개의 λ¬Έμ„œ(A B C D)κ°€ 있고, μ€‘μš”λ„κ°€ 2 1 4 3 라면 Cλ₯Ό μΈμ‡„ν•˜κ³ , λ‹€μŒμœΌλ‘œ Dλ₯Ό μΈμ‡„ν•˜κ³  A, Bλ₯Ό μΈμ‡„ν•˜κ²Œ λœλ‹€.μ—¬λŸ¬λΆ„μ΄ ν•  일은, ν˜„μž¬ Queue에 μžˆλŠ” λ¬Έμ„œμ˜ μˆ˜μ™€ μ€‘μš”λ„κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, μ–΄λ–€ ν•œ λ¬Έμ„œκ°€ λͺ‡ 번째둜 μΈμ‡„λ˜λŠ”μ§€ μ•Œμ•„λ‚΄λŠ” 것이닀. 예λ₯Ό λ“€μ–΄.. 2024. 7. 21.
[Java] BOJ 1929 μ†Œμˆ˜ κ΅¬ν•˜κΈ° 문제 λ¬Έμ œ 링크 https://www.acmicpc.net/problem/1929M이상 Nμ΄ν•˜μ˜ μ†Œμˆ˜λ₯Ό λͺ¨λ‘ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.첫째 쀄에 μžμ—°μˆ˜ Mκ³Ό N이 빈 칸을 사이에 두고 주어진닀. (1 ≤ M ≤ N ≤ 1,000,000) M이상 Nμ΄ν•˜μ˜ μ†Œμˆ˜κ°€ ν•˜λ‚˜ 이상 μžˆλŠ” μž…λ ₯만 주어진닀.ν•œ 쀄에 ν•˜λ‚˜μ”©, μ¦κ°€ν•˜λŠ” μˆœμ„œλŒ€λ‘œ μ†Œμˆ˜λ₯Ό 좜λ ₯ν•œλ‹€.μ•„μ΄λ””μ–΄μ—λΌν† μŠ€ν…Œλ„€μŠ€μ˜ 체λ₯Ό ν™œμš©ν•˜μ—¬ μž…λ ₯받은 NκΉŒμ§€ μ†Œμˆ˜λ₯Ό boolean 배열을 톡해 κ΅¬ν–ˆλ‹€.κ²ͺ은 μ‹œν–‰μ°©μ˜€Xμ½”λ“œimport java.io.*;import java.util.*;public class BOJ1929 { public static void main(String[] args) throws Exception{ BufferedReade.. 2024. 7. 21.