ํฐ์คํ ๋ฆฌ ๋ทฐ
์๋ฌธ์๋ก ๋ ๋จ์ด(๋ฌธ์์ด)๊ฐ ์ ๋ ฅ๋๋ฉด ๊ทธ ๋จ์ด์ ๊ฐ์ด๋ฐ ๋ฌธ์๋ฅผ ์ถ๋ ฅํ๊ณ ์ ํ๋ค.
(๋จ, ๋จ์ด์ ๊ธธ์ด๊ฐ ์ง์์ผ ๊ฒฝ์ฐ ๊ฐ์ด๋ฐ 2๊ฐ์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํ๋ค.)
๋ฌธ์์ด ๋ด์ ์ค๊ฐ ๋ฌธ์์ ์ธ๋ฑ์ค ๊ฐ์ ์๋ณํ๊ธฐ ์ํด์ Math.ceil() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ์ฒด ๋ฌธ์์ด(s.length)์์ ์ ๋ฐ์ผ๋ก ๋๋ ๋ฐ์ฌ๋ฆผ ๊ฐ์ -1์ ํด์ฃผ์ด ์ค๊ฐ ๋ฌธ์์ ์ธ๋ฑ์ค ๊ฐ์ middle ๋ณ์์ ํ ๋นํด ์ฃผ์๋ค.
> ๋ฌธ์์ด ๋ด์์ ๊ฐ์ด๋ฐ ๋ฌธ์์ ์ค๊ฐ๊ฐ๊ณผ ์ธ๋ฑ์ค ๊ฐ์ 1์ ์ฐจ์ด๊ฐ ๋๊ธฐ ๋๋ฌธ์(์ดํฐ๋ฌ๋ธ์ธ ๋ฌธ์์ด์ ์์ ์ธ๋ฑ์ค๊ฐ 0๋ถํฐ ์์ํ๊ธฐ ๋๋ฌธ์) 'Math.ceil() - 1' ์ฐ์ฐ๋ณด๋จ ์ฒ์๋ถํฐ ๋ฐ์ฌ๋ฆผ์ ํ์ง ์๋ Math.floor()๋ Math.parseInt()๋ฅผ ์ฐ๋ ๊ฒ์ด ์ ํฉํ๋ค.
๋ฌธ์์ด s๋ฅผ ์คํ๋ ๋ ๋ฌธ๋ฒ์ ํตํด ๊ฐ ๋ฌธ์๋ค๋ก ๋ถ๋ฆฌํ ๋ค ๋ฐฐ์ด๋ก ๋ฌถ์ด, ์๋ก์ด ๋ณ์ newArr์ ํ ๋นํด ์ฃผ์๋ค.
for of๋ฌธ์ ์ฌ์ฉํ์ฌ ๋ฌธ์์ด s๋ฅผ ์ํ ๋ฐ ์ฐธ์กฐํ๋ฉด์ ํ์์ด๋ฉด์(2๋ก ๋๋์์ ๋ ๋๋จธ์ง ๊ฐ์ด 0์ด ์๋ ๊ฒฝ์ฐ) newArr์ ์ค๊ฐ ๋ฌธ์์ s์ ๋ฌธ์๊ฐ ๋์ผํ ๋ ํด๋น ๋ฌธ์๋ฅผ answer์ ํ ๋นํด ์ฃผ์๋ค.
๋ง์ฝ ์ง์์ผ ๊ฒฝ์ฐ์๋ ๊ฐ์ด๋ฐ 2๊ฐ์ ๋ฌธ์๋ฅผ ๋ฐํํด์ผ ๋๊ธฐ ๋๋ฌธ์ String.slice() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ middle ์ธ๋ฑ์ค๋ถํฐ middle์์๋ถํฐ 2๋ฒ์งธ์ ์ ์ฌ ๋ ์ธ๋ฑ์ค ์ ๊น์ง์ ํด๋นํ๋ ๋ฌธ์ 2๊ฐ๋ฅผ ์๋ผ์ค ๋ค answer์ ํ ๋นํด ์ฃผ์๋ค.
String.substring()์ ํตํด์๋ ๊ฐ์ด๋ฐ ๋ฌธ์๋ฅผ ๊ตฌํ ์ ์๋ค. ์ด๋ ์ง์์ผ ๊ฒฝ์ฐ์๋ ํด๋น ๊ฐ์ด๋ฐ ๋ฌธ์์ ๊ทธ ๋ค์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํด์ค์ผ ๋๊ธฐ ๋๋ฌธ์ ์์ ์ธ๋ฑ์ค๋ฅผ ์ถ๋ ฅํ๊ณ ์ ํ๋ ์ธ๋ฑ์ค ๊ฐ ์ ์์๋ถํฐ ์์ํ๊ฒ๋ 1์ ๊ฐ์ฐํด์ฃผ์๋ค.
String.substr()๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ 2๋ฒ์งธ ์ธ์์ ๋๋๋ ๋ฒ์ ์ธ๋ฑ์ค ๊ฐ์ด ์๋ ์์ ์ธ๋ฑ์ค์์๋ถํฐ ๋ช๊ฐ๋ฅผ ์ถ์ถํด๋ผ์ง ๊ฐ์ ๋ช ์ํด์ฃผ๋ฉด ๋๋ค.
'์๊ณ ๋ฆฌ์ฆ > ํ๊ทธ ๋ณ ํ์ด' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ค๋ณต๋จ์ด์ ๊ฑฐ (0) | 2021.05.02 |
---|---|
์ค๋ณต๋ฌธ์์ ๊ฑฐ (0) | 2021.05.02 |
๊ฐ์ฅ ๊ธด ๋ฌธ์์ด (0) | 2021.04.28 |
๋์๋ฌธ์ ๋ณํ (0) | 2021.04.27 |
๋๋ฌธ์๋ก ํต์ผ (0) | 2021.04.26 |