๐ฅ๏ธ Study Note/Coding Test
programmers / level.2 / ์ด์ง ๋ณํ ๋ฐ๋ณตํ๊ธฐ(C++)
https://school.programmers.co.kr/learn/courses/30/lessons/70129 ๋ฌธ์ ์ค๋ช 0๊ณผ 1๋ก ์ด๋ฃจ์ด์ง ์ด๋ค ๋ฌธ์์ด x์ ๋ํ ์ด์ง ๋ณํ์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ํฉ๋๋ค. x์ ๋ชจ๋ 0์ ์ ๊ฑฐํฉ๋๋ค. x์ ๊ธธ์ด๋ฅผ c๋ผ๊ณ ํ๋ฉด, x๋ฅผ "c๋ฅผ 2์ง๋ฒ์ผ๋ก ํํํ ๋ฌธ์์ด"๋ก ๋ฐ๊ฟ๋๋ค. ์๋ฅผ ๋ค์ด, x = "0111010"์ด๋ผ๋ฉด, x์ ์ด์ง ๋ณํ์ ๊ฐํ๋ฉด x = "0111010" -> "1111" -> "100" ์ด ๋ฉ๋๋ค. 0๊ณผ 1๋ก ์ด๋ฃจ์ด์ง ๋ฌธ์์ด s๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. s๊ฐ "1"์ด ๋ ๋๊น์ง ๊ณ์ํด์ s์ ์ด์ง ๋ณํ์ ๊ฐํ์ ๋, ์ด์ง ๋ณํ์ ํ์์ ๋ณํ ๊ณผ์ ์์ ์ ๊ฑฐ๋ ๋ชจ๋ 0์ ๊ฐ์๋ฅผ ๊ฐ๊ฐ ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ์ ํ..
programmers / level.2 / ์ฌ๋ฐ๋ฅธ ๊ดํธ(C++)
https://school.programmers.co.kr/learn/courses/30/lessons/12909 ๋ฌธ์ ์ค๋ช ๊ดํธ๊ฐ ๋ฐ๋ฅด๊ฒ ์ง์ง์ด์ก๋ค๋ ๊ฒ์ '(' ๋ฌธ์๋ก ์ด๋ ธ์ผ๋ฉด ๋ฐ๋์ ์ง์ง์ด์ ')' ๋ฌธ์๋ก ๋ซํ์ผ ํ๋ค๋ ๋ป์ ๋๋ค. ์๋ฅผ ๋ค์ด "()()" ๋๋ "(())()" ๋ ์ฌ๋ฐ๋ฅธ ๊ดํธ์ ๋๋ค. ")()(" ๋๋ "(()(" ๋ ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ์ ๋๋ค. '(' ๋๋ ')' ๋ก๋ง ์ด๋ฃจ์ด์ง ๋ฌธ์์ด s๊ฐ ์ฃผ์ด์ก์ ๋, ๋ฌธ์์ด s๊ฐ ์ฌ๋ฐ๋ฅธ ๊ดํธ์ด๋ฉด true๋ฅผ return ํ๊ณ , ์ฌ๋ฐ๋ฅด์ง ์์ ๊ดํธ์ด๋ฉด false๋ฅผ return ํ๋ solution ํจ์๋ฅผ ์์ฑํด ์ฃผ์ธ์. ์ ํ์ฌํญ ๋ฌธ์์ด s์ ๊ธธ์ด : 100,000 ์ดํ์ ์์ฐ์ ๋ฌธ์์ด s๋ '(' ๋๋ ')' ๋ก๋ง ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค. ์ ์ถ๋ ฅ ์ s an..
programmers / level.2 / ์ต์๊ฐ ๋ง๋ค๊ธฐ(C++)
https://school.programmers.co.kr/learn/courses/30/lessons/12941 ๋ฌธ์ ์ค๋ช ๊ธธ์ด๊ฐ ๊ฐ์ ๋ฐฐ์ด A, B ๋๊ฐ๊ฐ ์์ต๋๋ค. ๊ฐ ๋ฐฐ์ด์ ์์ฐ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.๋ฐฐ์ด A, B์์ ๊ฐ๊ฐ ํ ๊ฐ์ ์ซ์๋ฅผ ๋ฝ์ ๋ ์๋ฅผ ๊ณฑํฉ๋๋ค. ์ด๋ฌํ ๊ณผ์ ์ ๋ฐฐ์ด์ ๊ธธ์ด๋งํผ ๋ฐ๋ณตํ๋ฉฐ, ๋ ์๋ฅผ ๊ณฑํ ๊ฐ์ ๋์ ํ์ฌ ๋ํฉ๋๋ค. ์ด๋ ์ต์ข ์ ์ผ๋ก ๋์ ๋ ๊ฐ์ด ์ต์๊ฐ ๋๋๋ก ๋ง๋๋ ๊ฒ์ด ๋ชฉํ์ ๋๋ค. (๋จ, ๊ฐ ๋ฐฐ์ด์์ k๋ฒ์งธ ์ซ์๋ฅผ ๋ฝ์๋ค๋ฉด ๋ค์์ k๋ฒ์งธ ์ซ์๋ ๋ค์ ๋ฝ์ ์ ์์ต๋๋ค.) ์๋ฅผ ๋ค์ด A = [1, 4, 2] , B = [5, 4, 4] ๋ผ๋ฉด A์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 1, B์์ ์ฒซ๋ฒ์งธ ์ซ์์ธ 5๋ฅผ ๋ฝ์ ๊ณฑํ์ฌ ๋ํฉ๋๋ค. (๋์ ๋ ๊ฐ : 0 + 5(1x5) = 5) A์์ ๋..
programmers / level.2 / ์ฐ์ต๋ฌธ์ : JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ(C++)
https://school.programmers.co.kr/learn/courses/30/lessons/12951 ๋ฌธ์ ํ์ด ๋จ์ด๋ฅผ ๊ตฌ๋ถํ๋ ์กฐ๊ฑด์ ์ ํ์ ํ๋ ๊ฒ ์ค์ํ ๋ฌธ์ ์๋ค. ๋๋ ํ์ฌ ๋ฌธ์๊ฐ ๊ณต๋ฐฑ์ด๊ณ ๋ค์ ๋ฌธ์๊ฐ ๊ณต๋ฐฑ์ด ์๋๋ฉด ๋จ์ด๊ฐ ์ข ๋ฃ๋์๋ค๊ณ ํ๋จํ๋ค. ๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๋ ํ์ฌ ๋ฌธ์๊ฐ ๊ณต๋ฐฑ์ด ์๋๊ณ ์ด์ ๋ฌธ์๊ฐ ๊ณต๋ฐฑ์ด๋ฉด ๋จ์ด์ ์ฒซ ๊ธ์๋ผ๊ณ ํ๋จํ๋ค. ๋๋ ์ข ๋ฃ ์กฐ๊ฑด์ ํ๋จํ๊ณ ๋ค๋ฅธ ์ฌ๋์ ์์ ์กฐ๊ฑด์ ํ๋จํ๋ค. ์ด ๋ฌธ์ ๋ ๋จ์ด์ ์ฒซ ์ํ๋ฒณ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก ๋ฐ๊พธ๊ณ ๋๋จธ์ง๋ ์๋ฌธ์๋ก ๋ฐ๊พธ๋ ๋ฌธ์ ์์ผ๋ฏ๋ก ์์ ์กฐ๊ฑด์ ํ๋จํ๋ ๊ฒ ๋ ๊ด์ฐฎ์์ ๊ฑฐ๋ผ๊ณ ์๊ฐํ๋ค. ๋ํ tolower, toupper ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ ๊ฐ๋จํ ๋ฌธ์ ์ด๋ค. ๋๋ ์ด ํจ์๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ํ์๋ค. ๋ด ํ์ด #includ..
programmers / level.2 / ์ฐ์ต๋ฌธ์ : ์ต๋๊ฐ๊ณผ ์ต์๊ฐ (c++)
๋ฌธ์ ์ค๋ช ๋ฌธ์์ด s์๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋ ์ซ์๋ค์ด ์ ์ฅ๋์ด ์์ต๋๋ค. str์ ๋ํ๋๋ ์ซ์ ์ค ์ต์๊ฐ๊ณผ ์ต๋๊ฐ์ ์ฐพ์ ์ด๋ฅผ "(์ต์๊ฐ) (์ต๋๊ฐ)"ํํ์ ๋ฌธ์์ด์ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํ์ธ์.์๋ฅผ๋ค์ด s๊ฐ "1 2 3 4"๋ผ๋ฉด "1 4"๋ฅผ ๋ฆฌํดํ๊ณ , "-1 -2 -3 -4"๋ผ๋ฉด "-4 -1"์ ๋ฆฌํดํ๋ฉด ๋ฉ๋๋ค. ์ ํ ์กฐ๊ฑด s์๋ ๋ ์ด์์ ์ ์๊ฐ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด ์์ต๋๋ค. ์ ์ถ๋ ฅ ์ s return "1 2 3 4" "1 4" "-1 -2 -3 -4" "-4 -1" "-1 -1" "-1 -1" ๋ด ํด๋ต #include #include using namespace std; string solution(string s) { string answer = ""; string str_cur{}..