[algorithm] 큰 수 출력하기

Ho-eng·2023년 4월 15일
0

❓ 큰 수 출력하기


N(1<=N<=100)개의 정수를 입력받아, 자신의 바로 앞 수보다 큰 수만 출력하는 프로그램을 작
성하세요.(첫 번째 수는 무조건 출력한다)

  • 입력설명

    첫 줄에 자연수 N이 주어지고, 그 다음 줄에 N개의 정수가 입력된다.
  • 출력설명

    자신의 바로 앞 수보다 큰 수만 한 줄로 출력한다.
  • 입력예제 1

    7 3 9 5 6 12

  • 출력예제 1

    7 9 6 12


❗ 문제 풀이

내 풀이

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(s) {
        let answer = []

        answer = s.filter((v) => {
          if (v >= 6) {
            return answer.push(v)
          }
        })

        return answer
      }
      let arr = [7, 3, 9, 5, 6, 12]
      console.log(solution(arr))
    </script>
  </body>
</html>
  1. answer이란 변수를 하나 선언하고 빈문자열을 할당한다.
  2. 문자열 순환을 돌면서,
    1) 대문자인 경우 answer에 소문자로 바꿔서 넣어주고,
    2) 소문자인 경우 answer에 대문자로 바꿔서 넣어준다.
  3. answer을 리턴하면 끗.

정답 소스

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(s) {
        let answer = []
        answer.push(s[0])

        for (let i = 0; i < s.length; i++) {
          if (s[i - 1] < s[i]) answer.push(s[i])
        }

        return answer
      }
      let arr = [7, 3, 9, 5, 6, 12]
      console.log(solution(arr))
    </script>
  </body>
</html>
  • 빈 배열을 선언하고 거기에, 비교할 배열의 첫 번째 인덱스를 넣는다.

  • 반복문을 돌면서 n-1과 n을 비교해서 조건문이 참인경우, 선언한 빈 배열에 담는다.

profile
매일 '어제의 나와 오늘의 나는 무엇이 다를까?'를 고민하는 김호엥입니다.

0개의 댓글