초보 개발자의 일기

10부제 본문

코딩테스트/JS 알고리즘 문제(JS)

10부제

판다꼬마 2022. 8. 4. 21:37
728x90

문제

입력

  • 첫 줄에는 날짜의 일의 자리 숫자가 주어지고 두 번째 줄에는 7대의 자동차 번호의 끝 두 자리 숫자가 주어진다.

 

출력

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

 

입력 예시

3
25 23 11 47 63 17 33

출력 예시

3

풀이 방법

전 강의에서 배운 for of형을 이용해서 배열을 돌려 answer의 값을 증가시켰다.

일의 자리를 찾기위해 배열에서 뽑아낸 숫자를 10으로 나누어 나머지 값을 day 변수와 일치하는지 확인하였다.

 

내 코드

<html>
    <head>
        <meta charset="UTF-8" />
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(day, arr) {
                let answer = 0;

                for (let x of arr) {
                    if (x % 10 == day) answer += 1;
                }

                return answer;
            }

            arr = [25, 23, 11, 47, 53, 17, 33];
            console.log(solution(3, arr));
        </script>
    </body>
</html>

Solution

<html>
    <head>
        <meta charset="UTF-8">
        <title>출력결과</title>
    </head>
    <body>
        <script>
            function solution(day, arr){
                let answer=0;
                for(let x of arr){
                    if(x%10==day) answer++;
                }
                
                return answer;
            }
            
            arr=[25, 23, 11, 47, 53, 17, 33];
            console.log(solution(3, arr));
        </script>
    </body>
</html>

느낌점

처음에 let answer;로 answer를 선언하였는데 이렇게 선언을 하면 값이 정확히 되지 않는다.

그래서 변수를 선언할 때는 초기화를 제대로 해야 한다는 것을 다시 한번 깨달았다.

728x90

'코딩테스트 > JS 알고리즘 문제(JS)' 카테고리의 다른 글

A를 #으로  (0) 2022.08.05
일곱 난쟁이  (0) 2022.08.05
홀수  (0) 2022.08.03
최솟값 구하기  (0) 2022.08.03
1부터 N까지의 합  (0) 2022.08.02