์ „์ฒด ๊ธ€

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

2024 ์‚ผ์„ฑSW์—ญ๋Ÿ‰ํ…Œ์ŠคํŠธ ํ•˜๋ฐ˜๊ธฐ ์˜ค์ „ 1๋ฒˆ

https://www.codetree.ai/training-field/frequent-problems/problems/escape-unknown-space/description?page=1&pageSize=10 ์ฝ”๋“œํŠธ๋ฆฌ | ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ค€๋น„๋ฅผ ์œ„ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ •์„๊ตญ๊ฐ€๋Œ€ํ‘œ๊ฐ€ ๋งŒ๋“  ์ฝ”๋”ฉ ๊ณต๋ถ€์˜ ๊ฐ€์ด๋“œ๋ถ ์ฝ”๋”ฉ ์™•์ดˆ๋ณด๋ถ€ํ„ฐ ๊ฟˆ์˜ ์ง์žฅ ์ฝ”ํ…Œ ํ•ฉ๊ฒฉ๊นŒ์ง€, ๊ตญ๊ฐ€๋Œ€ํ‘œ๊ฐ€ ์—„์„ ํ•œ ์ปค๋ฆฌํ˜๋Ÿผ์œผ๋กœ ์ค€๋น„ํ•ด๋ณด์„ธ์š”.www.codetree.ai ์œ„ ๋ฌธ์ œ์˜ ํ•ต์‹ฌ ๊ตฌํ˜„์‚ฌํ•ญ์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. 1. 3์ฐจ์› ์ •์œก๋ฉด์ฒด์˜ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์„๊นŒ? 1๋ฒˆ์— ์ž˜๋ชป๋œ ์ ‘๊ทผ (์ฒ˜์Œ ๋‚˜์˜ ์ƒ๊ฐ) ์ •์œก๋ฉด์ฒด๋ฅผ ํ‰๋ฉด๋„๋กœ ํŽผ์ณ์„œ BFS๋กœ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋ฉด ๋˜์ง€ ์•Š์„๊นŒ? ์œ—๋ฉด์—์„œ ๋‹ค๋ฅธ๋ฉด์œผ๋กœ ์ด๋™ํ•˜๋Š” ์ตœ๋‹จ๊ฒฝ๋กœ๋Š” ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ํ•˜์ง€๋งŒ ์•„๋žซ๋ฉด์—์„œ ๋‹ค๋ฅธ ๋ฉด์œผ๋กœ ..

๐Ÿ“‚SAP:ABAP

GRID ALV

ALV๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•- ํ•จ์ˆ˜๋ฅผ ์ด์šฉ- GRID ์ปจํŠธ๋กค์„ ์ด์šฉ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๋‘ ๋ฐฉ๋ฒ•์ด ์œ ์‚ฌํ•œ ๊ตฌ์กฐ์™€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.๊ฐœ๋ฐœ๋œ ์ˆœ์„œFunction ALV ๐Ÿ‘‰ GRID ALV ๐Ÿ‘‰ SALV  ALV GRID ์ปจํŠธ๋กค- ํ™”๋ฉด์— ๋ณด์ด๋Š” ๋ชจ๋“  ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ alvํ™”๋ฉด์˜ ์†์„ฑ์„ ์žฌ์ •์˜ํ•˜๊ณ  ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.- ์•„๋ž˜๋Š” ALV GRID ์ปจํŠธ๋กค์„ ๋งŒ๋“œ๋Š” ์ฝ”๋“œ์ž…๋‹ˆ๋‹ค.DATA: gv_grid TYEP REF TO cl_gui_alv_grid.CREATE OBJECT gv_grid.ํ•„๋“œ์นดํƒˆ๋กœ๊ทธ- ALV ํ™”๋ฉด์— ๋ณด์ด๊ฒŒ ๋˜๋Š” ํ•„๋“œ๋“ค์˜ ์ •๋ณด๋ฅผ ๋‹ด๋Š” ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค.- LVC_T_FCAT ํƒ€์ž…์˜ ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค. ( ํ•„๋“œ์˜ ํƒ€์ž…, ์†์„ฑ, ๊ธธ์ด ๋“ฑ ) SAP ์ปจํ…Œ์ด๋„ˆ ์ปจํŠธ๋กค- Screen ๊ณผ ALV ..

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

์ˆœ์—ด(n๊ณผm ๋ฌธ์ œ) ์ตœ์ ํ™” ์‹œํ‚ค๊ธฐ && ์กฐํ•ฉ

์‹คํ–‰์‹œ๊ฐ„ ๋‹จ์ถ• ๋ฐฉ๋ฒ•๋ณดํ†ต์˜ ์ง€๋ฌธ : ์ž์—ฐ์ˆ˜ N๊ณผ M์ด ์ฃผ์–ด์กŒ์„ ๋•Œ 1๋ถ€ํ„ฐ N๊นŒ์ง€ ์ž์—ฐ์ˆ˜ ์ค‘์—์„œ ์ค‘๋ณต ์—†์ด M๊ฐœ๋ฅผ ๊ณ ๋ฅธ ์ˆœ์—ด์„ ๊ตฌํ•˜๋ผ. 1. StringBuilder ๋กœ ๊ฒฐ๊ณผ ์ถœ๋ ฅํ•˜๊ธฐ 2. ๋ฐฑํŠธ๋ž˜ํ‚น ํ•˜๋ฉด์„œ ์ˆœ์—ด ๊ฒฐ๊ณผ๊ฐ’์„ ์ €์žฅํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ Array๋กœ ์‚ฌ์šฉํ•˜๊ธฐ     2-1. ์™œ ๊ทธ๋Ÿด๊นŒ? Array๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด Array์˜ cnt ์ธ๋ฑ์Šค์— ๊ฐ’์„ ๊ณ„์† ๊ฐฑ์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ArrayList ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ํ•„์š”ํ•œ list.remove(list.size()-1); ์˜ ๊ณผ์ •์ด ํ•„์š”์—†๋‹ค.  3. (ํŠน์ • ๋ฌธ์ œ์ƒํ™ฉ) input์— ๋Œ€ํ•ด ์ค‘๋ณต์„ ์ œ๊ฑฐํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์ณค๋‹ค๋ฉด, ๋งŒ๋“ค์–ด์ง„ comb์— ๋Œ€ํ•ด ์ค‘๋ณต์„ ๊ฒ€์‚ฌํ•˜๋Š” ๊ณผ์ •์€ ํ•„์š”์—†๋‹ค.      3-1. ์ด๋ฏธ input์—์„œ ์ค‘๋ณต ์›์†Œ๋ฅผ ์ œ๊ฑฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋งŒ๋“ค์–ด์ง€๋Š” ์ˆœ์—ด์—๋Š” ์ค‘๋ณต๋œ ์ˆœ์—ด์ด ์กด์žฌํ• ..

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

[HSAT 4ํšŒ ์ •๊ธฐ ์ฝ”๋”ฉ ์ธ์ฆํ‰๊ฐ€ ๊ธฐ์ถœ] ํ†ต๊ทผ๋ฒ„์Šค ์ถœ๋ฐœ ์ˆœ์„œ ๊ฒ€์ฆํ•˜๊ธฐ

https://softeer.ai/practice/6257/history?questionType=ALGORITHM Softeer - ํ˜„๋Œ€์ž๋™์ฐจ๊ทธ๋ฃน SW์ธ์žฌํ™•๋ณดํ”Œ๋žซํผ softeer.ai์ฒ˜์Œ ์ƒ๊ฐํ•œ ํ’€์ด๊ณผ์ •์€ for๋ฌธ์„ ์„ธ ๋ฒˆ ์“ฐ๋Š” ๊ฒƒ ์ด์—ˆ๋Š”๋ฐ, O(n^3)์ด์–ด์„œ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๋กœ์ง์ด์—ˆ์Šต๋‹ˆ๋‹ค.ํ’€์ด๊ณผ์ •i=0 ์„ ๊ธฐ์ค€์œผ๋กœ ๋‘ก๋‹ˆ๋‹ค.์ด๋•Œ ๋ฐฐ์—ด์˜ ๋์—์„œ ๋ถ€ํ„ฐ ๋น„๊ตํ•ด์•ผ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.1๊ณผ 3์€ arr[0] ์˜ ๊ฐ’ 4๋ณด๋‹ค ์ž‘์œผ๋ฏ€๋กœ 1์”ฉ ๋ˆ„์ ํ•ด์ค๋‹ˆ๋‹ค.   ๊ทธ ๋‹ค์Œ ์›์†Œ 5๋Š” arr[0] ๋ณด๋‹ค ํฝ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ 1์„ ๋ˆ„์ ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ 2๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.๋˜ํ•œ arr[0]๋ณด๋‹ค 5๊ฐ€ ํฌ๊ธฐ๋•Œ๋ฌธ์—, ์Šคํƒ์ •๋ ฌ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ ์ž…๋‹ˆ๋‹ค.answer ์— ๋ˆ„์ ๋œ ๊ฐ’ 2๋ฅผ ๋ˆ„์ ํ•ด์ค๋‹ˆ๋‹ค. ๊ทธ ๋‹ค์Œ ์›์†Œ 2๋Š” arr[..

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

[HSAT 1ํšŒ ์ •๊ธฐ ์ฝ”๋”ฉ ์ธ์ฆํ‰๊ฐ€ ๊ธฐ์ถœ] ๋กœ๋ด‡์ด ์ง€๋‚˜๊ฐ„ ๊ฒฝ๋กœ

https://softeer.ai/practice/6275/history?questionType=ALGORITHM Softeer - ํ˜„๋Œ€์ž๋™์ฐจ๊ทธ๋ฃน SW์ธ์žฌํ™•๋ณดํ”Œ๋žซํผ softeer.ai ํ’€์ด๊ณผ์ •์ „์ฒด์ ์ธ ํ’€์ด1. ํƒ์ƒ‰ ๊ฒฝ๋กœ์˜ ์‹œ์ž‘์ , ์‹œ์ž‘ ๋ฐฉํ–ฅ ์ฐพ๊ธฐ2. ์ฐพ์€ ๋ฐฉํ–ฅ์œผ๋กœ dfsํƒ์ƒ‰ํ•˜๊ธฐ2-1. ํ˜„์žฌ ๋ฐฉํ–ฅ์œผ๋กœ ๋‘ ์นธ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ2-2. ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํšŒ์ „ ์‹œํ‚จ ๋’ค, ๋‘ ์นธ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ2-3. ์™ผ์ชฝ์œผ๋กœ ํšŒ์ „ ์‹œํ‚จ ๋’ค, ๋‘ ์นธ ์ด๋™ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ  ์ž์„ธํ•œ ํ’€์ด์‹œ์ž‘์ ์ด ๋  ์ˆ˜ ์žˆ๋Š” ์ขŒํ‘œ1. "#" ์ธ ๋ฌธ์ž์—ด2. ์ƒ, ํ•˜, ์ขŒ, ์šฐ "#" ๋ฌธ์ž์—ด์ด ํ•˜๋‚˜ ์žˆ์–ด์•ผ ํ•จ (๋‘ ๊ฐœ ์ด๋ฉด ์•ˆ๋จ) ์œ„ ๋‘ ๊ฐ€์ง€ ํŠน์ง•์„ ํ™œ์šฉํ•ด์„œ ๋ชจ๋“  ์ขŒํ‘œ์— ๋Œ€ํ•ด ํƒ์ƒ‰ํ•˜๋ฉฐ ์‹œ์ž‘์ ์„ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค.static void find_start(..

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ƒ๋‹ด์› ์ธ์›

https://school.programmers.co.kr/learn/courses/30/lessons/214288 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krํ’€์ด๊ณผ์ •1. ์œ ํ˜• ๋ณ„ ๋ฉ˜ํ† ์˜ ์ˆซ์ž ์กฐํ•ฉ์„ ๋‹ค ๊ตฌํ•˜๊ธฐ (์™„์ „ํƒ์ƒ‰)    1-1. ์ด๋•Œ n์€ ์ตœ๋Œ€ 20์ด๋ฉฐ k๋Š” ์ตœ๋Œ€ 5์ž…๋‹ˆ๋‹ค. ์•„๋ž˜ ์„ค๋ช…์— ์ •๋ฆฌ๋ฅผ ํ•ด๋†“์•˜๋Š”๋ฐ n-1๊ฐœ(19)์—์„œ k-1๊ฐœ(4)์˜ ์กฐํ•ฉ์„ ๋ฝ‘๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ๋Š” 3,876๊ฐœ ์ž…๋‹ˆ๋‹ค.    1-2. reqs์˜ ๊ธธ์ด๋Š” ์ตœ๋Œ€ 300์ด๋ฏ€๋กœ, ๋ชจ๋“  ์กฐํ•ฉ์—์„œ ์ง€์—ฐ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒฝ์šฐ๋Š” 3876*300 =1,162,800 ์ž…๋‹ˆ๋‹ค.    1-3. ์ฆ‰ ์™„์ „ํƒ์ƒ‰ ..

๐Ÿ“‚์ฝ”๋”ฉํ…Œ์ŠคํŠธ:CodingTest

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๋‹ค๋ฆฌ๋ฅผ ์ง€๋‚˜๋Š” ํŠธ๋Ÿญ

https://school.programmers.co.kr/learn/courses/30/lessons/42583 ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krํ’€์ด๊ณผ์ •1. ํ์— ํŠธ๋Ÿญ์„ ์˜ฌ๋ฆฌ๊ธฐ1-1. ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์žˆ์œผ๋ฉด ํŠธ๋Ÿญ์˜ ๋ฌด๊ฒŒ๋ฅผ offer1-2. ์˜ฌ๋ผ๊ฐˆ ์ˆ˜ ์—†์œผ๋ฉด 0์„ offer (๊ฐ€์ƒ์˜ ํŠธ๋Ÿญ)2. ํ์—์„œ ํŠธ๋Ÿญ ๋นผ์ฃผ๊ธฐํ์˜ size๊ฐ€ bridge_length์™€ ๊ฐ™์•„์ง„๋‹ค๋ฉด, ์ œ์ผ ์•ž์˜ ํ๋Š” ๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„ˆ๊ฐˆ ์ˆ˜ ์žˆ๋ฏ€๋กœ q.pollFirst()๋กœ ํ์—์„œ ๋นผ์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.3. truck_weights๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ํŠธ๋Ÿญ ๊ณ ๋ คํ•˜๊ธฐ๋งˆ์ง€๋ง‰ ์ธ๋ฑ์Šค ํŠธ๋Ÿญ์„ ํ์— ๋„ฃ๋Š” ๊ฒฝ์šฐ..

๐Ÿ“‚๋ฐฑ์—”๋“œ : BackEnd

@PathVariable, @RequestParam, @ModelAttribute

์•Œ๊ฒŒ๋œ ์ 1. @RequestParam์„ ํ†ตํ•ด์„œ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐQuery StringForm ํ˜•์‹ ๋ฐ์ดํ„ฐ (html form)๋ฉ€ํ‹ฐํŒŒํŠธ ๋ฐ์ดํ„ฐ : multipart/form-data ํ˜•์‹์˜ ์š”์ฒญ์—์„œ ํผ ํ•„๋“œ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•  ์ˆ˜ ์žˆ์Œ์œ„ ์„ธ๊ฐ€์ง€๋ฅผ ๋‹ค ๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 2. @RequestBody๋Š” ๋ณ€ํ™˜๊ณผ์ •, @ModelAttribute์€ ๋งตํ•‘๊ณผ์ •@RequestBodyJSON, XML, Text๋“ฑ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์ ํ•ฉํ•œ HttpMessageConverter์„ ํ†ตํ•ด ํŒŒ์‹ฑ๋˜์–ด Java ๊ฐ์ฒด๋กœ ๋ณ€ํ™˜ ๋ฉ๋‹ˆ๋‹ค.@RequestBody๋ฅผ ์‚ฌ์šฉํ•  ๊ฐ์ฒด๋Š” ๋ฐ”์ธ๋”ฉ์„ ์œ„ํ•œ ์ƒ์„ฑ์ž๋‚˜, setter๋ฉ”์„œ๋“œ๊ฐ€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.๋‹จ, ์ง๋ ฌํ™”๋ฅผ ์œ„ํ•ด ๊ธฐ๋ณธ ์ƒ์„ฑ์ž์™€ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ์„ ์œ„ํ•œ getter๋‚˜ setter ์ค‘ 1๊ฐ€์ง€๋Š” ์ •์˜๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค..

mc.thd
song