์ปดํจํฐ์์ ๊ดํธ๊ฐ ํฌํจ๋ ์ฐ์ฐ์ ์ฝ๊ฒ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋, ์ค์ ํํ์(Infix)๋ณด๋ค ํ์ ํํ์(Postfix)์ ํตํด ๊ณ์ฐํ๋ฉด ์ฝ๊ฒ ์ฒ๋ฆฌํ ์ ์๋ค. ์ด๋ Stack์ ํตํด ์ฝ๊ฒ ๊ตฌํํ ์ ์์ผ๋ฉฐ, ๋ณํํ ์์ ๊ณ์ฐํ๋ ๊ฒ์ ์ด๋ ต์ง ์๋ค. Stack์ ์ฌ์ฉํ์ฌ ๊ตฌํ ํ์ ํํ์ ๋ณํ int priority(char c) { if (c == '(') return 0; else if (c == '+' || c == '-') return 1; // *, / ์ธ ๊ฒฝ์ฐ return 2; } string changePostfix(string target) { stack s; string prefix; for (int i = 0; target[i]; i++) { if (target[i] == '(') s.push..
c++์์ ๋ฌธ์์ด์ ๋ค๋ฃจ๋ ๊ฒฝ์ฐ๋ ํฌ๊ฒ ๋ถ๋ถ๋ฌธ์์ด์ ๋ง๋๋ ๊ฒฝ์ฐ์ ํน์ ๊ตฌ๋ถ๋ฌธ์(delimiter)๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ๋๋๋ ๊ฒฝ์ฐ์ด๋ค. ์ด๋ ต์ง ์์ง๋ง, ๋ชจ๋ฅด๋ฉด ์ฝ์งํด์ผํ๋ ์ ๋ฆฌํด๋๊ณ ์ ํ๋ค. substr #include #include using namespace std; string getSubStr(string s, int len) { string subStr; vector subStr; // ์๋ฅผ ๊ธธ์ด for (register int end = 1; end < len; end++) { // ์๋ฅผ ์์น for (register int start = 0; start < len; start++) { subStr.push_back(s.substr(start, end)); } } return subStr;..
Trie๋ฅผ ๊ฐ๋ ๋ง ์๊ณ , ์๊ฐํด๋ณด๋ ์ง์ ๊ตฌํํด๋ณธ ์ ์ด ์์๋ค. ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด๋ฅผ ํ ๋, ์๊ธดํ๊ฒ ์ฌ์ฉํ๊ธฐ ์ํ ๋ชฉ์ ์ผ๋ก ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค. ๋ค๋ฅธ ๊ณณ์์ ๊ฒ์ํ ์ ์๋ ๊ฒ๊ณผ ๊ฐ์ด ๋์ ์ผ๋ก ํ ๋นํ๋ ๊ฒ์ด ์๋, ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง๊ฒ ์ ์ ์ผ๋ก Trie๋ฅผ ํ ๋นํด๋๊ณ , ์ฌ์ฉํ๋ ๋ฐฉ์์ ๋ค๋ฃจ๊ณ ์ ํ๋ค. Trie? ํธ๋ผ์ด (์ปดํจํ ) - ์ํค๋ฐฑ๊ณผ, ์ฐ๋ฆฌ ๋ชจ๋์ ๋ฐฑ๊ณผ์ฌ์ "A", "to", "tea", "ted", "ten", "i", "in", "inn"๋ฅผ ํค๋ก ๋ ํธ๋ผ์ด. ์ด ์์ ์๋ ๋ชจ๋ ์์ ๋ ธ๋๊ฐ ์ํ๋ฒณ ์์ผ๋ก ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ์ ๋ ฌ๋์ด ์์ง๋ ์๋ค. (๋ฃจํธ ๋ ธ๋์ 't' ๋ ธ๋) ํธ๋ผ์ด(trie)๋ ์ปดํจํฐ ko.wikipedia.org Trie๋ root๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฌธ์์ด์ ์ ์ฅํ ๋, ๊ฐ ๋ ธ๋์ ์ด๋ค ..
์ฝ๋ฉ ํ ์คํธ ๋ฌธ์ ๋ฅผ ํ๋ฉด์ PQ(Priority Queue)๋ฅผ ์ง์ ๊ตฌํํ์ฌ์ผ ํ ๊ฒฝ์ฐ๊ฐ ์์๋ค. ๋จ์ํ Parent, Left Child, Right Child์ ์ธ๋ฑ์ค๋ง ์๋ ๊ฒ์ด ์๋๊ณ , push, pop, updaet, erase ๋ชจ๋ ๊ธฐ๋ฅ์ ๋ํด ์ด๋ค ์์ผ๋ก ๋์ํ๋์ง ๊ฐ๋ตํ ์ ๋ฆฌํด๋ณด๊ณ ์ ํ๋ค. PQ์ ์ฝ์ ํ ๋ฐ์ดํฐ struct Info { int idx; int score; } PQ์ ์ฝ์ ํ ๋ฐ์ดํฐ๋ ์ผ๋ฐ ๋ณ์๊ฐ ์๋, ์ฌ์ฉ์ ์ง์ ๋ณ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ๋ ฌ์ด ๊ฐ๋ฅํ ๊ฒฝ์ฐ๋ฅผ ๋ค๋ฃจ๊ณ ์ ํ๋ค. ์ ๊ตฌ์กฐ์ฒด ์ฒ๋ผ score๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ๋ ์ ๋ ์๊ณ , ๊ฒฝ์ฐ์ ๋ฐ๋ผ ๋ค์ํ ์ฐ์ ์์์ ๋ฐ๋ผ ์ ๋ ฌ์ํฌ ์ ์๋ค. `idx`์ ๊ฒฝ์ฐ, PQ์ push, pop์ ํ ๋๋ ํ์ํ์ง ์์ง๋ง, PQ์ update, e..