์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- useEffect
- ๋ธ๋ก๊ทธ
- Props
- ํ๋ก ํธ์๋
- CSS
- ๋ฐ๋ธ์ฝ์ค
- Flex
- ์๊ณ ๋ฆฌ์ฆ
- Gatsby
- fetch API
- useRef
- ์ฝ๋ฉํ ์คํธ
- ํ๋ก๊ทธ๋๋จธ์ค
- REACT
- ๋ฐ๋ธ์ฝ์ค3๊ธฐ
- position
- ์๋ฐ์คํฌ๋ฆฝํธ
- history api
- float
- Today
- Total
Daehyunii's Dev-blog
๊ฐ์ด๋ฐ ๋ฌธ์ ์ถ๋ ฅ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) ๋ณธ๋ฌธ
๊ฐ์ด๋ฐ ๋ฌธ์ ์ถ๋ ฅ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด)
Daehyunii 2022. 8. 28. 21:55๋ฌธ์ (์ถ์ฒ : ์ธํ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด ๊ฐ์, ์ ๋ณด์ฌ๋ฆผํผ์๋)
์๋ฌธ์๋ก ๋ ๋จ์ด(๋ฌธ์์ด)๊ฐ ์ ๋ ฅ๋๋ฉด ๊ทธ ๋จ์ด์ ๊ฐ์ด๋ฐ ๋ฌธ์๋ฅผ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์ธ ์. ๋จ ๋จ์ด์ ๊ธธ์ด๊ฐ ์ง์์ผ ๊ฒฝ์ฐ ๊ฐ์ด๋ฐ 2๊ฐ์ ๋ฌธ์๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
โฃ ์
๋ ฅ์ค๋ช
์ฒซ ์ค์ ๋ฌธ์์ด์ด ์
๋ ฅ๋๋ค. ๋ฌธ์์ด์ ๊ธธ์ด๋ 100์ ๋์ง ์์ต๋๋ค.
โฃ ์ถ๋ ฅ์ค๋ช
์ฒซ ์ค์ ๊ฐ์ด๋ฐ ๋ฌธ์๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
โฃ ์ ๋ ฅ์์ 1
study
โฃ ์ถ๋ ฅ์์ 1
u
โฃ ์ ๋ ฅ์์ 2
good
โฃ ์ถ๋ ฅ์์ 2
oo
Tip
1) ๋น ๋ฌธ์์ด์ ๋ด์ ๋ณ์๋ฅผ ๋ง๋ ๋ค.(result = '';)
2) ์กฐ๊ฑด๋ฌธ์ ํตํด์ ํด๋น ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ ํ์์ธ ๊ฒฝ์ฐ์๋ result์ ํด๋น ๋ฌธ์์ด์ Math.floor(length / 2)๋ฅผ ๊ณ์ฐํ์ฌ ํด๋น ์ซ์๋ฅผ ์ธ๋ฑ์ค๋ก ๊ฐ๋ ๋ฌธ์๋ฅผ ์ถ๊ฐํ๋ค.
3) ํด๋น ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ ์ง์์ธ ๊ฒฝ์ฐ์๋ result์ ํด๋น ๋ฌธ์์ด์ (length / 2) - 1, ๊ณผ length / 2 ์ ๊ณ์ฐํ์ฌ ํด๋น ์ซ์๋ค์ ์ธ๋ฑ์ค๋ก ๊ฐ๋ ๋ฌธ์๋ฅผ result์ ์ถ๊ฐํ๋ค.
1-1) ์ธ์๋ก ๋ฐ์ ๋ฌธ์์ด์ ๊ธธ์ด๋ฅผ 2๋ก ๋๋๊ณ ๋ด๋ฆผํ์ฌ ์ค๊ฐ์ ๊ฐ๋ฆฌํค๋ ๋ณ์๋ฅผ ๋ง๋ ๋ค.(mid = Math.floor(str.length/2))
2-1) ๋ง์ฝ ์ธ์๋ก ๋ฐ์ ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ ํ์์ธ ๊ฒฝ์ฐ์๋ substring()์ mid์, mid+1์ ์ ๋ฌํ์ฌ ๋ฐํ๋๋ ๊ฐ์ result์ ํ ๋นํ๋ค.
3-1) ๋ฌธ์์ด์ ๊ธธ์ด๊ฐ ์ง์์ธ ๊ฒฝ์ฐ์๋ substring()์ mid-1, mid+1์ ์ ๋ฌํ์ฌ ๋ฐํ๋๋ ๊ฐ์ result์ ํ ๋นํ๋ค.
์ฃผ์ํด์ผ ํ ์ ์ ์ธ๋ฑ์ค๋ 0์์ ์์ํ๋ฏ๋ก ์์์ ์์น๋ฅผ ์ ์๊ฐํด์ผํจ
String.prototype.substring(์ธ๋ฑ์ค1, ์ธ๋ฑ์ค2) : ์ธ๋ฑ์ค1 ์์น๋ถํฐ ~ ์ธ๋ฑ์ค2 ์ง์ ๊น์ง ๋ถ๋ถ๋ฌธ์์ด์ ์ถ์ถํ์ฌ ๋ฐํํ๋ค.
๋ฌธ์ ํ์ด
//๋ด๊ฐ ์์ฑํ ๋ต
function solution(str){
result = '';
if(str.length % 2 === 1){
result += str[Math.floor(str.length / 2)];
}else{
result += str[(str.length / 2) - 1];
result += str[(str.length / 2)];
}
return result;
}
console.log(solution('study'));
console.log(solution('good'));
console.log(solution('hellomyworld'));
//substring์ ํ์ฉํ๋ ๊ฒฝ์ฐ
function solution(string){
let answer;
let mid = Math.floor(string.length / 2);
if(string.length % 2 === 1) answer = string.substring(mid, mid-1);
else answer = string.substring(mid - 1, mid + 1);
return answer;
}
console.log(solution('study'));
console.log(solution('good'));
console.log(solution('hellomyworld'));
'๐ Language & CS knowledge > Algorithm (๊ธฐ์ด๋ฌธ์ ํ์ด)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ค๋ณต ๋จ์ด ์ ๊ฑฐ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) (0) | 2022.08.28 |
---|---|
์ค๋ณต ๋ฌธ์ ์ ๊ฑฐ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) (0) | 2022.08.28 |
๊ฐ์ฅ ๊ธด ๋ฌธ์์ด(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) (0) | 2022.08.28 |
๋์๋ฌธ์ ๋ณํ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) (0) | 2022.08.28 |
๋๋ฌธ์๋ก ํต์ผ(๊ธฐ๋ณธ ๋ฌธ์ ํ์ด) (0) | 2022.08.28 |