๐์ฝ๋ฉํ
์คํธ:CodingTest
์คํ์๊ฐ ๋จ์ถ ๋ฐฉ๋ฒ๋ณดํต์ ์ง๋ฌธ : ์์ฐ์ 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
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
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
์๊ฒ๋ ์ 1. @RequestParam์ ํตํด์ ๋ฐ์ ์ ์๋ ๋ฐ์ดํฐQuery StringForm ํ์ ๋ฐ์ดํฐ (html form)๋ฉํฐํํธ ๋ฐ์ดํฐ : multipart/form-data ํ์์ ์์ฒญ์์ ํผ ํ๋์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ ์ ์์์ ์ธ๊ฐ์ง๋ฅผ ๋ค ๋ฐ์ ์ ์์ต๋๋ค. 2. @RequestBody๋ ๋ณํ๊ณผ์ , @ModelAttribute์ ๋งตํ๊ณผ์ @RequestBodyJSON, XML, Text๋ฑ์ ๋ฐ์ดํฐ๊ฐ ์ ํฉํ HttpMessageConverter์ ํตํด ํ์ฑ๋์ด Java ๊ฐ์ฒด๋ก ๋ณํ ๋ฉ๋๋ค.@RequestBody๋ฅผ ์ฌ์ฉํ ๊ฐ์ฒด๋ ๋ฐ์ธ๋ฉ์ ์ํ ์์ฑ์๋, setter๋ฉ์๋๊ฐ ํ์ ์์ต๋๋ค.๋จ, ์ง๋ ฌํ๋ฅผ ์ํด ๊ธฐ๋ณธ ์์ฑ์์ ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ ์ํ getter๋ setter ์ค 1๊ฐ์ง๋ ์ ์๋์ด์ผ ํฉ๋๋ค..
๐๋ฐฑ์๋ : BackEnd
๋ก๊น
์ด ์ ํ์ํ ๊น?๋ฐฐํฌํ๊ฒฝ์์ ๋์ ์ํ๋ฅผ ํ์ธํ๊ธฐ ์ํด์ ํ์ํฉ๋๋ค.๊ธฐ์กด์ System.out.println(), System.err.println()๊ณผ ๊ฐ์ ํ๋ก์ฐ๋ก๋ ํ๊ณ๊ฐ ์์ต๋๋ค.๋ก๊น
์ด ๊ธฐ๋กํ๋ ๋ ๊ฐ์ง ์ฌํญ์๋น์ค ๋์ ์ํ์ฅ์ (exceptino || error)๋ก๊น
ํ๋ ์์ํฌSLF4JLogbackLog4jnlogSystem.out.println()๋ณด๋ค ์ข์ ์ ์ถ๋ ฅ ํ์์ ์ง์ ํ ์ ์์๋ก๊ทธ ๋ ๋ฒจ์ ์ค์ ํ์ฌ ๋จ๊ธฐ๊ณ ์ถ์ ๋ก๊ทธ๋ฅผ ๋ณ๋๋ก ์ง์ ํ ์ ์์๊ฐ๋ฐ ์๋ฒ์์๋ ๋ชจ๋ ๋ก๊ทธ๋ฅผ ์ถ๋ ฅํ๊ณ , ์ด์์๋ฒ์์๋ ์ถ๋ ฅํ์ง ์๋ ๋ฑ ๋ก๊ทธ๋ฅผ ์ํฉ์ ๋ง๊ฒ ์กฐ์ ํ ์ ์๋ค์ฝ์ ๋ฟ ์๋๋ผ, ํ์ผ์ด๋ ๋คํธ์ํฌ๋ฑ ๋ก๊ทธ๋ฅผ ๋ณ๋์ ์์น์ ๋จ๊ธธ ์ ์์์ฑ๋ฅ๋ System.out.println()๋ณด๋ค ์ข์!๋ก๊ทธ๋ ๋ฒจ(Fatal..
๐์ฝ๋ฉํ
์คํธ:CodingTest
๋ฌธ์ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/250136# ํ๋ก๊ทธ๋๋จธ์ค์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์
๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์
๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.programmers.co.kr ํ์ด๊ณผ์ ๊ฐ ์ด ๋ง๋ค ํ๋์ฉ ์๋๋ก ๋ด๋ ค๊ฐ๋ฉฐ ํ์์ ์ํํฉ๋๋ค. ์ด๋ ์ด๋ฏธ ๊ณ์ฐ ๋ ์์ญ์ ๋ค์ ๊ณ์ฐํ์ง ์๊ธฐ ์ํด ๋ฉ๋ชจ๋ฆฌ์ ์ด์
์ ํด์ค์ผ ํฉ๋๋ค. ๋ฉ๋ชจ๋ฆฌ์ ์ด์
์ ์ํด ์์ญ๋ฒ ๋ฒํธ๋ฅผ ํ ๋นํ๊ณ HashMap์ ํ์ฉํด ๊ทธ ํฌ๊ธฐ๋ฅผ ์ ์ฅํ์ต๋๋ค. ๋ฉ๋ชจ๋ฆฌ์ ์ด์
1. ์์ ์ธ ์์ญ(1)์ ๋ง๋๊ฒ ๋๋ฉด, ํด๋น ์์ญ์ ํฌ๊ธฐ๋ฅผ bfs๋ก ํ์ธํฉ๋๋ค. ์ด๋, ์์ญ๋ณ ๋ฒํธ (์ ๋ -1,-2,-3 ... ์์๋ก ํ..