๋ชฉ๋ก์ „์ฒด ๊ธ€ (1005)

๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

[Programmers] ๋‹ค๋ฆฌ๋ฅผ ์ง€๋‚˜๋Š” ํŠธ๋Ÿญ

๋‹ค๋ฆฌ๋ฅผ ์ง€๋‚˜๋Š” ํŠธ๋Ÿญ ํŠธ๋Ÿญ ์—ฌ๋Ÿฌ ๋Œ€๊ฐ€ ๊ฐ•์„ ๊ฐ€๋กœ์ง€๋ฅด๋Š” ์ผ์ฐจ์„  ๋‹ค๋ฆฌ๋ฅผ ์ •ํ•ด์ง„ ์ˆœ์œผ๋กœ ๊ฑด๋„ˆ๋ ค ํ•จ ๋ชจ๋“  ํŠธ๋Ÿญ์ด ๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„ˆ๋ ค๋ฉด ์ตœ์†Œ ๋ช‡ ์ดˆ๊ฐ€ ๊ฑธ๋ฆฌ๋Š”์ง€ ์•Œ์•„๋‚ด๊ธฐ ๋‹ค๋ฆฌ์—๋Š” ํŠธ๋Ÿญ์ด ์ตœ๋Œ€ bridge_length๋Œ€ ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋‹ค๋ฆฌ๋Š” weight ์ดํ•˜๊นŒ์ง€์˜ ๋ฌด๊ฒŒ๋ฅผ ๊ฒฌ๋”ค ๋‹ค๋ฆฌ์— ์™„์ „ํžˆ ์˜ค๋ฅด์ง€ ์•Š์€ ํŠธ๋Ÿญ์˜ ๋ฌด๊ฒŒ๋Š” ๋ฌด์‹œ ๋‹ค๋ฆฌ์— ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ํŠธ๋Ÿญ ์ˆ˜ bridge_length, ๋‹ค๋ฆฌ๊ฐ€ ๊ฒฌ๋”œ ์ˆ˜ ์žˆ๋Š” ๋ฌด๊ฒŒ weight, ํŠธ๋Ÿญ ๋ณ„ ๋ฌด๊ฒŒ truck_weights ๋ชจ๋“  ํŠธ๋Ÿญ์ด ๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„ˆ๋ ค๋ฉด ์ตœ์†Œ ๋ช‡ ์ดˆ๊ฐ€ ๊ฑธ๋ฆฌ๋Š”์ง€ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜ def solution(bridge_length, weight, truck_weights): time = 0 # # ํŠธ๋Ÿญ ๋ฌด๊ฒŒ # truck = list(truck_wei..

[Programmers] ๊ฒŒ์ž„ ๋งต ์ตœ๋‹จ๊ฑฐ๋ฆฌ

๊ฒŒ์ž„ ๋งต ์ตœ๋‹จ๊ฑฐ๋ฆฌ ROR ๊ฒŒ์ž„์€ ๋‘ ํŒ€์œผ๋กœ ๋‚˜๋ˆ„์–ด์„œ ์ง„ํ–‰ํ•˜๋ฉฐ, ์ƒ๋Œ€ ํŒ€ ์ง„์˜์„ ๋จผ์ € ํŒŒ๊ดดํ•˜๋ฉด ์ด๊ธฐ๋Š” ๊ฒŒ์ž„ ๊ฐ ํŒ€์€ ์ƒ๋Œ€ ํŒ€ ์ง„์˜์— ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ๋„์ฐฉํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌ ๊ฒ€์€์ƒ‰ ๋ถ€๋ถ„์€ ๋ฒฝ์œผ๋กœ ๋ง‰ํ˜€์žˆ์–ด ๊ฐˆ ์ˆ˜ ์—†๋Š” ๊ธธ์ด๋ฉฐ, ํฐ์ƒ‰ ๋ถ€๋ถ„์€ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ธธ ์บ๋ฆญํ„ฐ๊ฐ€ ์›€์ง์ผ ๋•Œ๋Š” ๋™, ์„œ, ๋‚จ, ๋ถ ๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ์นธ์”ฉ ์ด๋™ํ•˜๋ฉฐ, ๊ฒŒ์ž„ ๋งต์„ ๋ฒ—์–ด๋‚œ ๊ธธ์€ ๊ฐˆ ์ˆ˜ ์—†์Œ ๊ฒŒ์ž„ ๋งต์˜ ์ƒํƒœ maps๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์บ๋ฆญํ„ฐ๊ฐ€ ์ƒ๋Œ€ ํŒ€ ์ง„์˜์— ๋„์ฐฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ง€๋‚˜๊ฐ€์•ผ ํ•˜๋Š” ์นธ์˜ ๊ฐœ์ˆ˜์˜ ์ตœ์†Ÿ๊ฐ’์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜ ์ƒ๋Œ€ ํŒ€ ์ง„์˜์— ๋„์ฐฉํ•  ์ˆ˜ ์—†์„ ๋•Œ๋Š” -1์„ return n x m ํฌ๊ธฐ์˜ ๊ฒŒ์ž„ ๋งต์˜ ์ƒํƒœ 0์€ ๋ฒฝ์ด ์žˆ๋Š” ์ž๋ฆฌ, 1์€ ๋ฒฝ์ด ์—†๋Š” ์ž๋ฆฌ from collections import deque def..

[Programmers] ๊ณต์› ์‚ฐ์ฑ…

๊ณต์› ์‚ฐ์ฑ… ์ง€๋‚˜๋‹ค๋‹ˆ๋Š” ๊ธธ์„ 'O', ์žฅ์• ๋ฌผ์„ 'X'๋กœ ๋‚˜ํƒ€๋‚ธ ์ง์‚ฌ๊ฐํ˜• ๊ฒฉ์ž ๋ชจ์–‘์˜ ๊ณต์›์—์„œ ๋กœ๋ด‡ ๊ฐ•์•„์ง€๊ฐ€ ์‚ฐ์ฑ… ์‚ฐ์ฑ…์€ ๋กœ๋ด‡ ๊ฐ•์•„์ง€์— ๋ฏธ๋ฆฌ ์ž…๋ ฅ๋œ ๋ช…๋ น์— ๋”ฐ๋ผ ์ง„ํ–‰ ["๋ฐฉํ–ฅ ๊ฑฐ๋ฆฌ", "๋ฐฉํ–ฅ ๊ฑฐ๋ฆฌ" … ] "E 5"๋Š” ๋กœ๋ด‡ ๊ฐ•์•„์ง€๊ฐ€ ํ˜„์žฌ ์œ„์น˜์—์„œ ๋™์ชฝ์œผ๋กœ 5์นธ ์ด๋™ ์ฃผ์–ด์ง„ ๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ํ•  ๋•Œ ๊ณต์›์„ ๋ฒ—์–ด๋‚˜๋Š”์ง€ ํ™•์ธ ์ฃผ์–ด์ง„ ๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ ์ค‘ ์žฅ์• ๋ฌผ์„ ๋งŒ๋‚˜๋Š”์ง€ ํ™•์ธ ์œ„ ๋‘ ๊ฐ€์ง€์ค‘ ์–ด๋Š ํ•˜๋‚˜๋ผ๋„ ํ•ด๋‹น๋œ๋‹ค๋ฉด, ๋กœ๋ด‡ ๊ฐ•์•„์ง€๋Š” ํ•ด๋‹น ๋ช…๋ น์„ ๋ฌด์‹œํ•˜๊ณ  ๋‹ค์Œ ๋ช…๋ น์„ ์ˆ˜ํ–‰ ๊ณต์›์˜ ๊ฐ€๋กœ ๊ธธ์ด๊ฐ€ W, ์„ธ๋กœ ๊ธธ์ด๊ฐ€ H๋ผ๊ณ  ํ•  ๋•Œ, ๊ณต์›์˜ ์ขŒ์ธก ์ƒ๋‹จ์˜ ์ขŒํ‘œ๋Š” (0, 0), ์šฐ์ธก ํ•˜๋‹จ์˜ ์ขŒํ‘œ๋Š” (H - 1, W - 1) ๊ณต์›์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด ๋ฐฐ์—ด park, ๋กœ๋ด‡ ๊ฐ•์•„์ง€๊ฐ€ ์ˆ˜ํ–‰ํ•  ๋ช…๋ น์ด ๋‹ด๊ธด ๋ฌธ์ž์—ด ๋ฐฐ์—ด routes๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด..

[Programmers] ๊ณผ์ œ ์ง„ํ–‰ํ•˜๊ธฐ

๊ณผ์ œ ์ง„ํ–‰ํ•˜๊ธฐ ๊ณผ์ œ๋ฅผ ๋ฐ›์€ ๋ฃจ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋Œ€๋กœ ๊ณผ์ œ๋ฅผ ํ•˜๋ ค๊ณ  ๊ณ„ํš์„ ์„ธ์›€ ๊ณผ์ œ๋Š” ์‹œ์ž‘ํ•˜๊ธฐ๋กœ ํ•œ ์‹œ๊ฐ์ด ๋˜๋ฉด ์‹œ์ž‘ ์ƒˆ๋กœ์šด ๊ณผ์ œ๋ฅผ ์‹œ์ž‘ํ•  ์‹œ๊ฐ์ด ๋˜์—ˆ์„ ๋•Œ, ๊ธฐ์กด์— ์ง„ํ–‰ ์ค‘์ด๋˜ ๊ณผ์ œ๊ฐ€ ์žˆ๋‹ค๋ฉด ์ง„ํ–‰ ์ค‘์ด๋˜ ๊ณผ์ œ๋ฅผ ๋ฉˆ์ถ”๊ณ  ์ƒˆ๋กœ์šด ๊ณผ์ œ๋ฅผ ์‹œ์ž‘ ์ง„ํ–‰์ค‘์ด๋˜ ๊ณผ์ œ๋ฅผ ๋๋ƒˆ์„ ๋•Œ, ์ž ์‹œ ๋ฉˆ์ถ˜ ๊ณผ์ œ๊ฐ€ ์žˆ๋‹ค๋ฉด, ๋ฉˆ์ถฐ๋‘” ๊ณผ์ œ๋ฅผ ์ด์–ด์„œ ์ง„ํ–‰ ๋งŒ์•ฝ, ๊ณผ์ œ๋ฅผ ๋๋‚ธ ์‹œ๊ฐ์— ์ƒˆ๋กœ ์‹œ์ž‘ํ•ด์•ผ ๋˜๋Š” ๊ณผ์ œ์™€ ์ž ์‹œ ๋ฉˆ์ถฐ๋‘” ๊ณผ์ œ๊ฐ€ ๋ชจ๋‘ ์žˆ๋‹ค๋ฉด, ์ƒˆ๋กœ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๋Š” ๊ณผ์ œ๋ถ€ํ„ฐ ์ง„ํ–‰ ๋ฉˆ์ถฐ๋‘” ๊ณผ์ œ๊ฐ€ ์—ฌ๋Ÿฌ ๊ฐœ์ผ ๊ฒฝ์šฐ, ๊ฐ€์žฅ ์ตœ๊ทผ์— ๋ฉˆ์ถ˜ ๊ณผ์ œ๋ถ€ํ„ฐ ์‹œ์ž‘ ๊ณผ์ œ ๊ณ„ํš์„ ๋‹ด์€ ์ด์ฐจ์› ๋ฌธ์ž์—ด ๋ฐฐ์—ด plans๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ๊ณผ์ œ๋ฅผ ๋๋‚ธ ์ˆœ์„œ๋Œ€๋กœ ์ด๋ฆ„์„ ๋ฐฐ์—ด์— ๋‹ด์•„ return ํ•˜๋Š” solution ํ•จ์ˆ˜ def solution(plans): # nam..

[์•„๋‘์ด๋…ธ] ํด๋ผ์šฐ๋“œ๋กœ ๊ตฌํ˜„ํ•˜๋Š” IoT - MQTT๋กœ ๋ฉ”์‹œ์ง€ ์ฃผ๊ณ ๋ฐ›๊ธฐ

(์ฝ”๋“œ๋Š” ์ €์ž‘๊ถŒ์ƒ ๊ณต์œ  ์•ˆ๋ฉ๋‹ˆ๋‹น!!) ๐Ÿฅ‘ ํด๋ผ์šฐ๋“œ ๊ด€๋ฆฌํ˜• MQTT : ์ ‘์† ๊ธฐ๊ธฐ๊ฐ€ ๋งŽ์•„์ง€๋Š” ๊ฒฝ์šฐ ๋ธŒ๋กœ์ปค ์šด์˜ ๊ด€๋ฆฌ์™€ ๋ณด์•ˆ ์„ค์ • ๋””๋ฐ”์ด์Šค ๊ด€๋ฆฌ ๋“ฑ ๊ณ ๋ ค ์‚ฌํ•ญ ์ฆ๊ฐ€ : AWS์—๋Š” MQTT ํ†ต์‹  ์„œ๋น„์Šค IoT Core ์žˆ์Œ : ์„œ๋ฒ„ ์šด์˜ ๊ด€๋ฆฌ ์—†์ด ์‰ฝ๊ฒŒ ์—ฐ๊ฒฐ ๊ฐ€๋Šฅํ•˜๋ฉฐ ๋‹ค๋ฅธ AWS ์„œ๋น„์Šค์™€ ์—ฐ๋™ ๋งค์šฐ ์‰ฌ์›€ ๐Ÿฅ‘ IoT ๊ธฐ๊ธฐ์™€ ์‹œ๊ฐ„ : ์ž˜๋ชป๋œ ์‹œ๊ฐ„ ๋ฐ์ดํ„ฐ๋Š” ์ž˜๋ชป๋œ ์ •๋ณด ์ œ๊ณตํ•˜์—ฌ ๋ถ„์„๊ณผ ์„œ๋น„์Šค ๊ฐœ๋ฐœ์— ๋ฌธ์ œ ๋ฐœ์ƒ์‹œํ‚ด ๐Ÿ” NPT( Network Time Protocol ) ํ†ต์‹  : ์ธํ„ฐ๋„ท์—์„œ ๊ฐ€์žฅ ์ •๋ฐ€ ํ•œ ์‹œ๊ณ„๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์„œ๋ฒ„ (NTP) ์—๊ฒŒ ๋ฌผ์–ด๋ด์„œ ์‹œ๊ฐ„ ์•Œ์•„๋ƒ„ ๐Ÿฅ‘ JSON (JavaScript Object Notation) : ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐ ์ „์†ก ์‹œ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ๋Ÿ‰ DATA ๊ตํ™˜ ํ˜•์‹ : ์‚ฌ๋žŒ๊ณผ ๊ธฐ๊ณ„ ๋ชจ๋‘ ..

[์•„๋‘์ด๋…ธ] ํด๋ผ์šฐ๋“œ๋กœ ๊ตฌํ˜„ํ•˜๋Š” IoT - MQTT ํ† ํ”ฝ & ํด๋ผ์šฐ๋“œ์˜ ๋ธŒ๋กœ์ปค์™€ MQTT ์—ฐ๋™

(์ฝ”๋“œ๋Š” ์ €์ž‘๊ถŒ์ƒ ๊ณต์œ  ์•ˆ๋ฉ๋‹ˆ๋‹น!!) ๐Ÿฅ‘ MQTT ํ† ํ”ฝ ๐Ÿ” ์™€์ผ๋“œ ์นด๋“œ : ํ† ํ”ฝ์—์„œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ทธ๋ฃน์„ ๊ตฌ๋…ํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„ # : ๋‹ค์ค‘ ๋ ˆ๋ฒจ ์™€์ด๋“œ ์นด๋“œ - ํ† ํ”ฝ์—์„œ ์ง€์ •๋œ ๊ณ„์ธต ์ดํ•˜์˜ ๋ชจ๋“  ๊ฒƒ ์„ ํƒ + : ๋‹จ์ผ ๋ ˆ๋ฒจ ์™€์ด๋“œ ์นด๋“œ - ํ† ํ”ฝ์—์„œ ํ•˜๋‚˜์˜ ๊ณ„์ธต๋งŒ ์„ ํƒ ๐Ÿ” ํ† ํ”ฝ ์„ค๊ณ„ํ•˜๊ธฐ : ์ˆ˜์ง‘ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ๋•Œ๋Š” ๋งจ ์•ž์— dt, ๊ธฐ๊ธฐ๋ฅผ ์„ ํƒํ•˜์—ฌ ์ œ์–ดํ•  ๋•Œ๋Š” cmd๋กœ ์„ค๊ณ„ dt/๋Œ€๋ถ„๋ฅ˜/์ค‘๋ถ„๋ฅ˜/์†Œ๋ถ„๋ฅ˜/๊ตฌ์ฒด์  ๋ฐ์ดํ„ฐ cmd/๋Œ€๋ถ„๋ฅ˜/์ค‘๋ถ„๋ฅ˜/์ œ์–ด ๋Œ€์ƒ/req or res ๐Ÿ” ๋ฉ”์‹œ์ง€ ์„ค๊ณ„ํ•˜๊ธฐ : JSON ํ˜•ํƒœ๋กœ ๋ฉ”์‹œ์ง€ ๋ณด๋ƒ„ : ๋ฉ”์‹œ์ง€ ์ค‘๋ณต์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์‹œ๊ฐ„๊ณผ ๋ณ„๋„ id ๊ฐ’ ์ง€์ • : ์ œ์–ด์˜ ๊ฒฝ์šฐ, ์ œ์–ด ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต ๋ชฉ์ ์ง€ ๊ฐ™์ด ๋ณด๋‚ด๊ธฐ๋„ ํ•จ ๐Ÿฅ‘ ํด๋ผ์šฐ๋“œ์˜ ๋ธŒ๋กœ์ปค ๐Ÿ” ํด๋ผ์šฐ๋“œ : ์ž์‹ ์˜ ์ปดํ“จํ„ฐ๊ฐ€ ์•„๋‹Œ ํด๋ผ์šฐ๋“œ์— ์—ฐ..

[Programmers] ์ถ”์–ต ์ ์ˆ˜

์ถ”์–ต ์ ์ˆ˜ ์‚ฌ์ง„๋“ค์„ ๋ณด๋ฉฐ ์ถ”์–ต์— ์ –์–ด ์žˆ๋˜ ๋ฃจ๋Š” ์‚ฌ์ง„๋ณ„๋กœ ์ถ”์–ต ์ ์ˆ˜๋ฅผ ๋งค๊ธฐ๊ธฐ ์‚ฌ์ง„ ์†์— ๋‚˜์˜ค๋Š” ์ธ๋ฌผ์˜ ๊ทธ๋ฆฌ์›€ ์ ์ˆ˜๋ฅผ ๋ชจ๋‘ ํ•ฉ์‚ฐํ•œ ๊ฐ’์ด ํ•ด๋‹น ์‚ฌ์ง„์˜ ์ถ”์–ต ์ ์ˆ˜ ์‚ฌ์ง„ ์† ์ธ๋ฌผ์˜ ์ด๋ฆ„์ด ["may", "kein", "kain"]์ด๊ณ  ๊ฐ ์ธ๋ฌผ์˜ ๊ทธ๋ฆฌ์›€ ์ ์ˆ˜๊ฐ€ [5์ , 10์ , 1์  ํ•ด๋‹น ์‚ฌ์ง„์˜ ์ถ”์–ต ์ ์ˆ˜๋Š” 16(5 + 10 + 1) ๊ทธ๋ฆฌ์›Œํ•˜๋Š” ์‚ฌ๋žŒ์˜ ์ด๋ฆ„์„ ๋‹ด์€ ๋ฌธ์ž์—ด ๋ฐฐ์—ด name, ๊ฐ ์‚ฌ๋žŒ๋ณ„ ๊ทธ๋ฆฌ์›€ ์ ์ˆ˜๋ฅผ ๋‹ด์€ ์ •์ˆ˜ ๋ฐฐ์—ด yearning, ๊ฐ ์‚ฌ์ง„์— ์ฐํžŒ ์ธ๋ฌผ์˜ ์ด๋ฆ„์„ ๋‹ด์€ ์ด์ฐจ์› ๋ฌธ์ž์—ด ๋ฐฐ์—ด photo๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, ์‚ฌ์ง„๋“ค์˜ ์ถ”์–ต ์ ์ˆ˜๋ฅผ photo์— ์ฃผ์–ด์ง„ ์ˆœ์„œ๋Œ€๋กœ ๋ฐฐ์—ด์— ๋‹ด์•„ returnํ•˜๋Š” solution ํ•จ์ˆ˜ def solution(name, yearning, photo): answer =..