Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
Tags
- npm package
- 티스토리 성능
- device in use
- Git
- vercel git lfs
- github pdf
- Failed to compiled
- camera access
- react-native
- adb connect
- Can't resolve
- github 100mb
- adb pair
- Each child in a list should have a unique "key" prop.
- nextjs
- silent printing
- electron-packager
- augmentedDevice
- camera permission
- 이미지 데이터 타입
- ffi-napi
- html
- dvh
- animation
- Recoil
- ELECTRON
- github lfs
- custom printing
- rolldown
- react-native-dotenv
Archives
- Today
- Total
Bleeding edge
[프로그래머스] JadenCase 문자열 만들기 - 자바스크립트 본문
https://programmers.co.kr/learn/courses/30/lessons/12951
코딩테스트 연습 - JadenCase 문자열 만들기
JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고
programmers.co.kr
function solution(s) {
s=s.toLowerCase();
s = s.split(' ')
for(let i =0;i<s.length;i++){
let up = s[i][0].toUpperCase();
s[i] = [up, ...s[i].slice(1)].join('');
}
s= s.join(' ')
return s
}
1회차 풀이 때는, 테스트 케이스는 통과했지만, 최종 케이스에서 절반정도 틀렸다. 생각을 해봤는데, 이 문제를 굳이 나누고 처음 글자를 uppercase하는 것 보다는, " " 빈 string이 나온 후에는 toUpperCase를 하는 것이 더 효율적이라는 생각이 들어서.
1. 첫글자를 let answer에 대입 (i -1을 사용할꺼기 때문에)
2. answer에 대입할 chr은 모두 소문자로
3. 단, chr의 앞에 들어갈 글자가 " "라면, to upper case로 바꿀것
로 심플하게 풀었다, 여기서 콘솔로 한가지 확인한 케이스는 단 하나였다, 만일 숫자를 toUppercase시키면 어떤 경우가 나오는가이다. 숫자에는 대문자가 없어서 그런가 그냥 문제 없이 출력됬다.
아래는 풀이이다.
function solution(s) {
let answer = s[0].toUpperCase()
for(let i =1;i<s.length;i++){
// s[i]
let chr = s[i].toLowerCase()
if(s[i-1]===" "||0){
chr = s[i].toUpperCase()
}
answer = answer + chr
}
return answer
}
'코딩테스트 공부' 카테고리의 다른 글
[프로그래머스] [3차] n진수 게임 - 자바스크립트 (0) | 2022.05.10 |
---|---|
[프로그래머스] 주차 요금 계산 - 자바스크립트 (0) | 2022.05.10 |
[프로그래머스] [3차] 압축- 자바스크립트 (0) | 2022.05.06 |
[프로그래머스] n^2 배열 자르기 - 자바스크립 (0) | 2022.05.03 |
[프로그래머스] [1차] 다트 게임 - 자바스크립트 (0) | 2022.04.28 |