Algorithm
-
[Algorithm] ์๋ผํ ์คํ ๋ค์ค์ ์ฒด (Swift/C++)Algorithm 2022. 2. 1. 13:50
์๋ผํ ์คํ ๋ค์ค์ ์ฒด๋ ๊ณ ๋ ๊ทธ๋ฆฌ์ค์ ์ํ์ ์๋ผํ ์คํ ๋ค์ค๊ฐ ๋ง๋ค์ด ๋ธ ์์๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋ง์น ์ฒด๋ก ์น๋ฏ์ด ์๋ฅผ ๊ฑธ๋ฌ๋ธ๋ค๊ณ ํด์ ๋ถ์ฌ์ง ์ด๋ฆ์ผ๋ก, ์ฃผ๋ก ๋๋์ ์์๋ฅผ ํ ๋ฒ์ ํ๋ณํ ๋ ์ฌ์ฉํ๋ค. ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ ์์๋ ์๋์ ๊ฐ๋ค. 1. ํ๋ณํ ์ซ์์ ํฌ๊ธฐ๋งํผ ๋ฐฐ์ด์ ํ ๋นํ๊ณ , ๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ฅผ ํด๋น ๋ฐฐ์ด ์์์ ๊ฐ์ผ๋ก ์ ์ฅํ๋ค. 2. ์ซ์ 2๋ถํฐ ์์ํด์ ์ฐจ๋ก๋๋ก 2์ ๋ฐฐ์์ ํด๋นํ๋ ์ซ์๋ฅผ ์ธ๋ฑ์ค๋ก ๊ฐ์ง ๋ฐฐ์ด ์์์ ๊ฐ๋ค์ ๋ชจ๋ 0์ผ๋ก ๋ณ๊ฒฝํ๋ค. ์ด ๋, ์๊ธฐ ์์ ์ธ 2๋ ๋ณ๊ฒฝํ์ง ์๋๋ค. 3. ๋ค์์ ์ซ์ 3๋ถํฐ ์์ํด์ ์ฐจ๋ก๋๋ก 3์ ๋ฐฐ์์ ํด๋นํ๋ ์ซ์๋ฅผ ์ธ๋ฑ์ค๋ก ๊ฐ์ง ๋ฐฐ์ด ์์์ ๊ฐ๋ค์ ๋ชจ๋ 0์ผ๋ก ๋ณ๊ฒฝํ๋ค. ์ด๋ฒ์๋ ์ญ์ ์๊ธฐ ์์ ์ธ 3์ ๋ณ๊ฒฝํ์ง ์๋๋ค. 4. ์ซ์ 4์ ๊ทธ ๋ฐฐ์์ ํด๋นํ..
-
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค ์คํจ์จ Level1 (Swift)Algorithm 2022. 2. 1. 03:17
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์คํจ์จ ์คํจ์จ ์ํผ ๊ฒ์ ๊ฐ๋ฐ์ ์ค๋ ๋ฆฌ๋ ํฐ ๊ณ ๋ฏผ์ ๋น ์ก๋ค. ๊ทธ๋ ๊ฐ ๋ง๋ ํ๋์ฆ ์ค์ฒ์ฑ์ด ๋์ฑ๊ณต์ ๊ฑฐ๋์ง๋ง, ์์ฆ ์ ๊ท ์ฌ์ฉ์์ ์๊ฐ ๊ธ๊ฐํ ๊ฒ์ด๋ค. ์์ธ์ ์ ๊ท ์ฌ์ฉ์์ ๊ธฐ์กด ์ฌ์ฉ์ ์ฌ์ด์ ์ค programmers.co.kr ๋ฌธ์ ํ์ด ํธ๋ ๋ฐ ์ ๋ง ์ค๋ ๊ฑธ๋ฆฐ ๋ฌธ์ ... ๋์ถฉ ๋จธ๋ฆฟ์์ผ๋ก ํฐ ๊ทธ๋ฆผ์ ๊ทธ๋ฆฌ๊ณ , while ๋ฌธ์ผ๋ก ์ฒ๋ฆฌํ๋ ค๊ณ ํ๋ค. ์ฒซ๋ฒ์งธ ์๊ฐ ๋จผ์ ์ ๋ ฅ์ผ๋ก ์ค๋ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํด์ผ์ง! ๊ทธ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋์ด์์ผ๋, ์์์๋ถํฐ ์ฐจ๋ก๋๋ก ์ฒดํฌํ๋ฉด ๋๊ฒ ๋ค! [1, 2, 2, 2, 3, 3, 4, 6]์ ์์๋ก ๋ค์. 1๋จ๊ณ์ ๋จธ๋ฌผ๋ฌ์๋ ์ฌ๋์ ๋ฐฐ์ด์ 0๋ฒ์งธ ์ธ๋ฑ์ค 1๋ช ์ด๋ค. 2๋จ๊ณ์ ๋จธ๋ฌผ๋ฌ์๋ ์ฌ๋์ ๋ฐฐ์ด์ 1, 2, 3๋ฒ์งธ ์ธ๋ฑ์ค์ 3๋ช ์ด๋ค. 3๋จ๊ณ๋ ๋ฐฐ์ด์..
-
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค ์์ ์ํธ Level 1 (Swift)Algorithm 2022. 1. 31. 09:19
์ฝ๋ฉํ ์คํธ ์ฐ์ต - ์์ ์ํธ ์ด๋ค ๋ฌธ์ฅ์ ๊ฐ ์ํ๋ฒณ์ ์ผ์ ํ ๊ฑฐ๋ฆฌ๋งํผ ๋ฐ์ด์ ๋ค๋ฅธ ์ํ๋ฒณ์ผ๋ก ๋ฐ๊พธ๋ ์ํธํ ๋ฐฉ์์ ์์ ์ํธ๋ผ๊ณ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด "AB"๋ 1๋งํผ ๋ฐ๋ฉด "BC"๊ฐ ๋๊ณ , 3๋งํผ ๋ฐ๋ฉด "DE"๊ฐ ๋ฉ๋๋ค. "z"๋ 1๋งํผ ๋ฐ programmers.co.kr ๋ฌธ์ ํ์ด ์์คํค์ฝ๋ ์ด์ฉํด์ ํ์ ์ ๋ ฅ ๋ฐ์ ๋ฌธ์์ด์ ๋ฐฐ์ด์ ์ ์ฅํ ํ, ๋ฐฐ์ด์ ํ๋ํ๋ for ๋ฌธ์ ํตํด ์ํ ์์คํค์ฝ๋๋ฅผ ๊ตฌํ ํ, ์์คํค์ฝ๋์ n์ ๋ํด์ฃผ์๋ค. ๊ณต๋ฐฑ์ ๋ฌด์ํ๊ณ , ๋๋ฌธ์์ธ ๊ฒฝ์ฐ์ ์๋ฌธ์์ธ ๊ฒฝ์ฐ๋ก ๋๋ ์ ํ์ ๋๋ฌธ์์ธ ๊ฒฝ์ฐ, ์์คํค์ฝ๋์ n์ ๋ํ ๊ฒฐ๊ณผ๊ฐ 90์ ๋์ ๊ฒฝ์ฐ 26์ ๋บ์. ์๋ฌธ์์ธ ๊ฒฝ์ฐ, ์์คํค์ฝ๋์ n์ ๋ํ ๊ฒฐ๊ณผ๊ฐ 122๋ฅผ ๋์ ๊ฒฝ์ฐ 26์ ๋บ์. ๊ทธ๋ฆฌ๊ณ ๋์ ๋ณ๊ฒฝ๋ ์์คํค์ฝ๋๋ฅผ Characte..
-
[Algorithm] ๋ฐฑ์ค 1157 ๋จ์ด ๊ณต๋ถ (Swift/C++)Algorithm 2022. 1. 31. 02:04
1157๋ฒ: ๋จ์ด ๊ณต๋ถ ์ํ๋ฒณ ๋์๋ฌธ์๋ก ๋ ๋จ์ด๊ฐ ์ฃผ์ด์ง๋ฉด, ์ด ๋จ์ด์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋ ์ํ๋ฒณ์ด ๋ฌด์์ธ์ง ์์๋ด๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋จ, ๋๋ฌธ์์ ์๋ฌธ์๋ฅผ ๊ตฌ๋ถํ์ง ์๋๋ค. www.acmicpc.net ์๊ณ ๋ฆฌ์ฆ ๋ถ๋ฅ ๊ตฌํ ๋ฌธ์์ด ๋ฌธ์ ํ์ด ๋จผ์ ๋ฌธ์๋ฅผ ์ ๋ ฅ ๋ฐ๊ณ , ์ํ๋ฒณ์ ์ซ์๋ฅผ ์ ๋ฐฐ์ด alphabet์ ์์ฑํ๋ค. alphabet ๋ฐฐ์ด๋ค์ ์์๋ ๋ชจ๋ 0์ผ๋ก ์ด๊ธฐํํด์ค๋ค. ๋ฌธ์ ์์ ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก ์ถ๋ ฅํ๋ผ๊ณ ํ๊ธฐ ๋๋ฌธ์, for ๋ฌธ์ ๋๋ฉด์, word์ ๋ฌธ์ ์ค ์๋ฌธ์์ธ ๊ฒ์ด ์๋ค๋ฉด 32๋ฅผ ๋นผ์ ๋๋ฌธ์๋ก ๋ฐ๊ฟ์ค๋ค. alphabet ๋ฐฐ์ด์ 0๋ฒ์งธ ์ธ๋ฑ์ค๋ A๊ฐ ๋์จ ํ์, 1๋ฒ์งธ ์ธ๋ฑ์ค๋ B๊ฐ ๋์จ ํ์, .. 25๋ฒ์งธ ์ธ๋ฑ์ค๋ Z๊ฐ ๋์จ ํ์๊ฐ ๋๋ค. ๋ฐ๋ผ์ ์์คํค์ฝ๋๊ฐ์์..
-
[Algorithm] ๋ฐฑ์ค 10809 ์ํ๋ฒณ ์ฐพ๊ธฐ(Swift/C++)Algorithm 2022. 1. 30. 18:34
10809๋ฒ: ์ํ๋ฒณ ์ฐพ๊ธฐ ๊ฐ๊ฐ์ ์ํ๋ฒณ์ ๋ํด์, a๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, b๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น, ... z๊ฐ ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค. ๋ง์ฝ, ์ด๋ค ์ํ๋ฒณ์ด ๋จ์ด์ ํฌํจ๋์ด ์์ง ์๋ค๋ฉด -1์ ์ถ www.acmicpc.net ์๊ณ ๋ฆฌ์ฆ ๋ถ๋ฅ ๊ตฌํ ๋ฌธ์์ด ๋ฌธ์ ํ์ด ๋จผ์ ๋จ์ด S๋ฅผ ์ ๋ ฅ๋ฐ์ ํ, ๋จ์ด์ ๊ฐ ์ํ๋ฒณ์ Character ๋ฐฐ์ด๋ก ์ ์ฅํด์ค๋ค. ๊ทธ๋ฆฌ๊ณ ๋จ์ด S์ ๊ฐ ์ํ๋ฒณ์ ๋ํด์ ํด๋น ์ํ๋ฒณ๋ค์ด ์ฒ์ ๋ฑ์ฅํ๋ ์์น๋ฅผ ์ ์ฅํ๊ธฐ ์ํด -1๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด arr์ ์์ฑํ๋ค. ์ด ๋, ์ํ๋ฒณ์ ๊ฐฏ์๋ 26๊ฐ์ด๋ฏ๋ก ๋ฐฐ์ด์ ํฌ๊ธฐ๋ 26์ด๋ค. ์ ๋ ฅ์ baekjoon์ผ๋ก ํ๋ฉด, ๋ฐฐ์ด S์ ์ ์ฅ๋ ๊ฒ์ ๋ค์๊ณผ ๊ฐ๋ค. ์ฆ, S[0] = "b" S[1] = "a" S[2] = "e" ..
-
[Algorithm] ๋ฐฑ์ค 11654 ์์คํค์ฝ๋ (Swift/C++)Algorithm 2022. 1. 30. 17:36
11654๋ฒ: ์์คํค ์ฝ๋ ์ํ๋ฒณ ์๋ฌธ์, ๋๋ฌธ์, ์ซ์ 0-9์ค ํ๋๊ฐ ์ฃผ์ด์ก์ ๋, ์ฃผ์ด์ง ๊ธ์์ ์์คํค ์ฝ๋๊ฐ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. www.acmicpc.net ์๊ณ ๋ฆฌ์ฆ ๋ถ๋ฅ ๊ตฌํ ๋ฌธ์ ํ์ด Swift์์ ์์คํค์ฝ๋ ๊ฐ์ ๋ถ๋ฌ์ค๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ๋ค. ๋จผ์ ์ ๋ ฅ์ ๋ฐ์ ํ, ์ ๋ ฅ ๊ฐ์ Character ํ์ ์ผ๋ก ๋ฐ๊ฟ์ค๋ค. ๊ทธ๋ฆฌ๊ณ ๋์, Character ํ์ ์ ์๋ asciiValue๋ฅผ ํตํด ์์คํค๊ฐ์ ๋ถ๋ฌ์จ๋ค. asciiValue๋ Character์ ์ธ์คํด์ค ํ๋กํผํฐ๋ก, ASCII ๋ฌธ์์ ์ธ์ฝ๋ฉ ๊ฐ์ ์๋ฏธํ๋ค. ์๋ ์ฝ๋์ ๊ทธ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ๋ค. ์์ค ์ฝ๋ (Swift) var word = Int(Character(readLine()!).asciiValue!) print(word)..
-
[Algorithm] ์๊ฐ ๋ณต์ก๋ & ๊ณต๊ฐ ๋ณต์ก๋Algorithm 2022. 1. 12. 02:35
์๊ณ ๋ฆฌ์ฆ์ ํ๊ฐํ๋ ๋ ๊ฐ์ง ์์๋ ์๊ฐ ๋ณต์ก๋ (Time Comlexity)์ ๊ณต๊ฐ ๋ณต์ก๋ (Complexity)๋ก ๋๋๋ค. ์ด ๋ ๊ฐ์ง๋ ์๋์ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ํ๊ฐํ๋ ๊ฒ์ธ๋ฐ, ์๊ณ ๋ฆฌ์ฆ์ ์ํ ์๊ฐ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ์๊ฐ ๋ณต์ก๋๋ผ ํ๊ณ ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋์ ๋ํ ๋ถ์ ๊ฒฐ๊ณผ๋ฅผ ๊ณต๊ฐ ๋ณต์ก๋๋ผ๊ณ ํ๋ค. ํ๋ก๊ทธ๋จ์ ์งค ๋์๋ ํญ์ worst case๋ฅผ ๊ณ ๋ คํด์ผํ๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์๊ฐ ๋ณต์ก๋์ ๊ณต๊ฐ ๋ณต์ก๋๋ ๋ณดํต Big-Oh ํ๊ธฐ๋ฒ์ ์ด์ฉํด์ ๋ํ๋ธ๋ค. ใ ค 1. ์๊ฐ ๋ณต์ก๋ (Time Complexity) ์๊ฐ ๋ณต์ก๋๋ ์๊ณ ๋ฆฌ์ฆ์ ์ํ ์๊ฐ ๋ถ์ ๊ฒฐ๊ณผ์ด๋ค. ์๊ฐ ๋ณต์ก๋๋ฅผ ํ๊ฐํ ๋์๋ ๋จผ์ ์ฐ์ฐ์ ํ์๋ฅผ ์ธ๊ณ , ์ฒ๋ฆฌํด์ผ ํ ๋ฐ์ดํฐ์ ์ n์ ๋ํ ์ฐ์ฐํ์์ ํจ์ T(n)์ ๋ง๋ ๋ค. ์๊ฐ ๋ณต์ก๋๋ ๋ค์๊ณผ ๊ฐ์ด 3๊ฐ์ง๋ก..
-
[Algorithm] ์๊ณ ๋ฆฌ์ฆ ํ ์ ๋ฆฌ (C++)Algorithm 2022. 1. 5. 10:43
1. auto list l; string word; cin >> word; for (auto c: word) { l.push_back(c); // word์ ์ ๋ ฅ๋ ๋จ์ด๋ฅผ ํ๋ํ๋ l์ ๋ฃ๋๋ค. } for (auto c: l) cout > word; for (auto c: word) { l.push_back(c); // word์ ์ ๋ ฅ๋ ๋จ์ด๋ฅผ ํ๋ํ๋ l์ ๋ฃ๋๋ค. } for (auto i = l.begin(); i != l.end(); i++) { cout word; for (auto c: word) { l.push_back(c); // word์ ์ ๋ ฅ๋ ๋จ์ด๋ฅผ ํ๋ํ๋ l์ ๋ฃ๋๋ค. } for (auto i = l.rbegin(); i != l.rend(); i++) { cout