[프로그래머스] - LV1 모의고사 JavaScript

2022. 1. 22. 23:14·지난 글 모음
반응형

프로그래머스 완전탐색 모의고사 문제

레벨: 1

언어: JavaScript


문제풀러가기

문제요약

1번: 1, 2, 3, 4, 5

2번: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1...

3번: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 ,3,3 ....
으로 정답을 찍는다고 한다.
이때 들어오는 모의고사의 정답과 비교하여 가장 많이 정답을 맞춘 정답자를 반환해라

입력값

  • 숫자 배열, 모의고사 정답이 숫자 배열로 들어옴출력값
  • 숫자 배열, 가장 많이 정답을 맞춘 사람

📑풀이 아이디어

각 사람의 정답을 배열에 저장한다.
정답배열과 비교하여 정답 맞춘 수를 카운딩하여 저장한다.

📋풀이코드

function solution(answers) {
  let answer = [];
  let maxCount = 0
  let students = {
    1:{
      checkAnswer : [1,2,3,4,5],
      count : 0,
      index: 0            
    },
    2:{
      checkAnswer : [2, 1, 2, 3, 2, 4, 2, 5],
      count : 0,
      index: 0
    },
    3:{
      checkAnswer : [3, 3, 1, 1, 2, 2, 4, 4, 5, 5],
      count : 0,
      index: 0
    }
  }

  answers.map((num) =>{
    for(const key in students){
      if(students[key].checkAnswer[students[key].index++] === num){
        students[key].count +=1

        if(students[key].count>maxCount){
          maxCount = students[key].count;
        }
      }
      if(students[key].index === students[key].checkAnswer.length){
        students[key].index = 0
      }
    }
  })

  for(const key in students){
    if(students[key].count === maxCount){
      answer.push(+key)
    }
  }
  console.log(students)

  return answer.sort((a,b)=>a-b);
}

이 문제는 어떻게든 돌려서 정답을 많이 맞춘 사람을 찾는거라 어렵지 않다.
정답을 모두 틀렸을 경우 최고가 0개이고 그럼 3명다 최고 점수 임으로로 3명을 출력해야한다는 예외만 잘 처리 해주면 어렵지 않게 해결 할 수 있다.

반응형

'지난 글 모음' 카테고리의 다른 글

[JavaScript] - var를 말고 const, let을 써 야하는 이유  (2) 2022.01.24
[프로그래머] - lv2 문자열 압축 JavaScript  (0) 2022.01.24
[프로그래머스] -LV1 로또의 최고 순위와 최저 순위 JavaScript  (0) 2022.01.22
[프로그래머스] - LV1 신고 결과 받기 JavaScript  (0) 2022.01.22
스프링 핵심 원리 - 기본편 3 좋은 객체 지향 설계의 5가지 원칙(SOLID)  (0) 2021.05.14
'지난 글 모음' 카테고리의 다른 글
  • [JavaScript] - var를 말고 const, let을 써 야하는 이유
  • [프로그래머] - lv2 문자열 압축 JavaScript
  • [프로그래머스] -LV1 로또의 최고 순위와 최저 순위 JavaScript
  • [프로그래머스] - LV1 신고 결과 받기 JavaScript
코딩하자영아
코딩하자영아
코딩공부내용 정리
  • 코딩하자영아
    코드치고 무게치고
    코딩하자영아
  • 전체
    오늘
    어제
    • 분류 전체보기 (82)
      • 개발 (1)
      • 지난 글 모음 (81)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    sw 정글
    javascript
    JavaScrpit
    Coding Test
    코딩테스트
    SW정글
    프로그래머스
    템플릿 문자열
    사용자 정의 객체
    회원가입 폼
    dfsbfs
    node.js
    sw정글사관학교
    html input
    회원가입
    자바스크립트
    HTML
    목록 창 만들기
    자바스크립트 문자열 변수
    PINTOS
    React
    onChange
    python
    백준
    malloc-lab
    Express
    리액트
    정글sw
    Spring
    conding test
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
코딩하자영아
[프로그래머스] - LV1 모의고사 JavaScript
상단으로

티스토리툴바