완전 망할 뻔 했다... result 수를 잘못 읽어서 한 시간을 통으로 날리고 심지어 전채챗으로 혹시 오류가 아니냐고 물어보기까지 했다... 하... 진짜 게더 창 그대로 내려버리고 싶었다...........괴로워.................................
1번은 그럭저럭 쉬웠는데 그 1시간 헤매는 동안 2번으로 넘어갔다가 너무 어려워서 충격을 먹고 한참 꼬라봤음...
오늘 컨디션이 너어어무 별로라 통 집중이 안 되는 중... 그럼 잠을 더 자면 될 텐데 두시 전엔 잠이 오지도 않고 낮에 집중 못 한 만큼의 업보를 새벽에 갚느라 맘대로 눕지도 못하고 있다 ㅡ ㅅ ㅜ
function solution(n) {
let answer = [];
for (let i = 0; i < n; i++) {
answer[i-1]==='수' ? answer.push('박') : answer.push('수');
}
return answer.join("");
}
배열 answer의 인덱스(i)의 앞 인덱스(i-1)의 요소가 '수' 일 경우 '박'을, 아닐 경우 '수'를 넣어 ["수","박","수","박",...] 형태의 배열을 만들고, join() 함수를 사용해 구분 없이 합쳐 평범한(?) 반복 문자열로 만든다.
function solution(participant, completion) {
let answer = '';
// let a
// let b
participant.sort();
completion.sort();
for(let i = 0; i < participant.length; i++){
// console.log(completion.includes(participant[i]))
// a = participant.sort();
// b = completion.sort();
if ( participant[i] != completion[i] ) {
answer = participant[i]
break;
}
}
return answer
}
주석처리된 구문대로 짰다가 망해서 다시 짰다.
먼저 participant, completion 두 배열 모두 sort()를 사용해 정렬시킨다.(정렬 기준의 기본값은 유니코드 코드 포인트)
두 배열의 같은 인덱스의 요소별로 비교해 같지 않을 경우 participant 배열의 해당 인덱스 요소를 return하고 반복을 멈춘다.(break)
function solution(s) {
let srr = s.split(" ");
let answer = [];
for(let i=0; i<srr.length; i++){
let result = [];
for(let j=0; j<srr[i].length; j++) {
j%2==0 ? result += srr[i][j].toUpperCase() : result += srr[i][j].toLowerCase()
}
answer.push(result)
}
return answer.join(" ")
}
문자열 s를 공백에 따라 쪼개어 배열 srr에 저장한다.
반복문을 통해 쪼개 넣은 srr의 각 인덱스가 가리키는 요소를 확인한다.
result라는 새 배열을 만들고, 조건문을 돌려 인덱스 j가 짝수일 때(j%2=0) srr의 요소 i의 요소 j를 대문자로 만들고, 반대로 홀수일 경우(j%2!=0) 소문자로 만든다.
비어있는 answer 배열에 넣어주고, 배열 요소 사이를 공백으로 변경해 문자열로 추출한다.
function solution(n){
let answer = 0;
let ntstr = n.toString();
for(let i = 0; i < ntstr.length; i++) {
answer += parseInt(ntstr[i])
}
return answer
}
function solution(n) {
let answer = [];
let narr = [];
let nstr = n.toString();
for ( let i = 0; i < nstr.length; i++) {
narr.push(parseInt(nstr[i]));
}
for ( let j = narr.length-1; j >= 0; j--) {
answer.push(narr[j]);
}
return answer;
}
이것도 자연수를 문자열로 변환해 진행하였다.
function solution(n) {
let answer = [];
let narr = [];
let nstr = n.toString();
for ( let i = 0; i < nstr.length; i++) {
narr.push(parseInt(nstr[i]));
}
narr.sort(function(a,b){
return b-a
})
return parseInt(narr.join(''));
}
이 문제 또한 문자열로 변경 후 진행하였는데, sort() 함수를 이용해 내림차순으로 설정해 주었다. 근데 배열의 재정렬에 대한 문제에서 sort를 써도 되는지 의문이다.
벨로그가 숨김글 기능을 만들어줬음 좋겟다아