본문 바로가기

ComputerScience69

[Lv.0] 평행(복잡한 계산문제에서의 전략) 1. 문제 2. 전략 1) 두개의 점을 이은 선분의 기울기는 (x2-x1)/(y2-y1) 이다. 2) for 반복문을 이용해서 가능한 선분의 모든 기울기를 newArray에 push한다. 3) newArray에 중복값이 있으면 평행한 선분을 그을 수 있다. function solution(dots) { var answer = 0; let allArr = []; for(let i =0; i 2023. 1. 30.
[Lv.0] 외계어 사전 1. 문제 2. 전략 1) 일단 spell의 전체길이와 dic의 글자수가 다른 요소는 어차피 발음 못하므로 삭제한다. 2) dic의 각 글자에서 spell의 글자들과 비교하여 일치하는 경우 '' 으로 replace 시킨다. (중복된 원소가 없으므로 한번만 검사하면 된다) 3) 작업된 배열 중에서 글자가 모두 교체되어 ''가 된 요소가 1개 이상일 경우 spell의 알파벳을 한번만 사용한 단어가 dic에 존재하므로 answer =1 이다. function solution(spell, dic) { var answer = 2; let newDic = []; //중복되지 않으며, spell의 원소 모두를 사용해야하므로 dic의 요소 중에서 spell의 전체의 길이와 //같은 요소만을 필터해서 newDic에 모아.. 2023. 1. 30.
[Lv.0] 영어가 싫어요(.replaceAll()) 1. 문제 2. 풀이 function solution(numbers) { let numberEn = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine'] let sum = numbers for(let i =0; i 2023. 1. 30.
[Lv.0] 7의 개수 1. 문제 2. 풀이 function solution(array) { let count = 0; for(let i =0; i< array.length; i++){ // 배열의 개수만큼 순회하며 아래 실행. let f = array[i].toString().indexOf('7'); //각 요소 중 7의 첫번째 인덱스를 반환 (indexOf()는 요소가 없으면 -1을 반환한다) while(f !=-1){ //7이 있으면 계속 실행하며 count를 올려 개수를 세준다. count++; f = array[i].toString().indexOf('7', f + 1) // indexOf의 두번째 파라미터(option)를 +1해주며 검색을 계속 진행 } } var answer = count; return answer.. 2023. 1. 30.
[Lv.0] 합성수 찾기 1. 문제 2. 풀이 function solution(n) { var answer = 0; let count = []; for(i= 2; i set -> array의 과정을 거치며 중복값을 제거하는 용도로도 사용 가능하다. 3) 축약형으로 : - let b = [...new Set(a)] ; 로 축약하여 중복값을 제거할 수 있다. 2023. 1. 30.
[Lv.0] 가장 큰 수 찾기 (Math.max(), findIndex()) 1. 문제 2. 풀이 function solution(array) { let max = Math.max(...array); //Math객체의 max메소드를 이용해 array의 요소 중 최대값을 구한다. let index = array.findIndex(e => e === max); //array중에서 max의 값과 같은 요소의 index를 알아낸다. let answer = [max, index] //answer에 입력 return answer; } 3. 알아야할 사항 1) Math.max(a,b,c) : - a,b,c 중 최대값을 리턴한다. 2) array.findIndex( (a) => 조건문 ) : - 조건문에 해당하는 값을 리턴한다. a는 각각의 요소이다. 2023. 1. 30.
[Lv.0] 중앙값 구하기(sort(), 불안정정렬, 안정정렬) 1. 문제 2. 풀이 function solution(array) { var answer = 0; array.sort((a,b) => b-a) //배열을 정렬한다. answer = array[Math.floor(array.length/2)] //배열의길이를 2로 나눈값을 버림하면 중앙값의 index이다. return answer; } 3. 알아야할 사항 1) array.sort((a,b)=>a-b): - 콜백함수가 (a,b) => a-b 일 경우 오름차순 정렬 - 콜백함수가 (a,b) => b-a 일 경우 내림차순 정렬 - Stable Sort 란 ? : 배열의 요소 중 같은 값이 있을 경우 기존의 순서가 보장되어 정렬되는 정렬 알고리즘의 경우 안정정렬(Stable Sort)이다. : 반대로 순서가 보장.. 2023. 1. 30.
[Lv.0] 편지 (.split()) 1. 문제 2. 풀이 function solution(message) { let a = message.split(' ') // 빈공간을 기준으로 분해하여 배열에 각각 담는다. let count = 0; //카운트를 세어줄 변수를 만든다 for(let i =0; i 2023. 1. 30.