์ด์ํ ๋ฌธ์ ๋ง๋ค๊ธฐ
๋ฌธ์์ด s๋ ํ ๊ฐ ์ด์์ ๋จ์ด๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. ๊ฐ ๋จ์ด๋ ํ๋ ์ด์์ ๊ณต๋ฐฑ๋ฌธ์๋ก ๊ตฌ๋ถ๋์ด ์์ต๋๋ค. ๊ฐ ๋จ์ด์ ์ง์๋ฒ์งธ ์ํ๋ฒณ์ ๋๋ฌธ์๋ก, ํ์๋ฒ์งธ ์ํ๋ฒณ์ ์๋ฌธ์๋ก ๋ฐ๊พผ ๋ฌธ์์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํ์ธ์.
์ ํ ์กฐ๊ฑด
* ๋ฌธ์์ด ์ ์ฒด์ ์ง/ํ์ ์ธ๋ฑ์ค๊ฐ ์๋๋ผ, ๋จ์ด(๊ณต๋ฐฑ์ ๊ธฐ์ค)๋ณ๋ก ์ง/ํ์ ์ธ๋ฑ์ค๋ฅผ ํ๋จํด์ผํฉ๋๋ค.
* ์ฒซ ๋ฒ์งธ ๊ธ์๋ 0๋ฒ์งธ ์ธ๋ฑ์ค๋ก ๋ณด์ ์ง์๋ฒ์งธ ์ํ๋ฒณ์ผ๋ก ์ฒ๋ฆฌํด์ผ ํฉ๋๋ค.
์ ์ถ๋ ฅ ์
"try hello world"๋ ์ธ ๋จ์ด "try", "hello", "world"๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. ๊ฐ ๋จ์ด์ ์ง์๋ฒ์งธ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก, ํ์๋ฒ์งธ ๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ฐ๊พธ๋ฉด "TrY", "HeLlO", "WoRlD"์ ๋๋ค. ๋ฐ๋ผ์ "TrY HeLlO WoRlD" ๋ฅผ ๋ฆฌํดํฉ๋๋ค.
s | return |
---|---|
"try hello world" | "TrY HeLlO WoRlD" |
๋ฌธ์ ํ์ด
toUpperCase()์ toLowerCase ๊ทธ๋ฆฌ๊ณ replace๋ฅผ ํ์ฉํด ๊ฐ ๋จ์ด์ ์ง์๋ฒ์งธ ๋ฌธ์๋ฅผ ๋๋ฌธ์๋ก, ํ์๋ฒ์งธ ๋ฌธ์๋ฅผ ์๋ฌธ์๋ก ๋ฐ๊พธ๋๋ก ์คํฌ๋ฆฝํธ๋ฅผ ์ง ๋ค.
function solution(s){
return s.toUpperCase().replace(/(\w)(\w)/g, function(a){return a[0].toUpperCase()+a[1].toLowerCase();})
}
๋ค๋ฅธ ํ์ด ๋ฐฉ์
split๊ณผ map์ ํ์ฉํ๋ ๋ฐฉ๋ฒ๋ ์๋ค.
const solution = s => s.split(" ").map(x => x.split('').map((c, i) => c = i % 2 === 0 ? c.toUpperCase() : c.toLowerCase()).join("")).join(" ");
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค Lv.1 : ๋ด์ (ๅ ง็ฉ, inner product) (1) | 2022.11.21 |
---|---|
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค Lv.1 : 3์ง๋ฒ ๋ค์ง๊ธฐ (2) | 2022.11.18 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค Lv.1 : ํ์ค๋ ์ (1) | 2022.11.16 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค Lv.1 : ํ๋ ฌ์ ๋ง์ (1) | 2022.11.16 |
[Algorithm] ํ๋ก๊ทธ๋๋จธ์ค Lv.1 : ์ฝ๋ผ์ธ ์ถ์ธก (3) | 2022.11.15 |
๋๊ธ