function solution(arr1){
let answer=0;
let originArr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
// 0~9까지라고 했으니 오리진 어레이를 하나 만들어준다.
let newArr = originArr.filter(x => !arr1.includes(x))
// 오리진 어레이에서 arr1에 없는 값만 필터링한 새로운 어레이를 만들어줍니다.
for (let i = 0; i < newArr.length; i++){
answer += newArr[i]
// 그 값을 for 문을 돌려 더해줍니다.
}
return answer;
}
let arr1=[1,3,5,9,2,4,8,0];
console.log(solution(arr1))
다행히 프로그래머스에서 풀었던 영역이 나왔다. 깔끔하게 성공.
function solution(arr, n){
let temp1 = []
// 최종 temp1 빈 array를 만들어줍니다.
for (let i = 0; i < arr.length; i++){
// for 반복문으로 arr를 먼저 풀어줍니다.
let temp2 = arr => arr.filter((item, index) => arr.indexOf(item) != index)
// temp2는 arr에서 중복값을 찾아내는 변수입니다. 입력값에서 나온 중복값은 "dog"이므로 dog를 찾아줍니다.
let findDup = temp2(arr)
// 찾은 dog값을 findDup이라는 변수에 담습니다.
if (arr[i] != findDup){
// 조건문 if를 통해 dog과 다르면 temp1에 담아줍니다.
temp1.push(arr[i])
}
}
let answer = temp1.sort((a, b) => {
// 이후 담은 temp1값에서 글자의 알파벳 순을 구하는 식을 구합니다. 두 글자씩 비교한다 해서 순서대로 a, b를 sort 하는데
if(a[n] > b[n]) return 1;
if(a[n] < b[n]) return -1;
// a[n]과 b[n]을 서로 비교했을 때 a가 먼저면 1, b가 먼저면 -1을 리턴해줘서 정렬합니다.
if(a[n] === b[n]){
// a, b의 값이 같으면 전체적인 a, b를 비교합니다.
if(a>b) return 1;
if(a<b) return -1;
return 0;
// 완전히 같은 것은 0으로 반환해줍니다.
}
});
return answer;
}
let arr=["coke", "water", "glass", "dog", "dog", "yogurt", "vitamin"];
let n=2;
console.log(solution(arr, n))
마찬가지로 프로그래머스에서 푼 내용을 응용했다. 같은 단어를 모두 제거하는 것을 대신해 그걸 제외한 나머지를 임의의 temp1에 담는 방향으로 갔다.
오히려 중 문제가 더 어려웠다. 이건 시험장 나와서 다시 풀어보는 것으로 했다. 해설은 문제에 넣어뒀다.
function solution(s){
let answer="";
let words = s.split(' ')
// words를 공백으로 split해서 단어단위로 쪼개준다.
let newWords = ""
// 새로운 단어를 집어넣을 newWords를 만들어준다.
for (let k=0; k < words.length; k++){
newWords += words[k]
// 새 단어 변수에 단어들을 담아서 문자열로 바꿔준다.
if (k < newWords.length-1){
newWords += ' '
// 먼저 띄어쓰기를 2회 해줘서 확실하게 띄어준다. => 왜냐면 띄어쓰기도 포함해야하기 때문이다.
}
}
for (let i = 0; i < newWords.length; i++){
// newWords를 풀어준다.
if(i % 2 === 0){
answer += newWords[i].toUpperCase();
// 짝수번째 앓파벳은 업퍼
}else{
answer += newWords[i].toLowerCase();
// 홀수번째 알파벳은 로워해준다.
}
answer = answer.replace(/ +/g," ")
// 이후 두 칸의 공백을 한 칸으로 변경해준다.
}
return answer
}
let s="hang hae ninety nine";
console.log(solution(s))