같은 숫자는 싫어
Problem Solving 2020. 9. 3. 00:33

https://programmers.co.kr/learn/courses/30/lessons/12906 방법은 간단하다 특정인덱스의 앞 혹은 뒤의 인덱스와 비교해서 다르면 달라진 값만 별도 array에 push하면 된다. 개발 가능한 케이스는 이아래 붙여 둔다. 그런데 효율성 테스트가 말이 안된다. C++ 로 된 답만 통과가 되고 java, javascript는 어떻게 해도 통과가 안된다. 혹시 나처럼 고생한 사람이 있다면, 당신 잘못이 아닌거 같다는 위로의 말을 남긴다. function solution(arr) { return arr.filter((val,index) => val != arr[index+1]); } function solution(arr) { return arr.filter((value,..

가운데 글자 가져오기
Problem Solving 2020. 9. 2. 23:52

https://programmers.co.kr/learn/courses/30/lessons/12903# 코딩테스트 연습 - 가운데 글자 가져오기 단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다. 재한사항 s는 길이가 1 이상, 100이하인 스트링입니다. 입출력 예 s ret programmers.co.kr Center를 정하는 방식만 신경 쓰면 큰 문제 없다. - Math.floor((length - 1) / 2) 뜬금 없지만 바이너리 트리 센터는 - Math.floor(start + (end - start)/2) function solution(s) { let center = Math.floor((s.length-1)/2..

2016년
Problem Solving 2020. 9. 2. 23:19

https://programmers.co.kr/learn/courses/30/lessons/12901# 코딩테스트 연습 - 2016년 2016년 1월 1일은 금요일입니다. 2016년 a월 b일은 무슨 요일일까요? 두 수 a ,b를 입력받아 2016년 a월 b일이 무슨 요일인지 리턴하는 함수, solution을 완성하세요. 요일의 이름은 일요일부터 토요일까�� programmers.co.kr 1월 1일에서 가장 가까운 일요일을 잡고 이보다 적거나 많은 날짜의 차를 구해서 7로 나머지 연산을 해서 처리했다. function solution(a, b) { const day = ['SUN','MON','TUE','WED','THU','FRI','SAT']; const mon = [0,31,29,31,30,31,..

K번째수 그리고 테스트케이스 2
Problem Solving 2020. 9. 2. 22:56

https://programmers.co.kr/learn/courses/30/lessons/42748# 코딩테스트 연습 - K번째수 [1, 5, 2, 6, 3, 7, 4] [[2, 5, 3], [4, 4, 1], [1, 7, 3]] [5, 6, 3] programmers.co.kr javascript기본 소트를 처리 할 경우 number라고 해도 1,10,2 이런식으로 소팅처리 된다. 반듯이 comparator를 만들어 줘야 한다. 그리고 boolean 처리는 더 이상 지원하지 않는다. function solution(array, commands) { var answer = []; for(let command of commands){ answer.push((array.slice(command[0]-1, ..

체육복 그리고 테스트케이스 5
Problem Solving 2020. 9. 2. 22:14

https://programmers.co.kr/learn/courses/30/lessons/42862# 코딩테스트 연습 - 체육복 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번� programmers.co.kr leetcode만 풀다보니까 제약사항을 꼼꼼히 확인하는걸 잊은듯 하다. 테스트 케이스 오류나는걸 찾아내고 푸는 연습이 많이 필요 할거 같다. 해당 문제에 대한 풀이는 인터넷에 많이 나와 있으니까 그거 보면 될거 같다. 테스트 케이스 5번 오류를 만든 코드를 써보겠다. function solution(n, lost, reserve) { let students =..

모의고사
Problem Solving 2020. 9. 2. 11:40

https://programmers.co.kr/learn/courses/30/lessons/42840 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 �� programmers.co.kr %를 사용해서 나머지 구하는 처리 하는 로직을 이해하면 되는 문제이다. 그와 별도로 테스트 케이스 fail을 많이 냈는데, 사소한 오타로 인한 오류 였었다. 이런걸 잘 잡아내는 연습이 필요 할 거 같다. function solution(answers) { let users = [[1,2,3,4,5],[2, 1, 2, 3, 2, 4, 2, 5],[3, 3, ..

완주하지 못한 선수
Problem Solving 2020. 9. 2. 00:13

https://programmers.co.kr/learn/courses/30/lessons/42576# 코딩테스트 연습 - 완주하지 못한 선수 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수�� programmers.co.kr hash map을 쓰거나 Set을 쓰거나 해서 처리 가능하다. function solution(participant, completion) { var answer = ''; let map = new Map(); for(let i = 0; i < participant.length; i++){ map.set(participant[i], ~~..

크레인 인형뽑기 게임
Problem Solving 2020. 9. 1. 23:47

https://programmers.co.kr/learn/courses/30/lessons/64061?language=javascript# 코딩테스트 연습 - 크레인 인형뽑기 게임 [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr 그냥 stack을 사용해서 하면 된다. function solution(board, moves) { var answer = 0; var stack = new Array(); for(let i = 0; i < moves.length ;i++){ let loc = moves[i]; for(let j = 0; j < board.length; j++){ if..

1567. Maximum Length of Subarray With Positive Product
Problem Solving 2020. 9. 1. 14:49

Maximum Length of Subarray With Positive Product 곱셈의 법칙을 적절히 이용해야 한다. 짝수의 음수는 반듯이 짝수고 홀수개의 음수는 음수 이기 때문에 여기서 하나의 음수를 빼면 다시 짝수가 된다. - 3개의 음수가 있으면 첫번째 음수를 제외하고 계산하면 되고 - 2개의 음수가 있으면 짝수처럼 처리 하면 된다. var getMaxLen = function(nums) { let firstNegative = -1; let zeroPosition = -1; let negativeCount = 0; let max = 0; for(let i = 0; i < nums.length; i++){ if(nums[i] < 0){ if(firstNegative < 0) { firstNeg..