๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ - ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค(swift)

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

๊ฐ€์šด๋ฐ ๊ธ€์ž ๊ฐ€์ ธ์˜ค๊ธฐ - ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค(swift)

 

 

๋ฌธ์ œ ์„ค๋ช…

๋‹จ์–ด s์˜ ๊ฐ€์šด๋ฐ ๊ธ€์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ๋งŒ๋“ค์–ด ๋ณด์„ธ์š”. ๋‹จ์–ด์˜ ๊ธธ์ด๊ฐ€ ์ง์ˆ˜๋ผ๋ฉด ๊ฐ€์šด๋ฐ ๋‘๊ธ€์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์žฌํ•œ์‚ฌํ•ญ
  • s๋Š” ๊ธธ์ด๊ฐ€ 1 ์ด์ƒ, 100์ดํ•˜์ธ ์ŠคํŠธ๋ง์ž…๋‹ˆ๋‹ค.
์ž…์ถœ๋ ฅ ์˜ˆ return
"abcde" "c"
"qwer" "we"

 

์•„์ด๋””์–ด

Array๋กœ ๋ฐ”๊พผ ๋’ค ์ ˆ๋ฐ˜์˜ ๊ฐ’์„ index๋กœ ๋†“๊ณ  sum์— ๋ˆ„์ ์‹œ์ผœ ๋ฆฌํ„ดํ•˜์ž.

 

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

 

 

์Šค์œ„ํ”„ํŠธ ๋ฌธ์ž์—ด ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ดํ•ดํ•œ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ํ’€์ด

1. String.Index๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ฌธ์ž์—ด์„ ์„œ๋ธŒ์Šคํฌ๋ฆฝํŒ…ํ•ด์„œ Index๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ๋•Œ ์ธ๋ฑ์Šค๋Š” ์šฐ๋ฆฌ๊ฐ€ ์•„๋Š” ์ •์ˆ˜์˜ ์ธ๋ฑ์Šค๊ฐ€ ์•„๋‹Œ rawBit์˜ ๊ฐ’์ด๋‹ค. ์ด rawBit๋ฅผ ์ด์šฉํ•ด์„œ ๋ฌธ์ž์—ด์˜ ํŠน์ • ๊ฐ’์„ ๊ฐ€์ ธ์˜ค๊ฒŒ ๋˜๋Š” ๊ฒƒ์ด๋‹ค.

 

2. ์œ„์˜ ์ฝ”๋“œ์—์„œ (s.count/2)-1๊ฐ€ ์•„๋‹Œ (s.count-1)/2๋ฅผ ํ•จ์œผ๋กœ์จ s์˜ ๊ธธ์ด๊ฐ€ ํ™€์ˆ˜๋“  ์ง์ˆ˜๋“  ๊ฐ€์šด๋ฐ ์ธ๋ฑ์Šค๊ฐ€ ์žกํžˆ๊ฒŒ ๋งŒ๋“ค์—ˆ๋‹ค.

 

3. s[String.Index...String.Index]๋Š” Stringํƒ€์ž…์ด ์•„๋‹Œ String.subSequenceํƒ€์ž…์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฆฌํ„ด๊ฐ’์— ๋ถ€ํ•ฉํ•˜๊ธฐ ์œ„ํ•ด String์œผ๋กœ ๊ฐ์‹ธ์ค€๋‹ค.

 

 

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

 

1. ์ง์ˆ˜์ผ ๋–„์™€ ํ™€์ˆ˜์ผ ๋•Œ๋ฅผ ๋‚˜๋ˆ ์„œ ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค ๋ฒ”์œ„์—ฐ์‚ฐ์ž๋ฅผ ์ด์šฉํ•ด์„œ ์ถ”์ถœํ•œ๋‹ค.