function solution(arr){
var answer = [];
for(let i = 0; i < arr.length; i++){
if(arr[i] !== arr[i + 1]){
answer.push(arr[i]);
}
}
return answer;
}
간단한 문제다.
arr을 순회하면서 만일 현재 원소가 다음 원소랑 같지 않으면 답 배열 안에 해당 수를 넣어준다
function solution(s) {
let answer = true;
let alength = [4,6]
for(let i = 0 ; i<s.length ; i++){
if(s.charCodeAt(i) <48 || s.charCodeAt(i) >57){
answer = false;
}
}
if(s.length === 4 && answer === true){
return answer;
} else if(s.length === 6 && answer === true){
return answer;
} else {
answer = false;
}
return answer;
}
answer의 초기값을 true로 만들고
받은 현재 문자를 유니코드로 바꿔서 숫자의 범위가 아니면 바로 false로 리턴하고
길이가 틀린 순간 바로 false로 바꿔준다.
function solution(s){
var answer = true;
let conpetition = s.toLowerCase();
const po = 'p';
const yo = 'y';
let pcount = 0;
let ycount = 0;
for(let i = 0 ; i<conpetition.length ; i++){
if(conpetition[i] === po){
pcount++;
} else if(conpetition[i] === yo){
ycount++;
}
}
if(pcount === ycount){
answer = true;
}
else{
answer = false;
}
return answer;
}
리팩토링을 안해서 코드가 매우 더럽다.
일단 문자열의 대소문자는 구분하지 않으니 문자열을 모두 소문자로 치환한 후
p와 y를 비교하여 count를 증가 시켜 나간 후 비교한다
function solution(num) {
return num%2==0 ? "Even" : "Odd";
}
설명이 필요한가. 삼중연산자다
function solution(arr) {
return arr.reduce((a, b) => a + b) / arr.length;
}
reduce문으로 간단하게 풀어봣다
function solution(n) {
let result = ""
for(let i = 1; i<=n; i++){
if(i % 2 === 0){
result += "박"
}else{
result += "수"
}
}
return result
}
이것 역시 가벼운 문제다