๐ฅ๏ธ Study Note
[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ๋ณด์ ์ผํ (C++)
https://school.programmers.co.kr/learn/courses/30/lessons/67258# ๋ฌธ์ ์ค๋ช [๋ณธ ๋ฌธ์ ๋ ์ ํ์ฑ๊ณผ ํจ์จ์ฑ ํ ์คํธ ๊ฐ๊ฐ ์ ์๊ฐ ์๋ ๋ฌธ์ ์ ๋๋ค.] ๊ฐ๋ฐ์ ์ถ์ ์ผ๋ก ์ธ๊ณ ์ต๊ณ ์ ๊ฐ๋ถ๊ฐ ๋ ์ดํผ์น๋ ์คํธ๋ ์ค๋ฅผ ๋ฐ์ ๋๋ฉด ์ด๋ฅผ ํ๊ธฐ ์ํด ์คํ๋ผ์ธ ๋งค์ฅ์ ์ผํ์ ํ๋ฌ ๊ฐ๊ณค ํฉ๋๋ค. ์ดํผ์น๋ ์ผํ์ ํ ๋๋ฉด ๋งค์ฅ ์ง์ด๋์ ํน์ ๋ฒ์์ ๋ฌผ๊ฑด๋ค์ ๋ชจ๋ ์น์ธ์ด ๊ตฌ๋งคํ๋ ์ต๊ด์ด ์์ต๋๋ค. ์ด๋ ๋ ์คํธ๋ ์ค๋ฅผ ํ๊ธฐ ์ํด ๋ณด์ ๋งค์ฅ์ ์ผํ์ ํ๋ฌ ๊ฐ ์ดํผ์น๋ ์ด์ ์ฒ๋ผ ์ง์ด๋์ ํน์ ๋ฒ์์ ๋ณด์์ ๋ชจ๋ ๊ตฌ๋งคํ๋ ํน๋ณํ ์๋ ๋ชฉ์ ์ ๋ฌ์ฑํ๊ณ ์ถ์์ต๋๋ค. ์ง์ด๋ ๋ชจ๋ ์ข ๋ฅ์ ๋ณด์์ ์ ์ด๋ 1๊ฐ ์ด์ ํฌํจํ๋ ๊ฐ์ฅ ์งง์ ๊ตฌ๊ฐ์ ์ฐพ์์ ๊ตฌ๋งค ์๋ฅผ ๋ค์ด ์๋ ์ง์ด๋๋ 4์ข ๋ฅ์ ๋ณด์(RU..
![[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ๋ฑ์ฐ์ฝ์ค ์ ํ๊ธฐ (C++)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTTMic%2FbtsuGARyxP6%2F2tBFYgONVtFkAytW994Lg0%2Fimg.png)
[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ๋ฑ์ฐ์ฝ์ค ์ ํ๊ธฐ (C++)
https://school.programmers.co.kr/learn/courses/30/lessons/118669#qna ๋ฌธ์ ์ค๋ช XX์ฐ์ n๊ฐ์ ์ง์ ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ๊ฐ ์ง์ ์ 1๋ถํฐ n๊น์ง ๋ฒํธ๊ฐ ๋ถ์ด์์ผ๋ฉฐ, ์ถ์ ๊ตฌ, ์ผํฐ, ํน์ ์ฐ๋ด์ฐ๋ฆฌ์ ๋๋ค. ๊ฐ ์ง์ ์ ์๋ฐฉํฅ ํตํ์ด ๊ฐ๋ฅํ ๋ฑ์ฐ๋ก๋ก ์ฐ๊ฒฐ๋์ด ์์ผ๋ฉฐ, ์๋ก ๋ค๋ฅธ ์ง์ ์ ์ด๋ํ ๋ ์ด ๋ฑ์ฐ๋ก๋ฅผ ์ด์ฉํด์ผ ํฉ๋๋ค. ์ด๋, ๋ฑ์ฐ๋ก๋ณ๋ก ์ด๋ํ๋๋ฐ ์ผ์ ์๊ฐ์ด ์์๋ฉ๋๋ค. ๋ฑ์ฐ์ฝ์ค๋ ๋ฐฉ๋ฌธํ ์ง์ ๋ฒํธ๋ค์ ์์๋๋ก ๋์ดํ์ฌ ํํํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด 1-2-3-2-1 ์ผ๋ก ํํํ๋ ๋ฑ์ฐ์ฝ์ค๋ 1๋ฒ์ง์ ์์ ์ถ๋ฐํ์ฌ 2๋ฒ, 3๋ฒ, 2๋ฒ, 1๋ฒ ์ง์ ์ ์์๋๋ก ๋ฐฉ๋ฌธํ๋ค๋ ๋ป์ ๋๋ค. ๋ฑ์ฐ์ฝ์ค๋ฅผ ๋ฐ๋ผ ์ด๋ํ๋ ์ค ์ผํฐ ํน์ ์ฐ๋ด์ฐ๋ฆฌ๋ฅผ ๋ฐฉ๋ฌธํ ๋๋ง๋ค ํด์..
![[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ์๊ณผ ๋๋ (C++)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fq9GdH%2Fbtst6l740hH%2FNPxL7ZJ2ax6fkm2QsZwEP1%2Fimg.png)
[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ์๊ณผ ๋๋ (C++)
https://school.programmers.co.kr/learn/courses/30/lessons/92343 ๋ฌธ์ ์ค๋ช 2์ง ํธ๋ฆฌ ๋ชจ์ ์ด์์ ๊ฐ ๋ ธ๋์ ๋๋์ ์์ด ํ ๋ง๋ฆฌ์ฉ ๋์ฌ ์์ต๋๋ค. ์ด ์ด์์ ๋ฃจํธ ๋ ธ๋์์ ์ถ๋ฐํ์ฌ ๊ฐ ๋ ธ๋๋ฅผ ๋์๋ค๋๋ฉฐ ์์ ๋ชจ์ผ๋ ค ํฉ๋๋ค. ๊ฐ ๋ ธ๋๋ฅผ ๋ฐฉ๋ฌธํ ๋ ๋ง๋ค ํด๋น ๋ ธ๋์ ์๋ ์๊ณผ ๋๋๊ฐ ๋น์ ์ ๋ฐ๋ผ์ค๊ฒ ๋ฉ๋๋ค. ์ด๋, ๋๋๋ ์์ ์ก์๋จน์ ๊ธฐํ๋ฅผ ๋ ธ๋ฆฌ๊ณ ์์ผ๋ฉฐ, ๋น์ ์ด ๋ชจ์ ์์ ์๋ณด๋ค ๋๋์ ์๊ฐ ๊ฐ๊ฑฐ๋ ๋ ๋ง์์ง๋ฉด ๋ฐ๋ก ๋ชจ๋ ์์ ์ก์๋จน์ด ๋ฒ๋ฆฝ๋๋ค. ๋น์ ์ ์ค๊ฐ์ ์์ด ๋๋์๊ฒ ์ก์๋จนํ์ง ์๋๋ก ํ๋ฉด์ ์ต๋ํ ๋ง์ ์์ ์์ ๋ชจ์์ ๋ค์ ๋ฃจํธ ๋ ธ๋๋ก ๋์์ค๋ ค ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ์ ๊ทธ๋ฆผ์ ๊ฒฝ์ฐ(๋ฃจํธ ๋ ธ๋์๋ ํญ์ ์์ด ์์ต๋๋ค) 0๋ฒ ๋ ธ๋(๋ฃจํธ ๋ ธ๋)์์..
[ํ๋ก๊ทธ๋๋จธ์ค]level.3 - ๋ฏธ๋ก ํ์ถ ๋ช ๋ น์ด (C++)
๋ฌธ์ ์ค๋ช n x m ๊ฒฉ์ ๋ฏธ๋ก๊ฐ ์ฃผ์ด์ง๋๋ค. ๋น์ ์ ๋ฏธ๋ก์ (x, y)์์ ์ถ๋ฐํด (r, c)๋ก ์ด๋ํด์ ํ์ถํด์ผ ํฉ๋๋ค. ๋จ, ๋ฏธ๋ก๋ฅผ ํ์ถํ๋ ์กฐ๊ฑด์ด ์ธ ๊ฐ์ง ์์ต๋๋ค. ๊ฒฉ์์ ๋ฐ๊นฅ์ผ๋ก๋ ๋๊ฐ ์ ์์ต๋๋ค. (x, y)์์ (r, c)๊น์ง ์ด๋ํ๋ ๊ฑฐ๋ฆฌ๊ฐ ์ด k์ฌ์ผ ํฉ๋๋ค. ์ด๋, (x, y)์ (r, c)๊ฒฉ์๋ฅผ ํฌํจํด, ๊ฐ์ ๊ฒฉ์๋ฅผ ๋ ๋ฒ ์ด์ ๋ฐฉ๋ฌธํด๋ ๋ฉ๋๋ค. ๋ฏธ๋ก์์ ํ์ถํ ๊ฒฝ๋ก๋ฅผ ๋ฌธ์์ด๋ก ๋ํ๋์ ๋, ๋ฌธ์์ด์ด ์ฌ์ ์์ผ๋ก ๊ฐ์ฅ ๋น ๋ฅธ ๊ฒฝ๋ก๋ก ํ์ถํด์ผ ํฉ๋๋ค. ์ด๋ ๊ฒฝ๋ก๋ ๋ค์๊ณผ ๊ฐ์ด ๋ฌธ์์ด๋ก ๋ฐ๊ฟ ์ ์์ต๋๋ค. l: ์ผ์ชฝ์ผ๋ก ํ ์นธ ์ด๋ r: ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์นธ ์ด๋ u: ์์ชฝ์ผ๋ก ํ ์นธ ์ด๋ d: ์๋์ชฝ์ผ๋ก ํ ์นธ ์ด๋ ์๋ฅผ ๋ค์ด, ์ผ์ชฝ์ผ๋ก ํ ์นธ, ์๋ก ํ ์นธ, ์ผ์ชฝ์ผ๋ก ํ ์นธ ์์ง์๋ค๋ฉด, ..
[BOJ 11657] ๋ฐฑ์ค ํ์๋จธ์ - C++ ํ์ด
https://www.acmicpc.net/problem/11657 ๋ฌธ์ N๊ฐ์ ๋์๊ฐ ์๋ค. ๊ทธ๋ฆฌ๊ณ ํ ๋์์์ ์ถ๋ฐํ์ฌ ๋ค๋ฅธ ๋์์ ๋์ฐฉํ๋ ๋ฒ์ค๊ฐ M๊ฐ ์๋ค. ๊ฐ ๋ฒ์ค๋ A, B, C๋ก ๋ํ๋ผ ์ ์๋๋ฐ, A๋ ์์๋์, B๋ ๋์ฐฉ๋์, C๋ ๋ฒ์ค๋ฅผ ํ๊ณ ์ด๋ํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด๋ค. ์๊ฐ C๊ฐ ์์๊ฐ ์๋ ๊ฒฝ์ฐ๊ฐ ์๋ค. C = 0์ธ ๊ฒฝ์ฐ๋ ์๊ฐ ์ด๋์ ํ๋ ๊ฒฝ์ฐ, C < 0์ธ ๊ฒฝ์ฐ๋ ํ์๋จธ์ ์ผ๋ก ์๊ฐ์ ๋๋์๊ฐ๋ ๊ฒฝ์ฐ์ด๋ค. 1๋ฒ ๋์์์ ์ถ๋ฐํด์ ๋๋จธ์ง ๋์๋ก ๊ฐ๋ ๊ฐ์ฅ ๋น ๋ฅธ ์๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ด ์ฝ๋ ๋ฒจ๋งํฌ๋ ์ต๋จ ๊ฑฐ๋ฆฌ ์๊ณ ๋ฆฌ์ฆ์ ๊ณต๋ถํ๊ณ ์์ ๋ฅผ ํ์ด๋ดค๋ค. ์ฐธ๊ณ ๋ก costs๋ฅผ long long์ผ๋ก ๋์ด์ผํ๋ ์ด์ ๋ ๋ฒ์ค ๋ ธ์ ์ ์ต๋ ๊ฐ์ 500 -1 * ๊ฐ์ ์ ๊ฐ์ 6,000๋ฒ..