
๋ฌธ์
๋จ์ด s์ ๊ฐ์ด๋ฐ ๊ธ์๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ๋ง๋ค์ด ๋ณด์ธ์. ๋จ์ด์ ๊ธธ์ด๊ฐ ์ง์๋ผ๋ฉด ๊ฐ์ด๋ฐ ๋๊ธ์๋ฅผ ๋ฐํํ๋ฉด ๋ฉ๋๋ค.
์ ์ถ๋ ฅ์ ์ "abcde" -> "c"
"qwer" -> "we"
์ฝ๋
function solution(s) { | |
// No.1 | |
const m = Math.floor(s.length / 2); | |
return s.length % 2 === 0 ? s[m-1] + s[m] : s[m]; | |
// No.2 | |
return s.substring((s.length - 1) / 2, s.length/2 + 1); | |
} |
ํ์ด
% ์ฐ์ฐ์๋ ๋๋์ ์ฐ์ฐ ํ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค. 2๋ก ๋๋์์ ๋ ๋๋จธ์ง ๊ธธ์ด๊ฐ 0์ด๋ผ๋ฉด, ์ฃผ์ด์ง ๋จ์ด์ ๊ธธ์ด๋ ์ง์์ด๋ค.
๋ฌธ์์ด์ ์ฝ๊ธฐ ์ ์ฉ ๋ฐฐ์ด์ฒ๋ผ ์ทจ๊ธ๋๊ธฐ ๋๋ฌธ์, ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํด ํน์ ์์น์ ๋ฌธ์๋ฅผ ์ถ์ถํ ์ ์๋ค. ์ด๋ฅผ ์ํด์ ์ ์ฒด ๋ฌธ์์ด ๊ธธ์ด๋ฅผ 2๋ก ๋๋ ํ, Math.floor() ํจ์๋ฅผ ์ ์ฉํด, ์์์ ์ดํ๋ฅผ ๋ฒ๋ฆฐ๋ค. (๋ฐฐ์ด์ ์ธ๋ฑ์ค๋ ํญ์ ์ ์์ด๋ค)
์ผํญ ์ฐ์ฐ์๋ฅผ ์จ์ ๋ฌธ์์ด ๊ธธ์ด๊ฐ ์ง์์ธ ๊ฒฝ์ฐ์๋ ๊ตฌํ ์ธ๋ฑ์ค-1 ์ ์์น๋ฅผ ๋ํ ๋ฌธ์์ด์ ์ถ๋ ฅํ๋ค.
๋ฌธ์์ด์ ์๋ฅด๋ ๋ํ์ ์ธ ๋ฉ์๋ ์ค์๋ substr()๋ ์์ผ๋, ๊ณต์ ๋ฌธ์์ ๋ฐ๋ฅด๋ฉด ์๋ ๊ฐ์ ๊ฒฝ๊ณ ๋ฉ์ธ์ง๋ฅผ ๋ณผ ์ ์๋ค.
Warning: Although String.prototype.substr(โฆ) is not strictly deprecated (as in โremoved from the Web standardsโ), it is considered a legacy function and should be avoided when possible. It is not part of the core JavaScript language and may be removed in the future. If at all possible, use the substring() method instead.
์ ๋ฌธ์ ํ์ด๋ substring() ๋ฉ์๋๋ฅผ ํตํด์ ๋์ฑ ๊ฐ๋จํ๊ฒ ๋ฐ๊ฟ ์ ์๋ค.
substring(indexStart, indexEnd) ๋ ๊ฐ์ง ์ธ์๋ฅผ ๋ฐ๋๋ค. ์์ ์ธ๋ฑ์ค๋ถํฐ ๋ ์ธ๋ฑ์ค์ ๋ฐ๋ก ์์๋ฆฌ๊น์ง๋ฅผ ๊ตฌ๊ฐ์ผ๋ก ํ๋ค. ์ฃผ์ด์ง ๋ฌธ์์ด์ด ํ์์ผ ๊ฒฝ์ฐ์๋ ๋ฐ๋ผ์ ์์ ์ธ๋ฑ์ค์ ์์น์ ์๋ฆฌํ ๋ฌธ์ ํ๋๋ง ๋ฐํ์ด ๋๋ค.
ํ์์ ์ง์์ ๋ถ๊ธฐ๋ฅผ ๋๋ ํ์๊ฐ ์์ด ์ฝ๋๊ฐ ๋์ฑ ๊น๋ํด์ง๋ค.
Java์์์ ํ์ด
class Solution { | |
public String solution(String s) { | |
// No.1 | |
int m = (int) Math.floor(s.length() / 2); | |
return s.length() % 2 == 0 ? s.substring(m - 1, m + 1) : String.valueOf(s.charAt(m)); | |
// No.2 | |
return s.substring((s.length()-1) / 2, s.length()/2 + 1); | |
} | |
} |
Java์์๋ ๋ง์ฐฌ๊ฐ์ง๋ก JavaScript์์ ์ผ๋ substring() ๋ฉ์๋๋ฅผ ๋์ผํ๊ฒ ์ฌ์ฉํ ์ ์๋ค. ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ ๊ตฌํ ๋ Java๋ length() ๋ฉ์๋๋ฅผ ์ด๋ค.
๋ฌธ์์ด ์ค ๋ฌธ์ ํ๋๋ง ์ถ์ถํ๊ณ ์ถ์ ๋๋ "๋ฌธ์์ด".charAt(index) ๋ฉ์๋๋ฅผ ์ธ ์๋ ์๋ค. char ํ์ ์ String์ผ๋ก ๋ฐํํด์ผ ํ ๋๋ ํ๋ณํ์ ํด์ฃผ์ด์ผ ํ๋ฏ๋ก String.valueOf() ๋ฉ์๋๋ฅผ ์ฌ์ฉํ ์ ์๋ค.