본문 바로가기
반응형

개발/알고리즘36

프로그래머스 : 모의고사 (자바스크립트) 처음에는 문제개수만큼 수포자1,수포자2,수포자3의 배열을 일일이 다 구했다. 다 풀 후에 다른사람들의 풀이를 보고 filter를 이용해 코드를 확 줄일 수 있다는 것을 알았다. 내 코드 function solution(answers) { let ansLength = answers.length let stu1 = [] let stu2 = [] let stu3 = [] let k1 = 1 let k2 = 1 let k3 = [3,3,1,1,2,2,4,4,5,5] //문제 개수만큼 stu1,stu2,stu3의 개수도 같게함 for(let i=0;i{ if(answer===stu1[i])cnt1[1]++//맞춘문제++ if(answer===stu2[i])cnt2[1]++ if(answer===stu3[i])cn.. 2021. 10. 29.
프로그래머스 : 크레인 인형 뽑기 (자바스크립트) 문제가 길다. 이 글을 읽는 사람들은 프로그래머스를 풀다가 직접 검색해서 온 사람들일것이니 따로 문제를 적진 않겠다. 전형적인 stack문제이다. function solution(board, moves) { //각 칸에서 0보다 처음 커지는 자리를 0으로 바꾸고 //store[store.length-1]과 board[i][j]를 비교한다. //store의 마지막자리와 지금 store에 넣으려는 값(board[i][j])이 같다면 //store의 마지막 값을 pop하고 //인형이 2개(넣으려는값+store의 마지막값)가 없어졌으니 result +=2 한다. let store = [];//stack역할함 let result = 0 moves.forEach(move=>{ for(let i = 0;i0){//인.. 2021. 10. 29.
프로그래머스 키패드 누르기 (자바스크립트) 문제 이 전화 키패드에서 왼손과 오른손의 엄지손가락만을 이용해서 숫자만을 입력하려고 합니다. 맨 처음 왼손 엄지손가락은 * 키패드에 오른손 엄지손가락은 # 키패드 위치에서 시작하며, 엄지손가락을 사용하는 규칙은 다음과 같습니다. 엄지손가락은 상하좌우 4가지 방향으로만 이동할 수 있으며 키패드 이동 한 칸은 거리로 1에 해당합니다. 왼쪽 열의 3개의 숫자 1, 4, 7을 입력할 때는 왼손 엄지손가락을 사용합니다. 오른쪽 열의 3개의 숫자 3, 6, 9를 입력할 때는 오른손 엄지손가락을 사용합니다. 가운데 열의 4개의 숫자 2, 5, 8, 0을 입력할 때는 두 엄지손가락의 현재 키패드의 위치에서 더 가까운 엄지손가락을 사용합니다. 4-1. 만약 두 엄지손가락의 거리가 같다면, 오른손잡이는 오른손 엄지손가락,.. 2021. 10. 28.
프로그래머스 : 숫자 문자열과 영단어 자바스크립트 정규표현식을 안쓰려고 아둥바둥 하다가 결국 정규표현식을 썼다. 정규표현식을 따로 기재하진 않겠다. String.Split() 과 Array.join() 나는 Split과 join을 단순히 배열문자열 전환역할로만 생각했다. 하지만 이 문제는 split과 join의 개념을 정확히 알고 있을때 풀 수 있는 문제였다. Array.join(x) : Array의 각 요소들 사이에 x를 넣어서 연결한다. x가 없다면 쉼표(,)로 대신한다. ['2', '45sixseven'].join(1) //= '2145sixseven' String.split(x) : String을 x로 끊어서 배열로 만든다. '2three45sixseven'.split('three') //= ['2', '45sixseven'] 풀이 당연히 내 머.. 2021. 10. 27.
반응형