Seize your moment! ๐Ÿ‘พ

์•ˆ๋…•ํ•˜์„ธ์š”. Eric์ž…๋‹ˆ๋‹ค. ์ œ ๋ธ”๋กœ๊ทธ์— ๋ฐฉ๋ฌธํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ป ๊ฐœ๋ฐœ๊ณต๋ถ€ 54

[Eric's JS] JavaScript ๋ชจ๋“  for๋ฌธ ์ดํ•ดํ•˜๊ธฐ ๐Ÿ™ƒ Enumerable๊ณผ Iterable ํ™œ์šฉ (feat. ES6)

์•ˆ๋…•ํ•˜์„ธ์š”, ์—ฌ๋Ÿฌ๋ถ„! Eric ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ JavaScript์—์„œ ์‚ฌ์šฉ๋˜๋Š” for ๋ฌธ์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ณ , ์ด๋ฅผ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” enumerable๊ณผ iterable ๊ฐœ๋…์„ ํ•จ๊ป˜ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. 1๏ธโƒฃ for ๋ฌธ ๋จผ์ € ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ for ๋ฌธ์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด for ๋ฌธ์€ ์ดˆ๊ธฐ์‹, ์กฐ๊ฑด์‹, ์ฆ๊ฐ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์ฃผ์–ด์ง„ ๋ฒ”์œ„์˜ ๋ฐ˜๋ณต์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์‹œ: for (let i = 0; i < 5; i++) { console.log(i); } 2๏ธโƒฃ for...in ๋ฌธ for...in ๋ฌธ์€ ๊ฐ์ฒด์˜ ๋ชจ๋“  ์—ด๊ฑฐ ๊ฐ€๋Šฅํ•œ(enumerable) ์†์„ฑ์— ๋Œ€ํ•ด ๋ฐ˜๋ณต ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋•Œ, ๋ฐฐ์—ด์ด๋‚˜ ๋‹ค๋ฅธ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ(iterable) ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ์‹œ: const person = { name..

[Eric's JS] ์ด๋ฒคํŠธ ๋ฃจํ”„(Event Loop) ๋ž€? ๐Ÿ”„ JavaScript, ๋ธŒ๋ผ์šฐ์ €

์•ˆ๋…•ํ•˜์„ธ์š”! Eric์ž…๋‹ˆ๋‹ค ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜์ธ ์ด๋ฒคํŠธ ๋ฃจํ”„(Event Loop)์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฒคํŠธ ๋ฃจํ”„๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋™์‹œ์„ฑ์„ ์œ ์ง€ํ•˜๊ณ , ๋‹ค์–‘ํ•œ ๋น„๋™๊ธฐ ์ž‘์—…์„ ์ฒ˜๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ์ด๋ฒคํŠธ ๋ฃจํ”„๊ฐ€ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์•Œ์•„๋ณด์‹œ์ฃ ! โœ… ์ด๋ฒคํŠธ ๋ฃจํ”„(Event Loop)๋ž€? ์ด๋ฒคํŠธ ๋ฃจํ”„๋Š” ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋น„๋™๊ธฐ ์ด๋ฒคํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ์—ญํ• ์„ ํ•˜๋Š” ๋ฌดํ•œ ๋ฃจํ”„์ด๋‹ค. JavaScript๋Š” ์‹ฑ๊ธ€ ์Šค๋ ˆ๋“œ ์–ธ์–ด์ด๋ฏ€๋กœ, ์ด๋ฒคํŠธ ๋ฃจํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋™์‹œ์„ฑ์„ ์œ ์ง€ํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ๋™์‹œ์— ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿ”„ ์ด๋ฒคํŠธ ๋ฃจํ”„์˜ ์ž‘๋™ ์›๋ฆฌ ์˜ˆ์‹œ) ํ•˜๋‹จ์ฒ˜๋Ÿผ JavaScript ์ฝ”๋“œ๊ฐ€ ์ž‘์„ฑ๋˜์–ด์žˆ์œผ๋ฉด, ์–ด๋– ํ•œ ์ˆœ์„œ๋Œ€๋กœ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ๊นŒ? console.log(..

[Eric's Vue] ref, $refs ์ด์šฉํ•ด์„œ DOM ์š”์†Œ ๋ฐ ์ž์‹ ์ปดํฌ๋„ŒํŠธ ์ ‘๊ทผ ๋ฐฉ๋ฒ• ๐Ÿ”—

Vue.js์—์„œ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”์ธ๋”ฉํ•˜์—ฌ DOM ์š”์†Œ๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ์„œ, DOM ์š”์†Œ๋‚˜ ์ž์‹ ์ปดํฌ๋„ŒํŠธ์— ์ง์ ‘ ์ ‘๊ทผํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ Vue.js์—์„œ ์ œ๊ณตํ•˜๋Š” ref $refs๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์›ํ•˜๋Š” ์š”์†Œ์— ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โœ… ref ?ref๋Š” Vue ํ…œํ”Œ๋ฆฟ ์•ˆ์—์„œ ํŠน์ • DOM ์š”์†Œ๋‚˜ ์ž์‹ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•œ ์†์„ฑ์ž…๋‹ˆ๋‹ค. ref ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด ํ…œํ”Œ๋ฆฟ์˜ ํ•ด๋‹น ์š”์†Œ๋‚˜ ์ปดํฌ๋„ŒํŠธ์— ref๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ , ๊ณ ์œ ํ•œ ์ด๋ฆ„์„ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ•ด๋‹น ์š”์†Œ๋‚˜ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ ์ƒ์„ฑ๋˜๋ฉฐ, Vue ์ธ์Šคํ„ด์Šค ๋‚ด์—์„œ ํ•ด๋‹น ์ฐธ์กฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.โœ… $refs ?$refs๋Š” Vue ์ปดํฌ๋„ŒํŠธ์—์„œ ํŠน์ • DOM ์š”์†Œ๋‚˜ ์ž์‹ ์ปดํฌ๋„ŒํŠธ์— ๋Œ€ํ•œ ์ฐธ์กฐ๋ฅผ..

[Eric's CS] Sanity Test ๋ž€? ๐Ÿง

โœ… Sanity Test๋ž€? Sanity Test๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„๋‹จํ•œ ํ…Œ์ŠคํŠธ๋กœ, ์ฃผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด์˜ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์ด ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ํ…Œ์ŠคํŠธ๋Š” ๋ฆด๋ฆฌ์Šค ์ „์— ํ’ˆ์งˆ ๋ณด์ฆ(QA) ๋‹จ๊ณ„์—์„œ ์ง„ํ–‰๋˜๋ฉฐ, ์—ฌ๋Ÿฌ ํ…Œ์ŠคํŠธ ์ค‘์— ๊ฐ€์žฅ ๋จผ์ € ์ˆ˜ํ–‰๋˜๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค. Sanity Test์˜ ๋ชฉ์  Sanity Test์˜ ์ฃผ์š” ๋ชฉ์ ์€ - ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์˜ ์ž‘๋™ ์—ฌ๋ถ€ ํ™•์ธ - ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋”ฐ๋ฅธ ํฐ ๋ฌธ์ œ์  ํŒŒ์•… - ๊ธฐ๋Šฅ ์ถ”๊ฐ€๋‚˜ ์ˆ˜์ •์ด ๋‹ค๋ฅธ ๊ธฐ๋Šฅ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ ํ™•์ธ Sanity Test ์˜ˆ์‹œ ์˜ˆ๋ฅผ ๋“ค์–ด, ์˜จ๋ผ์ธ ์‡ผํ•‘๋ชฐ ์‹œ์Šคํ…œ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒฝ์šฐ, Sanity Test๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. - ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ: ์‚ฌ์šฉ์ž๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ๋กœ๊ทธ์ธํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ ..

[Eric's IDE] VSCode - $event => ์ž๋™์™„์„ฑ ๋„๊ธฐ

๋ฌธ์ œ์ƒํ™ฉ ํ˜„์žฌ Vue.js ๋ฅผ VSCode ๋กœ ๊ณต๋ถ€ ํ•˜๊ณ  ์žˆ๋Š”๋ฐ, $event => volar.inlayHints.eventArgumentInInlineHanders":false to hide Event Argument in Inline Handers ์ด๊ฒŒ ๋œจ๋Š”๊ฑฐ์ž„!!! ๋‚˜๋„ event ์ธ์ค„ ์•ˆ๋‹ค๊ณ ! ๊ทธ๋ž˜์„œ ์ด๊ฑธ ๋„๊ธฐ์œ„ํ•ด์„œ ํ•ด๊ฒฐ๋ฐฉ๋ฒ• Mac ๊ธฐ์ค€์œผ๋กœ Perferences > Settting ๋“ค์–ด๊ฐ€๊ณ , (Window ๋„ ๋น„์Šทํ• ๊ฒจ) ๊ฒ€์ƒ‰์ฐฝ์— inlayHint ๊ฒ€์ƒ‰ํ•˜๊ณ  ํ•˜๋‹จ์˜ ๋…ธ๋ž€ ๋ฐ•์Šค ๋ถ€๋ถ„ off๋กœ ๋ฐ”๊พธ๋ฉด ๋! ํ•ด๊ฒฐ

[Eric's CS] OpenAPI vs Open API ? ๋‹ค๋ฅธ๊ฑฐ์•ผ? ๐Ÿง

โœ… Abstract ์š”์ฆ˜ API๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ๋ฐ ํ˜‘์—…์— ์žˆ์–ด์„œ ๋งค์šฐ ์ค‘์š”ํ•œ ์š”์†Œ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ด๋•Œ ์ข…์ข… "OpenAPI"์™€ "Open API"๋ผ๋Š” ์šฉ์–ด๋ฅผ ๋“ฃ๊ฒŒ ๋˜๋Š”๋ฐ, ์ด ๋‘˜์€ ์„œ๋กœ ๋‹ค๋ฅธ ์˜๋ฏธ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” OpenAPI์™€ Open API์˜ ์ฐจ์ด์ ์„ ์•Œ์•„๋ณด๊ณ , ๊ฐ๊ฐ์ด ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋˜๋Š”์ง€ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. 1๏ธโƒฃ OpenAPI OpenAPI๋Š” RESTful API ๋ช…์„ธ๋ฅผ ๊ธฐ์ˆ ํ•˜๊ณ  ๋ฌธ์„œํ™”ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ‘œ์ค€์ž…๋‹ˆ๋‹ค. OpenAPI Specification(OAS)์ด๋ผ๊ณ ๋„ ๋ถˆ๋ฆฌ๋ฉฐ, ์ฒ˜์Œ์—๋Š” Swagger Specification์œผ๋กœ ์•Œ๋ ค์ ธ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ช…์„ธ๋Š” API์˜ ์—”๋“œํฌ์ธํŠธ, ์š”์ฒญ/์‘๋‹ต ํ˜•์‹, ์ธ์ฆ ๋ฐฉ์‹ ๋“ฑ API์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ JSON ๋˜๋Š” YAML ํ˜•์‹์œผ๋กœ ๊ธฐ์ˆ ํ•ฉ๋‹ˆ๋‹ค. Ope..

[Eric's CS] ์›นํ›…(WebHook) ? ๐ŸŽฃ

โœ… Abstarct์›นํ›…(Webhook)์€ ์›น ์„œ๋น„์Šค ๊ฐ„์˜ ์‹ค์‹œ๊ฐ„ ์ƒํ˜ธ ์ž‘์šฉ์„ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋Š” ์ž๋™ํ™”๋œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ์›นํ›…์˜ ๊ฐœ๋…๊ณผ ์›๋ฆฌ, ๊ทธ๋ฆฌ๊ณ  ์‚ฌ์šฉ ์˜ˆ์‹œ๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ” ์›นํ›…(Webhook)์ด๋ž€?์›นํ›…(Webhook)์€ ํ•œ ์‹œ์Šคํ…œ์—์„œ ๋‹ค๋ฅธ ์‹œ์Šคํ…œ์œผ๋กœ ์ด๋ฒคํŠธ ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ์ž๋™ํ™”๋œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์›นํ›…์€ ์ฃผ๋กœ ์›น ์„œ๋น„์Šค ๊ฐ„์˜ ์‹ค์‹œ๊ฐ„ ์ƒํ˜ธ ์ž‘์šฉ์— ์‚ฌ์šฉ๋˜๋ฉฐ, ํŠน์ • ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ๋งˆ๋‹ค ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ์›นํ›…์˜ ์›๋ฆฌ์›นํ›…์€ ์ผ๋ฐ˜์ ์œผ๋กœ HTTP POST ์š”์ฒญ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๋ฉฐ, ์ด๋ฅผ ๋ฐ›๋Š” ์‹œ์Šคํ…œ์€ ์›นํ›…์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ ์ ˆํ•œ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ๋ฐฉ์‹์œผ๋กœ ์›น ์„œ๋น„์Šค ๊ฐ„์˜ ์‹ค์‹œ๊ฐ„ ์ƒํ˜ธ ์ž‘์šฉ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›นํ›… ์‚ฌ์šฉ ์˜ˆ์‹œ์˜จ๋ผ์ธ ์‡ผํ•‘๋ชฐ์—์„œ ๊ฒฐ์ œ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด ๊ฒฐ์ œ ..

[Eric's ๋ฐฑ์ค€] 2667๋ฒˆ - ๋‹จ์ง€๋ฒˆํ˜ธ ๋ถ™์ด๊ธฐ - Java ๐Ÿฏ

๋ฌธ์ œ ์•ˆ๋…•ํ•˜์„ธ์š”! Eric ์ž…๋‹ˆ๋‹ค ์˜ค๋Š˜ ํ’€์–ด๋ณผ ๋ฌธ์ œ๋Š” ๋ฐฑ์ค€ 2667๋ฒˆ ๋‹จ์ง€๋ฒˆํ˜ธ ๋ถ™์ด๊ธฐ ์ž…๋‹ˆ๋‹ค ์ด๋ฒˆ ๋ฌธ์ œ๋Š” dfs๋กœ ํ’€์–ด๋ณด๋„๋ก ํ•˜์ฃ . ํ’€์ด ์šฐ์„  ๋‹จ์ง€๊ฐ€ ๋ช‡๊ฐœ์ธ์ง€ ๊ตฌํ•ด์•ผํ•˜๊ณ , ๊ฐ๊ฐ์˜ ๋‹จ์ง€๋‹น, ๋ช‡๊ฐœ์˜ ๊ฐ€๊ตฌ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ๊ตฌํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋„ ์ €๋Š” boolean[] graph ๊ฐ’์œผ๋กœ ๋ฐ›์•„์„œ ๋‹จ์ง€๊ฐ€ ์žˆ๋Š” 1 ๋กœ ํ‘œ์‹œ๋˜์–ด ์žˆ๋Š” ๋ถ€๋ถ„์€ true ๊ฐ’์œผ๋กœ graph๋ฅผ ๊ทธ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  graph ์—์„œ true๊ฐ’์„ ๋งŒ๋งˆ๋ฉด ์ƒํ•˜์ขŒ์šฐ๋ฅผ dfs๋ฅผ ๋Œ๋ฉด์„œ ๊ฐ๊ฐ์˜ ๋‹จ์ง€์˜ ๊ฐœ์ˆ˜๋ฅผ ์ฐพ์Œ๊ณผ ๋™์‹œ์—, ํ•ด๋‹น graph ์œ„์น˜๋ฅผ false๋กœ ๋ณ€ํ™˜์‹œ์ผœ์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ฐ๊ฐ์˜ ๋‹จ์ง€ ๊ฐœ์ˆ˜๋ฅผ count ํ•ด์ค„ ArrayList๋ฅผ ์ด์šฉํ•ด์„œ ํ•ด๋‹น๊ฐ’์„ ์ €์žฅํ•˜๊ณ  ์ด๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ ํ›„ ์ถœ๋ ฅํ•ด์ค๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋ฉด ์ฝ”๋“œ๋ฅผ ๋ณด์‹œ์ฃ . ์ฝ”๋“œ

[Eric's ๋ฐฑ์ค€] 1012๋ฒˆ - ์œ ๊ธฐ๋†๋ฐฐ์ถ” ๐Ÿฅฌ - Java

๋ฌธ์ œ ์•ˆ๋…•ํ•˜์„ธ์š”! Eric ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜ ํ’€์–ด๋ณผ ๋ฌธ์ œ๋Š” ๋ฐฑ์ค€ 1012๋ฒˆ , ์œ ๊ธฐ๋† ๋ฐฐ์ถ” ์ž…๋‹ˆ๋‹ค! ๊ทธ๋Ÿฌ๋ฉด ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋„๋ก ํ•˜์ฃ ! ํ’€์ด ์šฐ์„  ์œ ๊ธฐ๋†๋ฐฐ์ถ”๋ฅผ ๋งŒ๋“ค๊ธฐ์œ„ํ•ด์„œ ๋ฐฐ์ถ”ํฐ์ง€๋ ์ด ๋ฅผ ๊น”์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ๊น”๊ธฐ์œ„ํ•ด์„œ๋Š” ๋ฐฐ์ถ”๊ฐ€ ์žˆ๋Š” ์œ„์น˜์— ๊น”์•„์•ผ๋ฉฐ, ๊ทธ ์ง€๋ ์ด๊ฐ€ ์ƒํ•˜์ขŒ์šฐ ๋กœ ์›€์ง์ด๋ฉด์„œ ๋ฐฐ์ถ”๋ฅผ ๋ณดํ˜ธํ•œ๋‹ค ์ด๋ฅผ ์ €๋Š” dfs๋ฅผ ํ†ตํ•ด์„œ ๊ตฌ์—ฐํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์šฐ์„  ์ฃผ์–ด์ง„ test case๋ฅผ int๋กœ ๋ฐ›๊ณ , ๊ทธ๋•Œ์˜ ์ฃผ์–ด์ง„ ๋ฐฐ์ถ”๋ฐญ์˜ ๊ธธ์ด m๊ณผ n์„ ๋ฐ›์•„์„œ ์ด๋ฅผ ํ†ตํ•ด์„œ boolean[] graph๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๋Š” ๋ฐฐ์ถ”๊ฐ€ ์žˆ๋Š” ์œ„์น˜์— true๊ฐ’์„ ์ฃผ๋ฉฐ, ๋ฐฐ์ถ”๊ฐ€ ์—†๋Š” ์œ„์น˜์—๋Š” false๋กœ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋™์ผํ•œ ์‚ฌ์ด์ง€์˜ boolean[] visited ๋ฐฐ์—ด์„ ๋งŒ๋“ค๊ณ  dfs๊ฐ€ ๋Œ๋ฉด์„œ ํ•ด๋‹น ์ง€์ ์„ ๋ฐฉ๋ฌธํ•˜๋ฉด true๋กœ ๊ฐ’์„ ๋ณ€ํ™˜ํ•ด์ค๋‹ˆ๋‹ค..

[Eric's ๋ฐฑ์ค€] 7569๋ฒˆ - ํ† ๋งˆํ†  - Java ๐Ÿ…๐Ÿ…

๋ฌธ์ œ ํ’€์ด ์ด๋ฒˆ๋ฌธ์ œ๋Š” ๋ฐฉ๊ธˆ์ „์— ํ’€์—ˆ๋˜ ๋ฌธ์ œ ํ† ๋งˆํ†  7576๋ฒˆ ๋ฌธ์ œ์—์„œ dis ๋ถ€๋ถ„๋งŒ ์ˆ˜์ •์„ ํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค. ์ €๋ฒˆ์—๋Š” class Point ๊ฐ€ int x, int y ๋กœ ๊ตฌ์„ฑ๋˜์—ˆ๋‹ค๋ฉด, ์ด๋ฒˆ๋ฌธ์ œ์—์„œ๋Š” ํ•œ์ธต ๋” ์ถ”๊ฐ€ํ•˜์—ฌ int x, int y, int z ๋กœ ๊ตฌ์„ฑํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ๋ณด์‹œ์ฃ  ์ฝ”๋“œ ์ฝ”๋“œ๋ฅผ ๋ณด์‹œ๋ฉด ์ด์ „๋ฌธ์ œ ์™€ ํ•˜๋‚˜์˜ ์ฐจ์ด์ ์€ for๋ฌธ์„ ๋Œ๋•Œ 3์ค‘ for๋ฌธ์„ ๋Œ์•„์„œ ์ž…๋ ฅ์„ ๋ฐ›๊ณ , ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๊ฐ€ 3์ค‘ for๋ฌธ์„ ํ†ตํ•ด์„œ ํ•ด๊ฒฐ ๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์™ธ์—๋Š” ๊ธฐ์กด ๋ฌธ์ œ์™€ ๋™์ผํ•˜๊ฒŒ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.