์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ๋ง์…ˆ - ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค(Swift)

2022. 9. 26. 10:59ใ†ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค-Swift

์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜์™€ ๋ง์…ˆ - ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค(Swift)

 

 

๋ฌธ์ œ ์„ค๋ช…

๋‘ ์ •์ˆ˜ left์™€ right๊ฐ€ ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. left๋ถ€ํ„ฐ right๊นŒ์ง€์˜ ๋ชจ๋“  ์ˆ˜๋“ค ์ค‘์—์„œ, ์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ง์ˆ˜์ธ ์ˆ˜๋Š” ๋”ํ•˜๊ณ , ์•ฝ์ˆ˜์˜ ๊ฐœ์ˆ˜๊ฐ€ ํ™€์ˆ˜์ธ ์ˆ˜๋Š” ๋บ€ ์ˆ˜๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.


์ œํ•œ์‚ฌํ•ญ
  • 1 ≤ left  right ≤ 1,000

์ž…์ถœ๋ ฅ ์˜ˆleftrightresult
13 17 43
24 27 52

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • ๋‹ค์Œ ํ‘œ๋Š” 13๋ถ€ํ„ฐ 17๊นŒ์ง€์˜ ์ˆ˜๋“ค์˜ ์•ฝ์ˆ˜๋ฅผ ๋ชจ๋‘ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

13 1, 13 2
14 1, 2, 7, 14 4
15 1, 3, 5, 15 4
16 1, 2, 4, 8, 16 5
17 1, 17 2
  • ๋”ฐ๋ผ์„œ, 13 + 14 + 15 - 16 + 17 = 43์„ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • ๋‹ค์Œ ํ‘œ๋Š” 24๋ถ€ํ„ฐ 27๊นŒ์ง€์˜ ์ˆ˜๋“ค์˜ ์•ฝ์ˆ˜๋ฅผ ๋ชจ๋‘ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

24 1, 2, 3, 4, 6, 8, 12, 24 8
25 1, 5, 25 3
26 1, 2, 13, 26 4
27 1, 3, 9, 27 4
  • ๋”ฐ๋ผ์„œ, 24 - 25 + 26 + 27 = 52๋ฅผ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

๋‚˜์˜ ํ’€์ด

๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ํ’€์ด

 

ํ”ผ๋“œ๋ฐฑ

1. map์˜ ํด๋กœ์ €๋กœ { x in () }๊ฐ€ ๋˜๋ฉด x๋Š” $0์˜ ์—ญํ• ์„ ํ•œ๋‹ค.

2. in ๋’ค์—๋Š” ๋ฒ”์œ„์—ฐ์‚ฐ์ž์˜ ๋ณ€ํ˜•ํ˜•ํƒœ๋กœ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋‹ค.(filterํ›„ countํ›„ ์‚ผํ•ญ์—ฐ์‚ฐ์ž๋ฅผ ๊ฑฐ์นœ ๊ฐ’)