β˜•Java

문제 링크 μ„±λŠ₯ μš”μ•½ λ©”λͺ¨λ¦¬: 17404 KB, μ‹œκ°„: 204 ms λΆ„λ₯˜ κ·Έλž˜ν”„ 이둠, κ·Έλž˜ν”„ 탐색, λ„ˆλΉ„ μš°μ„  탐색, 깊이 μš°μ„  탐색 제좜 일자 2024λ…„ 4μ›” 7일 20:09:55 문제 μ„€λͺ… μ •μ‚¬κ°ν˜•μœΌλ‘œ 이루어져 μžˆλŠ” 섬과 λ°”λ‹€ 지도가 μ£Όμ–΄μ§„λ‹€. μ„¬μ˜ 개수λ₯Ό μ„ΈλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. ν•œ μ •μ‚¬κ°ν˜•κ³Ό κ°€λ‘œ, μ„Έλ‘œ λ˜λŠ” λŒ€κ°μ„ μœΌλ‘œ μ—°κ²°λ˜μ–΄ μžˆλŠ” μ‚¬κ°ν˜•μ€ κ±Έμ–΄κ°ˆ 수 μžˆλŠ” μ‚¬κ°ν˜•μ΄λ‹€. 두 μ •μ‚¬κ°ν˜•μ΄ 같은 섬에 있으렀면, ν•œ μ •μ‚¬κ°ν˜•μ—μ„œ λ‹€λ₯Έ μ •μ‚¬κ°ν˜•μœΌλ‘œ κ±Έμ–΄μ„œ 갈 수 μžˆλŠ” κ²½λ‘œκ°€ μžˆμ–΄μ•Ό ν•œλ‹€. μ§€λ„λŠ” λ°”λ‹€λ‘œ λ‘˜λŸ¬μ‹Έμ—¬ 있으며, 지도 λ°–μœΌλ‘œ λ‚˜κ°ˆ 수 μ—†λ‹€. μž…λ ₯ μž…λ ₯은 μ—¬λŸ¬ 개의 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€λ‘œ 이루어져 μžˆλ‹€. 각 ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€μ˜ 첫째 μ€„μ—λŠ” μ§€λ„μ˜ λ„ˆλΉ„ w와 높이 hκ°€ μ£Όμ–΄μ§„λ‹€. w와 hλŠ” 50보닀 μž‘κ±°λ‚˜ ..
문제 링크 μ„±λŠ₯ μš”μ•½ λ©”λͺ¨λ¦¬: 17512 KB, μ‹œκ°„: 204 ms λΆ„λ₯˜ 브루트포슀 μ•Œκ³ λ¦¬μ¦˜, μ •λ ¬ 제좜 일자 2024λ…„ 3μ›” 29일 00:42:11 문제 μ„€λͺ… μ™•λΉ„λ₯Ό ν”Όν•΄ 일곱 λ‚œμŸμ΄λ“€κ³Ό ν•¨κ»˜ ν‰ν™”λ‘­κ²Œ μƒν™œν•˜κ³  있던 λ°±μ„€κ³΅μ£Όμ—κ²Œ μœ„κΈ°κ°€ μ°Ύμ•„μ™”λ‹€. 일과λ₯Ό 마치고 λŒμ•„μ˜¨ λ‚œμŸμ΄κ°€ 일곱 λͺ…이 μ•„λ‹Œ 아홉 λͺ…μ΄μ—ˆλ˜ 것이닀. 아홉 λͺ…μ˜ λ‚œμŸμ΄λŠ” λͺ¨λ‘ μžμ‹ μ΄ "λ°±μ„€ 곡주와 일곱 λ‚œμŸμ΄"의 주인곡이라고 μ£Όμž₯ν–ˆλ‹€. λ›°μ–΄λ‚œ μˆ˜ν•™μ  직관λ ₯을 κ°€μ§€κ³  있던 λ°±μ„€κ³΅μ£ΌλŠ”, λ‹€ν–‰μŠ€λŸ½κ²Œλ„ 일곱 λ‚œμŸμ΄μ˜ ν‚€μ˜ 합이 100이 됨을 κΈ°μ–΅ν•΄ λƒˆλ‹€. 아홉 λ‚œμŸμ΄μ˜ ν‚€κ°€ μ£Όμ–΄μ‘Œμ„ λ•Œ, 백섀곡주λ₯Ό 도와 일곱 λ‚œμŸμ΄λ₯Ό μ°ΎλŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 아홉 개의 쀄에 걸쳐 λ‚œμŸμ΄λ“€μ˜ ν‚€κ°€ μ£Όμ–΄μ§„λ‹€. μ£Όμ–΄μ§€λŠ” ν‚€λŠ” 100을 λ„˜μ§€ μ•ŠλŠ” μžμ—°μˆ˜μ΄λ©°, ..
# [Silver V] μˆ˜λ“€μ˜ ν•© 5 - 2018 μ„±λŠ₯ μš”μ•½ λ©”λͺ¨λ¦¬: 14224 KB, μ‹œκ°„: 204 ms λΆ„λ₯˜ μˆ˜ν•™, 투 포인터 문제 μ„€λͺ… μ–΄λ– ν•œ μžμ—°μˆ˜ N은, λͺ‡ 개의 μ—°μ†λœ μžμ—°μˆ˜μ˜ ν•©μœΌλ‘œ λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€. 당신은 μ–΄λ–€ μžμ—°μˆ˜ N(1 ≤ N ≤ 10,000,000)에 λŒ€ν•΄μ„œ, 이 N을 λͺ‡ 개의 μ—°μ†λœ μžμ—°μˆ˜μ˜ ν•©μœΌλ‘œ λ‚˜νƒ€λ‚΄λŠ” κ°€μ§€μˆ˜λ₯Ό μ•Œκ³  μ‹Άμ–΄ν•œλ‹€. μ΄λ•Œ, μ‚¬μš©ν•˜λŠ” μžμ—°μˆ˜λŠ” Nμ΄ν•˜μ—¬μ•Ό ν•œλ‹€. 예λ₯Ό λ“€μ–΄, 15λ₯Ό λ‚˜νƒ€λ‚΄λŠ” 방법은 15, 7+8, 4+5+6, 1+2+3+4+5의 4κ°€μ§€κ°€ μžˆλ‹€. λ°˜λ©΄μ— 10을 λ‚˜νƒ€λ‚΄λŠ” 방법은 10, 1+2+3+4의 2κ°€μ§€κ°€ μžˆλ‹€. N을 μž…λ ₯λ°›μ•„ κ°€μ§€μˆ˜λ₯Ό 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€. μž…λ ₯ 첫 쀄에 μ •μˆ˜ N이 μ£Όμ–΄μ§„λ‹€. 좜λ ₯ μž…λ ₯된 μžμ—°μˆ˜ N을 λͺ‡ 개의 μ—°μ†λœ μžμ—°μˆ˜μ˜ ..
λ¬Έμžμ—΄ 반볡 좜λ ₯ (.repeat() λ©”μ„œλ“œ) 문제 μ„€λͺ… λ¬Έμžμ—΄ strκ³Ό μ •μˆ˜ n이 μ£Όμ–΄μ§‘λ‹ˆλ‹€. str이 n번 반볡된 λ¬Έμžμ—΄μ„ λ§Œλ“€μ–΄ 좜λ ₯ν•˜λŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•΄ λ³΄μ„Έμš”. μž…μΆœλ ₯ 예 μž…λ ₯ #1 string 5 좜λ ₯ #1 stringstringstringstringstring forλ¬Έ μ½”λ“œ public static void main(String[] args) { Scanner sc = new Scanner(System.in); String str = sc.next(); int n = sc.nextInt(); StringBuilder sb = new StringBuilder(); for(int i=0; i
5.1 데이터 νƒ€μž… λΆ„λ₯˜ μ°Έμ‘°νƒ€μž… 객체의 λ²ˆμ§€λ₯Ό μ°Έμ‘°ν•˜λŠ” νƒ€μž… λ°°μ—΄, μ—΄κ±°, 클래슀, μΈν„°νŽ˜μ΄μŠ€ νƒ€μž… κΈ°λ³Έ νƒ€μž…μœΌλ‘œ μ„ μ–Έλœ λ³€μˆ˜λŠ” κ°’ 자체λ₯Ό μ €μž₯ μ°Έμ‘°νƒ€μž…μœΌλ‘œ μ„ μ–Έλœ λ³€μˆ˜λŠ” 객체가 μƒμ„±λœ λ©”λͺ¨λ¦¬ λ²ˆμ§€λ₯Ό μ €μž₯ 5.2 λ©”λͺ¨λ¦¬ μ‚¬μš© μ˜μ—­ λ©”μ†Œλ“œ. νž™ μŠ€νƒ μ˜μ—­ JVM은 μš΄μ˜μ²΄μ œμ—μ„œ 할당받은 λ©”λͺ¨λ¦¬ μ˜μ—­μ„ λ©”μ†Œλ“œ μ˜μ—­, νž™ μ—­μ—­, μŠ€νƒ μ˜μ—­μœΌλ‘œ κ΅¬λΆ„ν•΄μ„œ μ‚¬μš© λ©”μ†Œλ“œ μ˜μ—­ : λ°”μ΄νŠΈμ½”λ“œ νŒŒμΌμ„ 읽은 λ‚΄μš©μ΄ μ €μž₯λ˜λŠ” μ˜μ—­ νž™ μ˜μ—­ : 객체가 μƒμ„±λ˜λŠ” μ˜μ—­, 객체의 λ²ˆμ§€λŠ” λ©”μ†Œλ“œ μ˜μ—­κ³Ό μŠ€νƒμ˜μ—­μ˜ μƒμˆ˜μ™€ λ³€μˆ˜μ—μ„œ μ°Έμ‘° μŠ€νƒ μ˜μ—­ : λ©”μ†Œλ“œλ₯Ό ν˜ΈμΆœν•  λ•Œ λ§ˆλ‹€ μƒμ„±λ˜λŠ” ν”„λ ˆμž„μ΄ μ €μž₯λ˜λŠ” μ˜μ—­ 5.3 μ°Έμ‘° νƒ€μž… λ³€μˆ˜μ˜ ==, !=μ—°μ‚°μž ==, !=μ—°μ‚°μž ==, != μ—°μ‚°μžλŠ” 객체의 λ²ˆμ§€λ₯Ό 비ꡐ해 λ³€μˆ˜μ˜ 값이 같은지, μ•„λ‹Œ..
μ—°μ‚°μž μ—°μ‚°μžλž€ νŠΉμ •ν•œ μž‘μ—…μ„ ν•˜κΈ° μœ„ν•΄μ„œ μ‚¬μš©ν•˜λŠ” 기호λ₯Ό μ˜λ―Έν•œλ‹€. μž‘μ—…μ˜ μ’…λ₯˜μ— λ”°λΌμ„œ λŒ€μž… μ—°μ‚°μž, μ‚°μˆ  μ—°μ‚°μž, 비ꡐ μ—°μ‚°μž, 논리 μ—°μ‚°μž 등이 μžˆλ‹€. μ‚°μˆ  μ—°μ‚°μž μ‚°μˆ  μ—°μ‚°μžλŠ” μˆ˜ν•™μ μΈ 계산에 μ‚¬μš©λ˜λŠ” μ—°μ‚°μžλ‹€. 기초적인 μˆ˜ν•™μ  μ†Œμ–‘μ΄ μžˆλ‹€λ©΄ μ–΄λ €μš΄ μ—°μ‚°μžλŠ” μ—†λ‹€. λ‹€λ§Œ, μˆ˜ν•™μ—μ„œ μ‚¬μš©ν•˜λŠ” μ—°μ‚°μžμ™€ ν”„λ‘œκ·Έλž˜λ°μ—μ„œ μ‚¬μš©ν•˜λŠ” μ—°μ‚°μžλŠ” 기호의 λͺ¨μ–‘이 쑰금 λ‹€λ₯΄λ‹€. + λ”ν•˜κΈ° - λΉΌκΈ° * κ³±ν•˜κΈ° / λ‚˜λˆ„κΈ° % λ‚˜λ¨Έμ§€ public class ArithmeticDemo { public static void main(String[] args) { // result 의 값은 3 int result = 1 + 2; System.out.println(result); // result 의 값은 2 result = ..
ν˜• λ³€ν™˜ ν˜• λ³€ν™˜(Type Conversion)μ΄λž€ λ°μ΄ν„°μ˜ νƒ€μž…μ„ λ³€κ²½ν•˜λŠ” 것이닀. 예λ₯Ό λ“€μ–΄ intνƒ€μž…μ˜ μ •μˆ˜ 200의 bit 값은 μ•„λž˜μ™€ κ°™λ‹€ 00000000 00000000 00000000 11001000 ν”„λ‘œκ·Έλž˜λ°μ„ 처음 μ‹œμž‘ν•˜λŠ” μ‚¬λžŒλ„ μ»΄ν“¨ν„°λŠ” λͺ¨λ“  정보가 0κ³Ό 1둜 λ§Œλ“€μ–΄μ§„λ‹€λŠ” 이야기λ₯Ό 듀어봀을 것이닀. μ—¬λŸ¬λΆ„μ΄ 200μ΄λΌλŠ” 숫자λ₯Ό μž…λ ₯ν•˜λ©΄ μ»΄ν“¨ν„°μ—λŠ” μœ„μ™€ 같이 0κ³Ό 1둜 이루어진 μ‘°ν•©μœΌλ‘œ μ €μž₯λœλ‹€. λ°”λ‘œ 이 0κ³Ό 1을 bit라고 λΆ€λ₯Έλ‹€. μœ„μ˜ λ°μ΄ν„°λŠ” 8X4개의 자릿수둜 이루어져 μžˆλ‹€. 이것을 32bit라고 λΆ€λ₯Έλ‹€. μœ„μ˜ λ°μ΄ν„°λŠ” int ν˜•μœΌλ‘œ 숫자 200을 μ €μž₯ν–ˆμ„ λ•Œ λ©”λͺ¨λ¦¬μƒμ— λ§Œλ“€μ–΄μ§€λŠ” λ‚΄μš©μ΄λ‹€. 그럼 μ‹€μˆ˜ν˜•μΈ float νƒ€μž…μœΌλ‘œ μ •μˆ˜ 200.0을 μ €μž₯ν•˜λ©΄ μ–΄λ–»κ²Œ 될까? μ‚¬λžŒμ—κ²ŒλŠ” λ˜‘..
데이터 νƒ€μž… λ°μ΄ν„°μ˜ 크기 8 bit (λΉ„νŠΈ) 1 byte 1024 byte (λ°”μ΄νŠΈ) 1 kilobyte 1024 kilobyte (ν‚¬λ‘œλ°”μ΄νŠΈ) 1 megabyte 1024 megabyte (λ©”κ°€λ°”μ΄νŠΈ) 1 gigabyte 1024 gigabyte (κΈ°κ°€λ°”μ΄νŠΈ) 1 terabyte 1024 terabyte (ν…ŒλΌλ°”μ΄νŠΈ) 1 petabyte 1024 petabyte (νŽ˜νƒ€λ°”μ΄νŠΈ) 1 exabyte 1024 exabyte (μ—‘μ‚¬λ°”μ΄νŠΈ) 1 zettabyte μœ„μ˜ ν‘œμ—μ„œ λ³Ό 수 μžˆλ“―μ΄ 컴퓨터에 μ €μž₯λ˜λŠ” μ •λ³΄μ˜ κ°€μž₯ μž‘μ€ λ‹¨μœ„λŠ” bit λ‹€. μ •μˆ˜ν˜• 데이터 νƒ€μž… λ©”λͺ¨λ¦¬μ˜ 크기 ν‘œν˜„ κ°€λŠ₯ λ²”μœ„ byte 1 byte -128 ~ 127 short 2 byte -32,768 ~ 32,767 int 4 byte -2,..
주석 주석(comment)은 λ‘œμ§μ— λŒ€ν•œ μ„€λͺ…μ΄λ‚˜ μ½”λ“œλ₯Ό λΉ„ν™œμ„±ν™” ν•  λ•Œ μ‚¬μš©ν•œλ‹€. 주석은 ν”„λ‘œκ·Έλž˜λ°μ μœΌλ‘œ ν•΄μ„λ˜μ§€ μ•ŠλŠ”λ‹€. ν•œμ€„μ£Όμ„ public static void main(String[] args) { // λ‘κ°œμ˜ λ³€μˆ˜κ°€ 같은 데이터 νƒ€μž… 일 λ•Œ μ•„λž˜μ™€ 같이 μ½”λ“œλ₯Ό μž‘μ„±ν•œλ‹€. String a, b; } μ—¬λŸ¬μ€„ 주석 public static void main(String[] args) { String a, b; /* a = "coding"; b = "everybody"; System.out.println(a+b); */ } JavaDoc 주석 /**둜 μ‹œμž‘ν•˜λŠ” 주석은 JavaDoc 주석이라고 ν•΄μ„œ μžλ°”μ˜ λ¬Έμ„œλ₯Ό λ§Œλ“€ λ•Œ μ‚¬μš©ν•œλ‹€. /** * Prints an integer and then termin..
κ°œλ°œμ›λ¦¬ κ°œλ°œμ—°κ΅¬μ†ŒπŸ“—
'β˜•Java' μΉ΄ν…Œκ³ λ¦¬μ˜ κΈ€ λͺ©λ‘