์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜/์•Œ๊ณ ๋ฆฌ์ฆ˜

    ์†Œ์ˆ˜ ๋น ๋ฅด๊ฒŒ ์ฐพ๊ธฐ, sqrt (), ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด + pow()

    ์†Œ์ˆ˜ ๋น ๋ฅด๊ฒŒ ์ฐพ๊ธฐ, sqrt (), ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด + pow()

    ๊ณต๋žต๋ฒ• : TargetNum์ด ์†Œ์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด, (1) TargetNum์˜ sqrt ()๋กœ ์ œ๊ณฑ๊ทผ์„ ๊ตฌํ•˜์—ฌ ์•ฝ์ˆ˜๋ฅผ 2๋ถ€ํ„ฐ ๋ฃจํŠธTargetNum๊นŒ์ง€๋งŒ ๊ฒ€ํ† ํ•œ๋‹ค. (2) ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด ๊ฐœ๋…์„ ์ด์šฉํ•˜์—ฌ for๋ฌธ์„ ๋Œ๋ฉด์„œ ํŠน์ • i์˜ ๋ฐฐ์ˆ˜๋ฅผ ์ „๋ถ€ ์ง€์›Œ๋‚˜๊ฐ„๋‹ค. (1) ์ œ๊ณฑ๊ทผ๊นŒ์ง€ ์•ฝ์ˆ˜ ๋ฒ”์œ„๋ฅผ ์ค„์ธ ๊ฒฝ์šฐ -> ์ •์ƒ์ ์œผ๋กœ ์†Œ์ˆ˜๊ฐ€ ์ถœ๋ ฅ๋จ #include #include using namespace std; bool isPrimeNumber(int x) { int end = (int)sqrt(x); for (int i = 2; i

    ์ด์ง„ํƒ์ƒ‰ ํ•ต์‹ฌ์ฝ”๋“œ

    ์žฌ๊ท€๋ฅผ ํ™œ์šฉํ•œ ์ด์ง„ํƒ์ƒ‰์˜ ํ•ต์‹ฌ ๊ฐœ๋…์ด ๋˜๋Š” ์ฝ”๋“œ def Search(start,end,target): if start==end: //~~ return mid = (start+end)/2 if nums[mid]

    BFS ์ฝ”๋“œ

    bfs ํ•จ์ˆ˜์—์„œ๋Š” (1) push()ํ•˜์ž๋งˆ์ž check=true๋กœ ๋งŒ๋“ค์–ด์ฃผ๊ณ  (2) ํ๊ฐ€ ๋น„์–ด์žˆ์ง€ ์•Š๋Š” ํ•œ ๊ณ„์† ๋ฐ˜๋ณตํ• ๋•Œ๋งˆ๋‹ค front()๋ฅผ pop() ํ•ด์ฃผ๋Š” ๊ฒƒ์ด ๊ฝค๋‚˜ ์ค‘์š”ํ•ด๋ณด์ธ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค๋ณด๋‹ˆ ์ฒซ๋…ธ๋“œ๋Š” ๊ทธ์•ผ๋ง๋กœ ํ์— ๋“ค์–ด๊ฐ€์ž๋งˆ์ž(push) ๋น ์ ธ๋‚˜์˜ค๊ฒŒ(pop)๊ฒŒ ๋œ๋‹ค. main ํ•จ์ˆ˜์—์„œ๋Š” ์ฐจ๋ถ„ํ•˜๊ฒŒ ์ธ์ ‘๋ฆฌ์ŠคํŠธ๋ฅผ ๊ตฌํ˜„ํ•ด์•ผํ•œ๋‹ค. #include #include #include using namespace std; vector numbers[7]; int check[7]; void bfs(int start) { queue que; que.push(start); check[start] = true; while (!que.empty()) { int x =que.front(); que.pop(); cout

    ๋ฐฐ์—ด ํšŒ์ „, ์ •์  ๋ฐฐ์—ด ๋‚ด์—์„œ ํŠน์ • ์›์†Œ๋ฅผ ์„ ํƒํ•œ ์œ„์น˜๋กœ ์ด๋™ํ•˜๊ณ  ์‹ถ์„ ๋•Œ

    ๋ฐฐ์—ด ์ •๋ณด์™€ ์ธ๋ฑ์Šค ์ •๋ณด๊ฐ€ ๋‘๊ฐœ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ํŠน์ • ์›์†Œ์˜ ์›๋ž˜ ์ธ๋ฑ์Šค์™€ ์›์†Œ๋ฅผ ๋ณด๋‚ด๊ณ  ์‹ถ์€ ์œ„์น˜์˜ ์ธ๋ฑ์Šค์ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‘ ์ธ๋ฑ์Šค ์‚ฌ์ด๋ฅผ for๋ฌธ์œผ๋กœ ๋Œ๋ฉด์„œ ๋ฐฐ์—ด์„ ํ•œ์นธ์”ฉ ๋‹น๊ฒจ์ค˜์•ผํ•˜๋Š” ๋‹ค์†Œ ๋ฒˆ๊ฑฐ๋กœ์šด ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ๋Š” 8๋ฒˆ์งธ ์ˆซ์ž๋ฅผ 2๋ฒˆ์งธ ์œ„์น˜๋กœ ๋ณด๋‚ด๊ณ  ์‹ถ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๊ณ  ์ž‘์„ฑํ•œ ๊ฒƒ์ด๋‹ค. #include #include using namespace std; void ratate(array& arr, int wantPos, int target) { int last = arr[t]; for (int i = t; i > s; i--) { arr[i] = arr[i-1]; } arr[s] = last; } int main() { array arr = {1,2,3,4,5,6,7,8,9,10}; ratate(..

    [c++] ์‚ฝ์ž… ์ •๋ ฌ

    ์‚ฝ์ž… ์ •๋ ฌ์ด๋ž€ ์ˆซ์ž๋ฅผ ์›ํ•˜๋Š” ์œ„์น˜๋ฅผ ์ฐพ์•„๊ฐ€์„œ ์‚ฝ์ž…ํ•˜๋Š” ์ •๋ ฌ์ด๋‹ค. ํ•„์š”ํ•œ ๋งŒํผ๋งŒ ์›€์ง์—ฌ์„œ ์‹œ๊ฐ„ ๋ณต์žก๋„๋Š” n์˜ ์ œ๊ณฑ์ด๋ผ๋Š” ์ ์—์„œ ๋™์ผํ• ์ง€๋ผ๋„ ์—ฐ์‚ฐ์ˆ˜๊ฐ€ ์ ์œผ๋ฏ€๋กœ ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋‚˜ ์„ ํƒ ์ •๋ ฌ๋ณด๋‹ค ๋น ๋ฅด๋‹ค. 2 6 4 9 8 1 3 5 7 ๋ผ๋Š” 9๊ฐœ์˜ ์ˆซ์ž๋ฅผ ํ•œ ๋ฐฐ์—ด์— ๋‹ด๊ณ  ์‚ฝ์ž… ์ •๋ ฌ์„ ํ™œ์šฉํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•ด๋ณด์ž. ์ œ์ผ ์•ž ์ˆซ์ž๋ฅผ 0๋ฒˆ์งธ ์ธ๋ฑ์Šค, ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ 8๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ผ ๊ฐ€์ •ํ•œ๋‹ค. 2 6 4 9 8 1 3 5 7 //2 6 -> 4->2 ๋ชจ๋‘ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ๋น„๊ตํ•˜๋‹ค๊ฐ€ ๋งจ ์•ž ์ •์ฐฉ ) 1 2 4 6 8 9 3 5 7 //ํ˜„์žฌ ์ƒํ™ฉ(๋ถˆ์™„์ „ํ•˜์ง€๋งŒ ์ •๋ ฌ์ด ์ฐจ์ธฐ ๋˜๊ณ  ์žˆ์Œ) 1 2 _ 4 6 8 9 '3' 5 7 //3์„ 4 ์•ž์— ๋„ฃ์ž. (9-> 8-> 6-> 4 ๋ชจ๋‘ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ๋น„๊ตํ•˜๋‹ค๊ฐ€ 4 ์•ž ์ •์ฐฉ) ..

    [c++] ๋ฒ„๋ธ”์ •๋ ฌ

    ๋ฒ„๋ธ” ์ •๋ ฌ์ด๋ž‘ ์˜†์— ์žˆ๋Š” ๊ฐ’๊ณผ ๋น„๊ตํ•ด์„œ ์œ„์น˜๋ฅผ ๋ฐ”๊ฟ”์ฃผ๋Š” ์ •๋ ฌ ๋ฐฉ๋ฒ•์ด๋‹ค. ์„ ํƒ ์ •๋ ฌ์€ ์ œ์ผ ์ž‘์€ ๊ฐ’์„ ์ฐพ์•„์„œ ์•ž์— ๊ฐ€์ ธ๋‹ค ๋†“๋Š” ์‹์œผ๋กœ ์ „๊ฐœ๋œ๋‹ค๋ฉด, (์„ ํƒ ์ •๋ ฌ ์„ค๋ช… ๋งํฌ: c++ ์„ ํƒ ์ •๋ ฌ ํ™œ์šฉํ•ด์„œ ๋ฐฐ์—ด ์† ์ˆซ์ž๋“ค์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๊ธฐ (tistory.com)) ๋ฒ„๋ธ” ์ •๋ ฌ์€ ์ œ์ผ ํฐ ๊ฐ’์„ ์ ์ฐจ ๋’ค๋กœ ์œ ๋ฐฐ๋ณด๋‚ด๋Š” ์‹์œผ๋กœ ์ „๊ฐœ๋œ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์ฒซ ๋ฐฐ์—ด๊ฐ’๋ถ€ํ„ฐ ์ผ๊ด€๋˜๊ฒŒ ๋ฐ”๋กœ ์˜†(๋’ค)์— ์žˆ๋Š” ๋ฐฐ์—ด๊ฐ’๊ณผ ๋น„๊ตํ•ด์„œ ํฐ ๊ฐ’์€ ๋’ค๋กœ ๋ฌผ๋Ÿฌ๋‚˜๋„๋ก ์Šค์œ„์น˜๋ฅผ ๋ฐ˜๋ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 2 6 4 9 8 1 3 5 7 ๋ผ๋Š” 9๊ฐœ์˜ ์ˆซ์ž๋ฅผ ํ•œ ๋ฐฐ์—ด์— ๋‹ด๊ณ  ๋ฒ„๋ธ” ์ •๋ ฌ์„ ํ™œ์šฉํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๋Š” ์‹œ๋ฎฌ๋ ˆ์ด์…˜์„ ํ•ด๋ณด์ž. ์ œ์ผ ์•ž ์ˆซ์ž๋ฅผ 0๋ฒˆ์งธ ์ธ๋ฑ์Šค, ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ 8๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ผ ๊ฐ€์ •ํ•œ๋‹ค. 2 6 4 9 8 1 3 5 7 //2์™€ 6์„ ๋น„๊ตํ•œ๋‹ค. ..

    [c++] [์„ ํƒ ์ •๋ ฌ] ํ™œ์šฉํ•ด์„œ ๋ฐฐ์—ด ์† ์ˆซ์ž๋“ค์„ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๊ธฐ

    ์„ ํƒ ์ •๋ ฌ 2 6 4 9 8 1 3 5 7 ๋ผ๋Š” ์ˆซ์ž๋ฅผ ์„ ํƒ ์ •๋ ฌ์„ ํ™œ์šฉํ•ด ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ๋ฐ”๊พธ๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ œ์ผ ์•ž ์ˆซ์ž๋ฅผ 0๋ฒˆ์งธ ์ธ๋ฑ์Šค, ๋งˆ์ง€๋ง‰ ์ˆซ์ž๋ฅผ 8๋ฒˆ์งธ ์ธ๋ฑ์Šค๋ผ๊ณ  ๊ฐ€์ •์„ ํ•œ๋‹ค๋ฉด, 2 6 4 9 8 1 3 5 7 //0๋ฒˆ์งธ ์ธํ…์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํ™•์ธํ•˜๊ณ  (1๋ฐœ๊ฒฌ) 1 2 6 4 9 8 3 5 7 //(1์„ ์ œ์ผ ์•ž์œผ๋กœ) 1 2 6 4 9 8 3 5 7 //1๋ฒˆ์งธ ์ธํ…์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํ™•์ธํ•˜๊ณ (2๋ฐœ๊ฒฌ, ๊ทธ๋Œ€๋กœ) 1 2 6 4 9 8 3 5 7 //2๋ฒˆ์งธ ์ธํ…์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํ™•์ธํ•˜๊ณ (3๋ฐœ๊ฒฌ) 1 2 3 6 4 9 8 5 7 //(3์„ ์•ž์œผ๋กœ) 1 2 3 6 4 9 8 5 7 //3๋ฒˆ์งธ ์ธํ…์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€ ํ™•์ธํ•˜๊ณ (4๋ฐœ๊ฒฌ) 1 2 3 4 6 9 8 5 7 //(4๋ฅผ ์•ž์œผ๋กœ) 1 2 3 4 6 9 8 5 7 //..

    c++ ๋ฐฐ์—ด ์˜ค๋ฆ„์ฐจ์ˆœ ๋‚ด๋ฆผ์ฐจ์ˆœ ๊ตฌํ˜„

    ๋ฐฐ์—ด ์†์— ์—ฌ๋Ÿฌ ๊ฐ’์ด ๋’ค์ฃฝ๋ฐ•์ฃฝ ์„ž์—ฌ ์žˆ์„ ๋•Œ, ์ด๊ฒƒ๋“ค์ด ์˜ค๋ฆ„์ฐจ์ˆœ(์ž‘์€ ๊ฐ’์ด ๊ฐ€์žฅ ์•ž์— ์˜ค๊ณ  ๋ฐฐ์—ด ๋’ท ์ธ๋ฑ์Šค๋กœ ๊ฐˆ์ˆ˜๋ก ์ธ๋ฑ์Šค ๊ฐ’์ด ์ปค์ง)์œผ๋กœ ์ •๋ ฌ๋˜๋„๋ก ์ด์ค‘ํฌ๋ฌธ์„ ์จ์„œ ์ง์ ‘ ํ•˜๋“œ์ฝ”๋”ฉ์œผ๋กœ ๊ตฌํ˜„ํ•ด๋ณด์•˜๋‹ค. ๊ฐ์ข… ์ •๋ ฌ ๊ธฐ๋ฒ•์„ ๋ฐฐ์šฐ๊ณ  ๋‚˜๋ฉด ์ฝ”๋“œ๊ฐ€ ๋‹ฌ๋ผ์งˆ ๊ฒƒ์ด๋‹ค. #include using namespace std; int main() { int num[10] = { 986,4,7,12,45,895,3,7,34,5 }; for (int i =0; i+1

    2. [c++] ํŠน์ •๊ฐ’ ์ดํ•˜์˜ ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ 2์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ๋งŒ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋งŒ๋“ค๊ธฐ

    2. [c++] ํŠน์ •๊ฐ’ ์ดํ•˜์˜ ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ 2์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ๋งŒ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋งŒ๋“ค๊ธฐ

    *์ง์ ‘ ์ง  ๊ฒƒ์ž„์œผ๋กœ ๋ชฉ์ ์— ๋ณด๋‹ค ๋” ์ตœ์ ์ธ ํ•จ์ˆ˜๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.* - ํŠน์ •๊ฐ’ n์„ ์ž์œ ๋กญ๊ฒŒ ์ž…๋ ฅํ•˜๋ฉด, - n ์ดํ•˜์˜ ์ˆ˜ ์ค‘์—์„œ ๊ฐ€์žฅ ํฐ 2์˜ ๊ฑฐ๋“ญ์ œ๊ณฑ๋งŒ์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด๋ณด์•˜๋‹ค. ์˜ˆ์‹œ) 100์ž…๋ ฅ์‹œ 64 ์ถœ๋ ฅ 2์ž…๋ ฅ์‹œ 2์ถœ๋ ฅ 1์ž…๋ ฅ์‹œ 1์ถœ๋ ฅ #include using namespace std; int func(int* n) { int max =1; for (int i = 1; i * 2 > n; while (n > n; } int* a = &n; n = func(a); cout

    ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰(DFS, Depth First Search), ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰(BFS, Breadth First Search))

    BFS, DFS๋ž€ ๊ทธ๋ž˜ํ”„์˜ ํƒ์ƒ‰ ๊ธฐ๋ฒ•์œผ๋กœ ๋ชฉ์ ์€ ์ž„์˜์˜ ํ•œ ์ •์ ์—์„œ ์‹œ์ž‘ํ•˜์—ฌ ๋ชจ๋“  ์ •์ ์„ ๋ฐฉ๋ฌธํ•˜๋Š” ๋ฐ ์žˆ๋‹ค. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰ - DFS(Depth-first search) ์ž์‹ ๋…ธ๋“œ๋ฅผ ์šฐ์„ ์ ์œผ๋กœ ํƒ์ƒ‰ ์ฆ‰, ์•„์ง ๋ฐฉ๋ฌธ๋˜์ง€ ์•Š์€ ์ธ์ ‘ ๋…ธ๋“œ(์ž์‹ ๋…ธ๋“œ)๋ฅผ ์šฐ์„ ์ ์œผ๋กœ ํƒ์ƒ‰ ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์€ ํ•œ์ชฝ๋งŒ ์ฃฝ์–ด๋ผ ํŒŒ๋‹ค๊ฐ€ ๋”์ด์ƒ ํŒ” ๊ณณ์ด ์—†์œผ๋ฉด ๋‹ค์‹œ ๋Œ์•„์™€์„œ ๋‹ค๋ฅธ ํ•œ์ชฝ์„ ์ฃฝ์–ด๋ผ ํŒŒ๋Š” ํ˜•์‹์ด๋‹ค. ๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰์€ Stack์„ ํ†ตํ•ด ๊ตฌํ˜„๋œ๋‹ค. ๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰ - BFS(Breadth-first search)=๋ ˆ๋ฒจ ์ˆœํšŒ(level-order traversal) ์ฝ”๋“œ๋งํฌ : BFS ์ฝ”๋“œ (tistory.com) ๊ฐ„์„ ์˜ ๋ชจ๋“  ๊ฐ€์ค‘์น˜๊ฐ€ ๊ฐ™์„ ๋•Œ, ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์œผ๋กœ ์‹œ์ž‘ ์ •์ ์„ ๊ธฐ์ค€์œผ๋กœ ๊ฐ€๊นŒ์šด ์ •์ ์„ ๋จผ์ € ๋ฐฉ๋ฌธํ•œ๋‹ค. ๋ฐฉ..