문제 설명
문제 풀이
function solution(s) {
let answer = '';
let arrS = s.split(' ');
for(let i = 0; i <= arrS.length - 1; i++) {
for(let j = 0; j <= arrS[i].length -1; j++) {
if(j % 2 === 0) {
answer += arrS[i][j].toUpperCase();
} else {
answer += arrS[i][j].toLowerCase();
}
if(arrS[i].length - 1 === j) {
answer += ' '
}
}
}
return answer.trim();
}
위 코드는 어떤 것이든 아무런 문제 없이 결과가 받아지는데 이상하게 코드 채점에서는 실패한다... 이유를 아직도 찾지 못했다.
그래서 아래 코드로 다시 작성하였다. 코드가 더 복잡해졌지만 위 코드의 문제점을 확인할 수가 없어서 어쩔수 없었다.
function solution(s) {
var answer = '';
let sArr=s.split('')
let arrUp = [];
let arrDown = [];
for (let i = 'a'.charCodeAt(0); i <= 'z'.charCodeAt(0); i++) {
arrDown.push(String.fromCharCode(i));
}
for (let i = 'A'.charCodeAt(0); i <= 'Z'.charCodeAt(0); i++) {
arrUp.push(String.fromCharCode(i));
}
sArr.map((e,i)=>{
if(e===" "){
answer +=" "
}else if(i===0){
answer +=e.toUpperCase()
}else if(sArr[i-1]===" "){
answer += e.toUpperCase()
}else if(arrDown.includes(answer[i-1])){
answer += e.toUpperCase()
}else if(arrUp.includes(answer[i-1])){
answer += e. toLowerCase()
}
})
return answer;
}
실행 결과
코드 채점하고 제출
'프로그래머스 문제 > Level 1' 카테고리의 다른 글
[프로그래머스] 자연수 뒤집어 배열로 만들기 - 자바스크립트 (0) | 2020.08.27 |
---|---|
[프로그래머스] 자릿수 더하기 - 자바스크립트 (0) | 2020.08.27 |
[프로그래머스] 약수의 합 - 자바스크립트 (0) | 2020.08.27 |
[프로그래머스] 수박수박수박수박수박수? - 자바스크립트 (0) | 2020.08.27 |
[프로그래머스] 문자열 정수로 바꾸기 - 자바스크립트 (0) | 2020.08.27 |