Skip to content

๐Ÿชก ์ž๋ฃŒ ๊ตฌ์กฐ๊ฐ€ ์ค‘์š”ํ•œ ๊นŒ๋‹ญ โ€‹

์ œ์ด ์›ฌ๊ทธ๋กœ์šฐ์˜ ใ€Ž๋ˆ„๊ตฌ๋‚˜ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ใ€์„ ์ฝ์œผ๋ฉฐ ์ •๋ฆฌํ•œ ๊ธฐ๋ก
์˜ˆ์ œ ์†Œ์Šค

์ฝ”๋“œ ํ’ˆ์งˆ์˜ ๋‘ ๊ฐ€์ง€ ์ถ• โ€‹

์ข‹์€ ์ฝ”๋“œ๋Š” ๋‹จ์ˆœํžˆ โ€œ๋™์ž‘ํ•˜๋Š” ์ฝ”๋“œโ€๋งŒ์„ ์˜๋ฏธํ•˜์ง€ ์•Š๋Š”๋‹ค.
์ฝ”๋“œ์˜ ํ’ˆ์งˆ์€ ๋ณดํ†ต ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ธฐ์ค€์œผ๋กœ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์œ ์ง€ ๋ณด์ˆ˜์„ฑ - ๊ฐ€๋…์„ฑ / ์กฐ์ง / ์ฝ”๋“œ ๋ชจ๋“ˆ์„ฑ
  • ํšจ์œจ์„ฑ - ์‹คํ–‰ ์†๋„ / ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ

๋ฐ์ดํ„ฐ๋ฅผ ์–ด๋–ป๊ฒŒ ์กฐ์ž‘ํ•˜๋А๋ƒ๊ฐ€ ์ฝ”๋“œ์˜ ์‹คํ–‰ ์†๋„์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์นœ๋‹ค.


์ž๋ฃŒ ๊ตฌ์กฐ โ€‹

  • ๋ฐ์ดํ„ฐ: ์ˆ˜, ๋ฌธ์ž์—ด์ฒ˜๋Ÿผ ํ”„๋กœ๊ทธ๋žจ์—์„œ ๋‹ค๋ฃจ๋Š” ๊ฐ’
  • ์ž๋ฃŒ ๊ตฌ์กฐ: ๋ฐ์ดํ„ฐ๋ฅผ ์กฐ์งํ•˜๋Š” ๋ฐฉ๋ฒ•

๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ผ๋„ ์–ด๋–ค ์ž๋ฃŒ ๊ตฌ์กฐ๋ฅผ ์‚ฌ์šฉํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ์ฝ”๋“œ์˜ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง„๋‹ค.


๋ฐฐ์—ด (Array) โ€‹

๋ฐฐ์—ด์€ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ ์ธ ์ž๋ฃŒ ๊ตฌ์กฐ๋กœ, ๋ฐ์ดํ„ฐ ์›์†Œ๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•œ๋‹ค.

js
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

๋ฐฐ์—ด์˜ ๋„ค ๊ฐ€์ง€ ๊ธฐ๋ณธ ์—ฐ์‚ฐ โ€‹

๋‹ค์Œ ๋„ค ๊ฐ€์ง€ ์—ฐ์‚ฐ์„ ํ†ตํ•ด ์ž๋ฃŒ ๊ตฌ์กฐ์˜ ์„ฑ๋Šฅ์„ ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ฝ๊ธฐ: ์ธ๋ฑ์Šค๋กœ ๊ฐ’ ์ ‘๊ทผ
  • ๊ฒ€์ƒ‰: ๊ฐ’์œผ๋กœ ์ธ๋ฑ์Šค ์ฐพ๊ธฐ
  • ์‚ฝ์ž…: ์ƒˆ ๋ฐ์ดํ„ฐ ์‚ฝ์ž…
  • ์‚ญ์ œ: ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ

์—ฐ์‚ฐ์˜ ์†๋„ ์ธก์ • โ€‹

์—ฐ์‚ฐ์˜ ๋น ๋ฅด๊ณ  ๋А๋ฆผ์„ ํŒ๋‹จํ•  ๋•Œ๋Š” ์‹ค์ œ ์‹œ๊ฐ„์ด ์•„๋‹Œ ํ•„์š”ํ•œ ๋‹จ๊ณ„ ์ˆ˜๋ฅผ ์•Œ์•„์•ผ ํ•œ๋‹ค.

์—ฐ์‚ฐ์˜ ์†๋„ ์ธก์ • = ์—ฐ์‚ฐ์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„ ์ธก์ •


โ‘  ์ฝ๊ธฐ (Read) โ€‹

ํŠน์ • ์ธ๋ฑ์Šค์— ์ €์žฅ๋œ ๊ฐ’์„ ์ฐพ๋Š” ์—ฐ์‚ฐ

๐Ÿ’ก ์ปดํ“จํ„ฐ์˜ ํŠน์ง•

    1. ์ปดํ“จํ„ฐ๋Š” ๋ชจ๋“  ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ํ•œ ๋ฒˆ์— ์ ‘๊ทผ ๊ฐ€๋Šฅ
    1. ๋ฐฐ์—ด ํ• ๋‹น ์‹œ ์‹œ์ž‘ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๊ธฐ๋ก
    1. ๋ฐฐ์—ด ํ• ๋‹น ์‹œ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๊ธฐ๋ก

์œ„์™€ ๊ฐ™์€ ํŠน์ง• ๋•Œ๋ฌธ์— ๋ฐฐ์—ด์˜ ์–ด๋–ค ์ธ๋ฑ์Šค๋“  ์ฆ‰์‹œ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ฝ๊ธฐ ์—ฐ์‚ฐ = 1๋‹จ๊ณ„

๊ฐ’์„ ์ œ๊ณต๋ฐ›์•„ ๊ทธ ๊ฐ’์ด ์ €์žฅ๋œ ์ธ๋ฑ์Šค๋ฅผ ์ฐพ๋Š” ์—ฐ์‚ฐ


js
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// "elderberries" ๊ฒ€์ƒ‰
// [0]: "apples" - 1๋‹จ๊ณ„
// [1]: "bananas" - 2๋‹จ๊ณ„
// [2]: "cucumbers" - 3๋‹จ๊ณ„
// [3]: "dates" - 4๋‹จ๊ณ„
// [4]: "elderberries" - 5๋‹จ๊ณ„
  • ๋ฐฐ์—ด์—์„œ ํŠน์ • ๊ฐ’์„ ์ฐพ์œผ๋ ค๋ฉด ๋ฐฐ์—ด์˜ ๊ฐ ์…€์„ ์•ž์—์„œ๋ถ€ํ„ฐ ํ•˜๋‚˜์”ฉ ์กฐ์‚ฌํ•ด์•ผ ํ•œ๋‹ค.
    ์ด์ฒ˜๋Ÿผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ’์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ์‹์„ ์„ ํ˜• ๊ฒ€์ƒ‰์ด๋ผ๊ณ  ํ•œ๋‹ค.
  • ์ฆ‰, elderberries๋ฅผ ์ฐพ๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ชจ๋“  ์…€์„ ๊ฒ€์ƒ‰ํ•ด์•ผ ํ•œ๋‹ค. (5๊ฐœ = 5๊ฐœ์˜ ๋‹จ๊ณ„)

๋ฐฐ์—ด ์ค‘๊ฐ„์— ์žˆ๋Š” ๊ฐ’ ๊ฒ€์ƒ‰ โ€‹

js
// "dates" ๊ฒ€์ƒ‰
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// [0]: "apples" - 1๋‹จ๊ณ„
// [1]: "bananas" - 2๋‹จ๊ณ„
// [2]: "cucumbers" - 3๋‹จ๊ณ„
// [3]: "dates" - 4๋‹จ๊ณ„
  • "dates"๋Š” ์ธ๋ฑ์Šค 3์— ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 4๋‹จ๊ณ„ ๋งŒ์— ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค.

๊ฒ€์ƒ‰์˜ ์ตœ์•…์˜ ๊ฒฝ์šฐ โ€‹

์ตœ์•…์˜ ๊ฒฝ์šฐ๋Š” ์ฐพ๋Š” ๊ฐ’์ด ๋ฐฐ์—ด์˜ ๋งจ ๋’ค์— ์žˆ๊ฑฐ๋‚˜, ๋ฐฐ์—ด ์•ˆ์— ์—†๋Š” ๊ฒฝ์šฐ์ด๋‹ค.

  • ์ฐพ๋Š” ๊ฐ’์ด ๋งจ ๋’ค์— ์žˆ๋Š” ๊ฒฝ์šฐ: ๋งˆ์ง€๋ง‰ ์š”์†Œ๊นŒ์ง€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.
  • ์ฐพ๋Š” ๊ฐ’์ด ์—†๋Š” ๊ฒฝ์šฐ: ๊ฐ’์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ธฐ ์œ„ํ•ด ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋๊นŒ์ง€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.
  • ์ตœ์•…์˜ ๊ฒฝ์šฐ: N๊ฐœ ์š”์†Œ = N๋‹จ๊ณ„

โ‘ข ์‚ฝ์ž… (Insert) โ€‹

์ƒˆ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฐ์—ด์— ์ถ”๊ฐ€ํ•˜๋Š” ์—ฐ์‚ฐ, ์‚ฝ์ž… ์œ„์น˜์— ๋”ฐ๋ผ ํšจ์œจ์„ฑ์ด ๋‹ฌ๋ผ์ง„๋‹ค.


๋ฐฐ์—ด ๋์— ์‚ฝ์ž… (๊ฐ€์žฅ ํšจ์œจ์ ) โ€‹

js
// ๋ฐฐ์—ด ๋์— "figs" ์ถ”๊ฐ€
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

array.push("figs"); // โ†’ 1๋‹จ๊ณ„

๋ฐฐ์—ด ์ค‘๊ฐ„์— ์‚ฝ์ž… โ€‹

js
// array[2]์— "figs" ์‚ฝ์ž…
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// 1๋‹จ๊ณ„: ๋งˆ์ง€๋ง‰ ์…€ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™
array = ["apples", "bananas", "cucumbers", "dates", "", "elderberries"];
// 2๋‹จ๊ณ„: "dates" ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™
array = ["apples", "bananas", "cucumbers", "", "dates", "elderberries"];
// 3๋‹จ๊ณ„: "cucumbers" ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™
array = ["apples", "bananas", "", "cucumbers", "dates", "elderberries"];
// 4๋‹จ๊ณ„: "figs" ์‚ฝ์ž…
array = ["apples", "bananas", "figs", "cucumbers", "dates", "elderberries"];

// โ†’ 3๋‹จ๊ณ„(์ด๋™) + 1๋‹จ๊ณ„(์‚ฝ์ž…) = 4๋‹จ๊ณ„

๋ฐฐ์—ด ๋งจ ์•ž์— ์‚ฝ์ž… (๊ฐ€์žฅ ๋น„ํšจ์œจ์ ) โ€‹

js
// array[0]์— "figs" ์‚ฝ์ž…
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// ๋ชจ๋“  ๊ธฐ์กด ์š”์†Œ๋ฅผ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™
// โ†’ 5๋‹จ๊ณ„(์ด๋™) + 1๋‹จ๊ณ„(์‚ฝ์ž…) = 6๋‹จ๊ณ„
  • ์ตœ์•…์˜ ๊ฒฝ์šฐ: N๊ฐœ ์š”์†Œ = N + 1๋‹จ๊ณ„

โ‘ฃ ์‚ญ์ œ (Delete) โ€‹

๋ฐฐ์—ด์—์„œ ํŠน์ • ์ธ๋ฑ์Šค์˜ ๊ฐ’์„ ์ œ๊ฑฐํ•˜๋Š” ์—ฐ์‚ฐ

๐Ÿ’ก ์‚ญ์ œ์˜ ํ•ต์‹ฌ

์‚ญ์ œ ํ›„ ๋นˆ ๊ณต๊ฐ„์„ ์ฑ„์šฐ๊ธฐ ์œ„ํ•ด ๋’ค์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ํ•œ ์นธ์”ฉ ์™ผ์ชฝ์œผ๋กœ ์ด๋™ํ•ด์•ผ ํ•จ


๋ฐฐ์—ด ๋์—์„œ ์‚ญ์ œ (๊ฐ€์žฅ ํšจ์œจ์ ) โ€‹

js
// ๋ฐฐ์—ด ๋์— "elderberries" ์‚ญ์ œ
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

array.pop(); // โ†’ 1๋‹จ๊ณ„

๋ฐฐ์—ด ์ค‘๊ฐ„์—์„œ ์‚ญ์ œ โ€‹

js
// array[2] cucumbers ์‚ญ์ œ
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// 1๋‹จ๊ณ„: "cucumbers" ์‚ญ์ œ
array = ["apples", "bananas", "", "dates", "elderberries"];
// 2๋‹จ๊ณ„: "dates" ์™ผ์ชฝ์œผ๋กœ ์ด๋™
array = ["apples", "bananas", "dates", "", "elderberries"];
// 3๋‹จ๊ณ„: "elderberries" ์™ผ์ชฝ์œผ๋กœ ์ด๋™
array = ["apples", "bananas", "dates", "elderberries", ""];

// 1๋‹จ๊ณ„(์‚ญ์ œ) + 2๋‹จ๊ณ„(์ด๋™) = 3๋‹จ๊ณ„

๋ฐฐ์—ด ๋งจ ์•ž์—์„œ ์‚ญ์ œ (๊ฐ€์žฅ ๋น„ํšจ์œจ์ ) โ€‹

js
array = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// ๋ชจ๋“  ๋‚˜๋จธ์ง€ ์š”์†Œ๋ฅผ ์™ผ์ชฝ์œผ๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค.
// โ†’ 4๋‹จ๊ณ„(์ด๋™) + 1๋‹จ๊ณ„(์‚ญ์ œ) = 5๋‹จ๊ณ„
  • ์ตœ์•…์˜ ๊ฒฝ์šฐ: N๊ฐœ ์š”์†Œ = N๊ฐœ ๋‹จ๊ณ„

๋ฐฐ์—ด ์„ฑ๋Šฅ ์š”์•ฝ โ€‹

์—ฐ์‚ฐ์ตœ์•…์˜ ๊ฒฝ์šฐ
์ฝ๊ธฐ1๋‹จ๊ณ„
๊ฒ€์ƒ‰N๋‹จ๊ณ„
์‚ฝ์ž…N + 1๋‹จ๊ณ„
์‚ญ์ œN๋‹จ๊ณ„

์ง‘ํ•ฉ (Set) โ€‹

์ง‘ํ•ฉ์€ ์ค‘๋ณต ๊ฐ’์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ์ž๋ฃŒ ๊ตฌ์กฐ (์ด ๊ธ€์—์„œ๋Š” ๋ฐฐ์—ด ๊ธฐ๋ฐ˜ ์ง‘ํ•ฉ์„ ๋‹ค๋ฃธ)

  • ์ฝ๊ธฐ, ๊ฒ€์ƒ‰, ์‚ญ์ œ: ๋ฐฐ์—ด๊ณผ ๋™์ผํ•œ ํšจ์œจ์„ฑ์„ ๊ฐ€์ง„๋‹ค.

์‚ฝ์ž… โ€‹

์ง‘ํ•ฉ์˜ ํ•ต์‹ฌ ํŠน์ง•์€ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์‚ฝ์ž… ์ „์— ๊ฒ€์ƒ‰์ด ํ•„์ˆ˜๋‹ค.

js
set = ["apples", "bananas", "cucumbers", "dates", "elderberries"];

// "figs" ์‚ฝ์ž…
// 1๋‹จ๊ณ„ - set[0]์—์„œ "figs" ๊ฒ€์ƒ‰
// 2๋‹จ๊ณ„ - set[1]์—์„œ "figs" ๊ฒ€์ƒ‰
// 3๋‹จ๊ณ„ - set[2]์—์„œ "figs" ๊ฒ€์ƒ‰
// 4๋‹จ๊ณ„ - set[3]์—์„œ "figs" ๊ฒ€์ƒ‰
// 5๋‹จ๊ณ„ - set[4]์—์„œ "figs" ๊ฒ€์ƒ‰
// 6๋‹จ๊ณ„ - ์ง‘ํ•ฉ ๋์— "figs" ์‚ฝ์ž…

// 5๋‹จ๊ณ„(๊ฒ€์ƒ‰) + 1๋‹จ๊ณ„(์‚ฝ์ž…) = 6๋‹จ๊ณ„
  • ์ง‘ํ•ฉ์˜ ๋์— ์ƒˆ ๊ฐ’ ์‚ฝ์ž…: N+1๋‹จ๊ณ„

์ •๋ฆฌ โ€‹

์ž๋ฃŒ ๊ตฌ์กฐ์˜ ์„ฑ๋Šฅ์„ ์ธก์ •ํ•˜๋Š” ๊ฒƒ์€ ์—ฐ์‚ฐ์— ํ•„์š”ํ•œ ๋‹จ๊ณ„ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
๊ฐ™์€ ๋ฐ์ดํ„ฐ๋„ ์–ด๋–ค ์ž๋ฃŒ ๊ตฌ์กฐ๋ฅผ ์„ ํƒํ•˜๊ณ , ์–ด๋А ์œ„์น˜์—์„œ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋А๋ƒ์— ๋”ฐ๋ผ ํšจ์œจ์„ฑ์ด ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง„๋‹ค.


์—ฐ์Šต ๋ฌธ์ œ โ€‹

1. ์›์†Œ 100๊ฐœ๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฐฐ์—ด์ด ์žˆ์„ ๋•Œ, ๋‹ค์Œ ์—ฐ์‚ฐ์— ๊ฑธ๋ฆฌ๋Š” ๋‹จ๊ณ„ ์ˆ˜๋ฅผ ๊ณ„์‚ฐ โ€‹

a. ์ฝ๊ธฐ1๋‹จ๊ณ„ (๋ฐฐ์—ด์˜ ์–ด๋–ค ์ธ๋ฑ์Šค๋“  ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.)
b. ๋ฐฐ์—ด์— ๋“ค์–ด ์žˆ์ง€ ์•Š์€ ๊ฐ’ ๊ฒ€์ƒ‰100๋‹จ๊ณ„ (๊ฐ’์ด ๋ฐฐ์—ด์— ์—†๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋๊นŒ์ง€ ๊ฒ€์‚ฌํ•ด์•ผ ํ•œ๋‹ค.)
c. ๋ฐฐ์—ด ๋งจ ์•ž์— ์‚ฝ์ž…101๋‹จ๊ณ„ (100๊ฐœ ์š”์†Œ๋ฅผ ๋ชจ๋‘ ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™(100๋‹จ๊ณ„) + ์‚ฝ์ž…(1๋‹จ๊ณ„))
d. ๋ฐฐ์—ด ๋งจ ๋’ค์— ์‚ฝ์ž…1๋‹จ๊ณ„ (๋ฐฐ์—ด์˜ ๋์— ์ถ”๊ฐ€ํ•˜๋ฉด ๊ธฐ์กด ์š”์†Œ๋ฅผ ์ด๋™ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค.)
e. ๋ฐฐ์—ด ๋งจ ์•ž์—์„œ ์‚ญ์ œ100๋‹จ๊ณ„ (์‚ญ์ œ(1๋‹จ๊ณ„) + 99๊ฐœ ์š”์†Œ๋ฅผ ๋ชจ๋‘ ์™ผ์ชฝ์œผ๋กœ ์ด๋™(99๋‹จ๊ณ„) = 100๋‹จ๊ณ„)
f. ๋ฐฐ์—ด ๋งจ ๋’ค์—์„œ ์‚ญ์ œ1๋‹จ๊ณ„ (๋ฐฐ์—ด์˜ ๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ์‚ญ์ œํ•˜๋ฉด ์ด๋™ํ•  ์š”์†Œ๊ฐ€ ์—†๋‹ค.)

2. ์›์†Œ 100๊ฐœ๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฐฐ์—ด ๊ธฐ๋ฐ˜ ์ง‘ํ•ฉ์ด ์žˆ์„ ๋•Œ, ๋‹ค์Œ ์—ฐ์‚ฐ์— ๊ฑธ๋ฆฌ๋Š” ๋‹จ๊ณ„ ์ˆ˜๋ฅผ ๊ณ„์‚ฐ โ€‹

a. ์ฝ๊ธฐ1๋‹จ๊ณ„ (๋ฐฐ์—ด ๊ธฐ๋ฐ˜ ์ง‘ํ•ฉ๋„ ๋ฐฐ์—ด์ฒ˜๋Ÿผ ์ธ๋ฑ์Šค๋ฅผ ์•Œ๊ณ  ์žˆ์œผ๋ฉด ๋ฐ”๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.)
b. ๋ฐฐ์—ด์— ๋“ค์–ด ์žˆ์ง€ ์•Š์€ ๊ฐ’ ๊ฒ€์ƒ‰100๋‹จ๊ณ„ (๊ฐ’์ด ์ง‘ํ•ฉ์— ์—†๋Š”์ง€ ํ™•์ธํ•˜๋ ค๋ฉด ๋ชจ๋“  ์š”์†Œ๋ฅผ ๋๊นŒ์ง€ ๊ฒ€์‚ฌํ•ด์•ผ ํ•œ๋‹ค.)
c. ์ง‘ํ•ฉ ๋งจ ์•ž์—์„œ ์ƒˆ ๊ฐ’ ์‚ฝ์ž…201๋‹จ๊ณ„ (๊ฒ€์ƒ‰ 100๋‹จ๊ณ„ + ์ด๋™ 100๋‹จ๊ณ„ + ์‚ฝ์ž… 1๋‹จ๊ณ„ = 201๋‹จ๊ณ„)
d. ์ง‘ํ•ฉ ๋งจ ๋’ค์— ์ƒˆ ๊ฐ’ ์‚ฝ์ž…101๋‹จ๊ณ„ (๊ฒ€์ƒ‰ 100๋‹จ๊ณ„ + ์‚ฝ์ž… 1๋‹จ๊ณ„)
e. ์ง‘ํ•ฉ ๋งจ ์•ž์—์„œ ์‚ญ์ œ100๋‹จ๊ณ„ (์‚ญ์ œ 1๋‹จ๊ณ„ + 99๊ฐœ ์š”์†Œ๋ฅผ ๋ชจ๋‘ ์™ผ์ชฝ์œผ๋กœ ์ด๋™ 99๋‹จ๊ณ„ = 100๋‹จ๊ณ„)
f. ์ง‘ํ•ฉ ๋งจ ๋’ค์—์„œ ์‚ญ์ œ1๋‹จ๊ณ„ (๋งˆ์ง€๋ง‰ ์š”์†Œ๋ฅผ ์‚ญ์ œํ•˜๋ฉด ์ด๋™ํ•  ์š”์†Œ๊ฐ€ ์—†๋‹ค.)

3. ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฐฐ์—ด์—์„œ ๊ฒ€์ƒ‰ ์—ฐ์‚ฐ์€ ์ฃผ์–ด์ง„ ๊ฐ’์˜ ์ฒซ ์ธ์Šคํ„ด์Šค๋ฅผ ์ฐพ๋Š”๋‹ค. โ€‹

ํ•˜์ง€๋งŒ ์ฃผ์–ด์ง„ ๊ฐ’์˜ ๋ชจ๋“  ์ธ์Šคํ„ด์Šค๋ฅผ ์ฐพ์„ ๋•Œ๊ฐ€ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ฐฐ์—ด์— "apple"์ด ๋ช‡ ๋ฒˆ ๋‚˜์˜ค๋Š”์ง€ ์„ธ๊ณ  ์‹ถ๋‹ค. ๋ชจ๋“  "apple"์„ ์ฐพ๋Š” ๋ฐ ๋ช‡ ๋‹จ๊ณ„๊ฐ€ ๊ฑธ๋ฆด๊นŒ? N์— ๋Œ€ํ•ด ๋‹ตํ•˜๋ผ.

๋‹ตN๋‹จ๊ณ„ (๋ชจ๋“  ์ธ์Šคํ„ด์Šค๋ฅผ ์ฐพ์œผ๋ ค๋ฉด ๋ฐฐ์—ด์˜ ๋ชจ๋“  ์š”์†Œ๋ฅผ ๊ฒ€์‚ฌํ•ด์•ผ ํ•˜๋ฏ€๋กœ, ๋ฐฐ์—ด์˜ ํฌ๊ธฐ์™€ ๊ฐ™์€ N๋‹จ๊ณ„๊ฐ€ ํ•„์š”)

๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ ๋‚ ์งœ: