๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ“– Algorithm/์ฝ”๋”ฉํ…Œ์ŠคํŠธ

2022.06.22 ใ€ŒLv.2 Jadan Caseใ€

by GroovyArea 2022. 6. 22.

https://programmers.co.kr/learn/courses/30/lessons/12951

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - JadenCase ๋ฌธ์ž์—ด ๋งŒ๋“ค๊ธฐ

JadenCase๋ž€ ๋ชจ๋“  ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๊ฐ€ ๋Œ€๋ฌธ์ž์ด๊ณ , ๊ทธ ์™ธ์˜ ์•ŒํŒŒ๋ฒณ์€ ์†Œ๋ฌธ์ž์ธ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ๋‹จ, ์ฒซ ๋ฌธ์ž๊ฐ€ ์•ŒํŒŒ๋ฒณ์ด ์•„๋‹ ๋•Œ์—๋Š” ์ด์–ด์ง€๋Š” ์•ŒํŒŒ๋ฒณ์€ ์†Œ๋ฌธ์ž๋กœ ์“ฐ๋ฉด ๋ฉ๋‹ˆ๋‹ค. (์ฒซ ๋ฒˆ์งธ ์ž…์ถœ๋ ฅ ์˜ˆ ์ฐธ๊ณ 

programmers.co.kr

 

๋ฌธ์ œ ์„ค๋ช…

JadenCase๋ž€ ๋ชจ๋“  ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๊ฐ€ ๋Œ€๋ฌธ์ž์ด๊ณ , ๊ทธ ์™ธ์˜ ์•ŒํŒŒ๋ฒณ์€ ์†Œ๋ฌธ์ž์ธ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค. ๋‹จ, ์ฒซ ๋ฌธ์ž๊ฐ€ ์•ŒํŒŒ๋ฒณ์ด ์•„๋‹ ๋•Œ์—๋Š” ์ด์–ด์ง€๋Š” ์•ŒํŒŒ๋ฒณ์€ ์†Œ๋ฌธ์ž๋กœ ์“ฐ๋ฉด ๋ฉ๋‹ˆ๋‹ค. (์ฒซ ๋ฒˆ์งธ ์ž…์ถœ๋ ฅ ์˜ˆ ์ฐธ๊ณ )
๋ฌธ์ž์—ด s๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, s๋ฅผ JadenCase๋กœ ๋ฐ”๊พผ ๋ฌธ์ž์—ด์„ ๋ฆฌํ„ดํ•˜๋Š” ํ•จ์ˆ˜, solution์„ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

์ œํ•œ ์กฐ๊ฑด
  • s๋Š” ๊ธธ์ด 1 ์ด์ƒ 200 ์ดํ•˜์ธ ๋ฌธ์ž์—ด์ž…๋‹ˆ๋‹ค.
  • s๋Š” ์•ŒํŒŒ๋ฒณ๊ณผ ์ˆซ์ž, ๊ณต๋ฐฑ๋ฌธ์ž(" ")๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ˆซ์ž๋Š” ๋‹จ์–ด์˜ ์ฒซ ๋ฌธ์ž๋กœ๋งŒ ๋‚˜์˜ต๋‹ˆ๋‹ค.
    • ์ˆซ์ž๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด๋Š” ์—†์Šต๋‹ˆ๋‹ค.
    • ๊ณต๋ฐฑ๋ฌธ์ž๊ฐ€ ์—ฐ์†ํ•ด์„œ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋ฌธ์ œ ํ’€์ด ๊ณผ์ •

๋ชจ๋‘ jadan ์ผ€์ด์Šค๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ split์œผ๋กœ ๋‚˜๋ˆ  ๊ฐ๊ฐ์˜ ๋ฌธ์ž์—ด ๋ฐฐ์—ด๋กœ ๋งŒ๋“ ๋‹ค. 

์กฐ์‹ฌํ•ด์•ผ ํ•  ์ ์ด ๊ณต๋ฐฑ ๋ฌธ์ž๊ฐ€ ์—ฐ์†์ ์œผ๋กœ ๋‚˜์˜ฌ ๊ฒฝ์šฐ๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•œ๋‹ค. 

์ด ์ œํ•œ ์‚ฌํ•ญ ๋•Œ๋ฌธ์— ๊ณ„์† ํ…Œ์ŠคํŠธ์— ์‹คํŒจํ–ˆ๋‹ค. 

 

๊ทธ๋ž˜์„œ ์ฒ˜์Œ์—

๋นˆ ๋ฌธ์ž๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋ชจ๋“  ๊ธ€์ž๋กœ ๋‚˜๋ˆ„์–ด์ง„ ๋ฌธ์ž์—ด ๋ฐฐ์—ด์„ ๋งŒ๋“ ๋‹ค. 

๊ทธ ํ›„ ์ฒซ ๋ฌธ์ž๋ฅผ ํŒ๋‹จํ•˜๋Š” flag boolean ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•œ๋‹ค. 

๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด ์ฒซ ๊ธ€์ž์ผ ๊ฒฝ์šฐ toUpperCase()๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. 

๊ณต๋ฐฑ์ด ๋‚˜์˜ฌ ๊ฒฝ์šฐ flag๋ฅผ true๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค.

 

 

๋ฐ˜์‘ํ˜•