๋ชฉ๋กComputer Science/์๋ฃ๊ตฌ์กฐ & ์๊ณ ๋ฆฌ์ฆ (7)
์ฐ์ ๊ธฐ๋ก ๐ช
1. ๋ฒกํฐ ๋ด์ ์กด์ฌํ๋์ง ์ฌ๋ถ ํ์ (binary_search) ์ด ๊ฒฝ์ฐ์๋ ์ด์งํ์์ ์ฌ์ฉํ๋๊ฒ์ด ๋น ๋ฅด๋ค. ๋จ ์ด์งํ์์ ์ฌ์ฉํ๋ ค๋ฉด ์ ๋ ฌ์ด ๋์ด์์ด์ผ ํ๋ค. ์ ์ ์๋์ด์๋ค. ์๋์ ๊ฐ์ด ์ฌ์ฉํ๋ค. binary_search(์์๋ฒ์, ๋๋ฒ์, ์ฐพ์ ๊ฐ); ์์ ์ฝ๋ #include #include #include using namespace std; int main() { int num; cin >> num; vector vec = { 1,3,5,7,9 }; //์กด์ฌ์ 1, ๊ทธ๋ ์ง ์์ผ๋ฉด 0 ๋ฆฌํด if (binary_search(vec.begin(), vec.end(), num)) { cout num; vector vec = { 1,3,5,7,9 }; int idx = find(vec.begin(),..
19-> 1+ 9 = 10 ์ด๋ฐ์์ผ๋ก ์๋ฆฟ์๋ฅผ ๊ตฌํด์ฃผ๋ ์ฝ๋์ด๋ค. #include using namespace std; int seperateAndPlus(int x) { int res = 0; while (x != 0) { res = res + x % 10; x /= 10; } return res; } int main() { int num; cin >> num; cout
๊ฐ๋ ๋ถํ ์ ๋ณต ์๊ณ ๋ฆฌ์ฆ์ ์ฃผ์ด์ง ๋ฌธ์ ๋ฅผ ๋ ์ด์์ ๋ถ๋ถ๋ฌธ์ ๋ก ๋๋ ๋ค ๊ฐ ๋ฌธ์ ์ ๋ํ ๋ต์ ๊ณ์ฐํ๊ณ , ์ด๋ฅผ ๋ณํฉํด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ์๊ณ ๋ฆฌ์ฆ์ด๋ค. ์ข ๋ง๋ถ์ ํํ์ ๋น๋ฆฌ์๋ฉด ๊ฐ๊ฐ ๊ฒฉํ ๋ผ๊ณ ๊ฐ๋จํ ์ค๋ช ํ ์ ์๋ค. ๋ฐ๋ก ์์ ๋ฅผ ๋ณด๋๋ก ํ์. ์์ 1 : ์์ด์ ํฉ 1๋ถํฐ N๊น์ง์ ๊ฐ์ ๊ตฌํด์ผ ํ๋ค๊ณ ๊ฐ์ ํ์. ์ด๋ฅผ ๋จ์ ์ฌ๊ทํจ์๋ก ๊ตฌํํ๋ฉด ์๋์ ๊ฐ์ ๊ฒ์ด๋ค. #include using namespace std; int recursiveSum(int N) { if (N == 1) { return N; } else { return recursiveSum(N - 1) + N; } } int main() { int A; cin >> A; cout > A; cout
๊ฐ๋ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ๊ฐ๋ ์ ๊ต์ฅํ ๋จ์ํ๋ค. ๋ง ๊ทธ๋๋ก ํ์์ ์ผ๋ก, ๋ ์์ ๊ฐ์ฅ ํฐ ์ด์ต์ ์ถ๊ตฌํ๋ ๊ธฐ๋ฒ์ด๋ค. ์ค์ ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ ๊ฒ์ํ๋ฉด ์๋์ ๊ฐ์ด ๋์จ๋ค. ํ์ ์๊ณ ๋ฆฌ์ฆ์ ์ต์ ํด๋ฅผ ๊ตฌํ๋ ๋ฐ์ ์ฌ์ฉ๋๋ ๊ทผ์ฌ์ ์ธ ๋ฐฉ๋ฒ์ผ๋ก, ์ฌ๋ฌ ๊ฒฝ์ฐ ์ค ํ๋๋ฅผ ๊ฒฐ์ ํด์ผ ํ ๋๋ง๋ค ๊ทธ ์๊ฐ์ ์ต์ ์ด๋ผ๊ณ ์๊ฐ๋๋ ๊ฒ์ ์ ํํด ๋๊ฐ๋ ๋ฐฉ์์ผ๋ก ์งํํ์ฌ ์ต์ข ์ ์ธ ํด๋ต์ ๋๋ฌํ๋ค. ์ผ๋ฐ์ ์ผ๋ก ์๊ฐํ์ ๋ ๋์์ ์ด์ต๋ง์ ์ซ๋ ๊ฒ์ด ์ต์ ์ ์ ํ์ด๋ผ๊ณ ๋ ํ ์ ์๋ค. ๊ฐ๋ น ์๋์ ๊ฐ์ ์ํฉ์ด ์๋ค๊ณ ์๊ฐํด๋ณด์. ์์ 1 ๊ฐ ๊ทธ๋ฆผ์ ์ ํ ์ซ์๋ ๋ฌธ์ ๋ฅผ ํธ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด๊ณ ์ฐ๋ฆฌ๋ ๊ฐ์ฅ ๋น ๋ฅธ ์๊ฐ์์ level1, level2, level3๋ฌธ์ ๋ฅผ ํ๋์ฉ ํด๊ฒฐํ๋ ค ํ๋ค. ์ด๋ ๋ฌธ์ ๋ฅผ ํธ๋ ์๊ฐ์ ์ต์ํ ํ๋ ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ..
๊ฐ๋ ๋์ ๊ณํ๋ฒ์ ์ ์๋ ์๋์ ๊ฐ๋ค. ์ฒ์ ์ฃผ์ด์ง ๋ฌธ์ ๋ฅผ ๋ ์์ ๋ฌธ์ ๋ค๋ก ๋๋ ๋ค ๊ฐ ์กฐ๊ฐ์ ๋ต์ ๊ณ์ฐํ๊ณ , ์ด ๋ต๋ค๋ก๋ถํฐ ์๋ ๋ฌธ์ ์ ๋ํ ๋ต์ ๊ณ์ฐํ๋ ๋ฐฉ์. ์ ์๋ง ๊ฐ์ง๊ณ ๋ ์ดํดํ๊ธฐ ์ฝ์ง ์๋ค. ๋ค์์ ์ค๋ช ํ๊ฒ ์ง๋ง, ๊ฒฐ๋ก ์ ์ผ๋ก ๋งํ์๋ฉด ๋ฐฐ์ด์ ๋ง๋ค์ด ๊ฐ๋ค์ ์ ์ฅํ๊ณ , ํ์ ๊ทธ๊ฒ๋ค์ ๊ฐ์ง๊ณ ๋ต์ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ด๋ค. ๋์ ๊ณํ๋ฒ์ ์ด์ฉํด ๋ฌธ์ ๋ฅผ ํ๋ ค๊ณ ํ๋ค๋ฉด ๋จผ์ ์ ํ์์ ์ธ์์ผ ํ๋ค. ์ ํ์์ด๋ผ๋ ๊ฒ์ ์ด๋ค ์์ด์ ์ผ๋ฐํญ์ ์ด์ ์ ํญ๋ค์ ์ด์ฉํด ์ ์ํ ์์ด๋ค. ๊ณ ๋ฑํ๊ต ๋ ๋ฐฐ์ ๋ ์์ด์ ์ผ๋ฐํญ์ ๊ตฌํ๋ฏ์ด n๋ฒ์งธ ํญ์ ๊ตฌํ๋ ๋ฐฉ๋ฒ์ ์์ผ๋ก ๋ํ๋ธ๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ๋ค. ์๋ฅผ ๋ค์ด ํํ๋ค ์๋ ํผ๋ณด๋์น ์์ด์ ์ ํ์์ ์๋์ ๊ฐ๋ค. ์ด์ ์ด ์์ ๊ฐ์ง๊ณ ์ฝ๋๋ก ์์ฑ์ ํด ๋ณด๋๋ก ํ์. ์ผ๋ฐ์ ์ผ๋ก ์ฌ๊ทํจ์๋ฅผ..
๊ตฌํ ๋ด์ฉ at(๐) : ๋ฐฐ์ด Arr์ ์ธ๋ฑ์ค i์ ์ ์ฅ๋ ๊ฐ์ ์ถ๋ ฅํ๋ค.(๋จ, 0 ≤ ๐ ≤ ๐ − 1) add(๐, ๐๐๐๐๐) : ๋ฐฐ์ด ๐ด๐๐์ ์ธ๋ฑ์ค ๐์์ ๐ − 2์ ๊ฐ์ ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์นธ์ฉ ์ด๋ํ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐฐ์ด ๐ด๐๐์ ์ธ๋ฑ์ค ๐๋ฒ์งธ์ ๐ฃ๐๐๐ข๐๋ฅผ ์ฝ์ ํ๋ค. (๋จ, 0 ≤ ๐ ≤ ๐ − 1) remove(๐): ๋ฐฐ์ด ๐ด๐๐์ ์ธ๋ฑ์ค ๐ + 1์์ ๐ − 1๊น์ง์ ๊ฐ์, ์ผ์ชฝ์ผ๋ก ํ ์นธ์ฉ ์ด๋์ํจ๋ค. ๊ทธ๋ฆฌ๊ณ ๋ฐฐ์ด ๐ด๐๐์ ๐ − 1๋ฒ์งธ ์ธ๋ฑ์ค์ ๊ฐ์ 0์ผ๋ก ํ ๋นํ๋ค. (๋จ, 0 ≤ ๐ ≤ ๐ − 1) set(๐, ๐๐๐๐๐): ๋ฐฐ์ด ๐ด๐๐์ ์ธ๋ฑ์ค ๐๋ฒ์งธ์ ๐ฃ๐๐๐ข๐๋ฅผ ํ ๋นํ๊ณ ๐ฃ๐๐๐ข๐๋ฅผ ์ถ๋ ฅํ๋ค. (๋จ, 0 ≤ ๐ ≤ ๐ −1) print(): ๋ฐฐ์ด ๐ด๐๐์ ๋ชจ๋ ๊ฐ์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ์ง์ด ..
https://thewayaboutme.tistory.com/91 c++ singly linked list ๋จ์ผ ๋งํฌ๋ ๋ฆฌ์คํธ ๊ตฌํ * ๋ณธ๋ฌธ์ (๋ฒํ์์ ์ฃผ์ํ์ฌ, 2013)์ ๊ณต๋ถํ๋ฉด์ ์์ฑํ ๊ธ์ ๋๋ค. ํฅํ ๊ฐ์ฒด์งํฅ ๋ฐ ์๋ฃ๊ตฌ์กฐ ์์ ์ ๋ค์ผ๋ฉฐ ์ ํํ + ์ต์ ๋ด์ฉ ์ดํด๋ฅผ ๋ฐ์ํ์ฌ ๋ณด์ํด ๋๊ฐ ๊ฒ์ ๋๋ค. 1. ๋ฌธ์์ด ๋ฆฌ์คํธ๋ฅผ ๊ฐ thewayaboutme.tistory.com ์ด ๊ธ์ ์ ๋ธ๋ก๊ทธ ๊ธ์ ์ฐธ๊ณ ํ์ฌ ์์ฑ๋์์ต๋๋ค. ์ฐ๊ฒฐ ๋ฆฌ์คํธ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ์ฌ๋ฌ๊ฐ์ง ๊ฐ๋ค์ ์ ์ฅํ๊ณ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ ์ค ๊ฐ์ฅ ๋ํ์ ์ธ ๊ฒ์ ์๋ง ๋ฐฐ์ด(Array)์ผ ๊ฒ์ด๋ค. ๊ทธ๋ฐ๋ฐ ๋ฐฐ์ด์ ๊ฒฝ์ฐ ์ค๊ฐ์ ์๋ ์์๋ฅผ ์ญ์ ํ๊ฑฐ๋, ๊ฐ์ ์ฝ์ ํ ๋ ๊ต์ฅํ ๋นํจ์จ์ ์ด๋ค. ๋ง์ฝ ์๋์ ๊ฐ์ ๋ฐฐ์ด์ด ์๋ค๊ณ ๊ฐ์ ํด๋ณด์. ์ฌ๊ธฐ์ 22๋ฅผ ์ญ์ ํ๋ ค ํ..