[알고리즘] 10부제

문제

날짜의 일의 자리 숫자가 주어지고 
7대의 자동차 번호의 끝 두 자리 수가 주어졌을 때 
위반하는 자동차의 대수를 출력하는 프로그램을 작성하세요

주어진 날짜와 자동차의 일의 자리 숫자를 보고 10부제를 위반하는 차량의 대수를 출력합니다.

🎱 문제 접근

배열 숫자 중 마지막 자리 수자와 날짜의 숫자가 동일한 숫자를 구하는 문제.
% 연산자를 이용해 마지막 자리 수를 구하고 주어진 날짜와 비교하면 해결 할 수 있다.

🎲
10으로 숫자를 나누게 되면 몫은 항상 마지막 자리수를 제외한 정수가 되고
나머지는 항상 마지막 자리 숫자가 된다.

🎱 문제풀이

문제풀이1

function solution(day, arr){
  let answer = 0;
  for( let x of arr ) {
    if( x % 10 === day ) answer ++;
  }
  return answer ;
}

day = 3;
arr = [25, 23, 11, 58, ,17, 33]

console.log(solution(day, arr))

문제풀이2

  • 배열에 특정 날짜들만 모아두고, filter()를 통해 값 걸러내기
  • 배열의 길이를 출력
function solution(day, arr){
  let target = arr.filter(el => el % 10 == day);
  return target.length;
}

day = 3;
arr = [25, 23, 11, 58, ,17, 33]

좋은 웹페이지 즐겨찾기