본문 바로가기

Kotlin/Kotlin Algorithm

[백준 Kotlin] 10871. X보다 작은 수

728x90
반응형

 

 

 

https://www.acmicpc.net/problem/10871

 

10871번: X보다 작은 수

첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.

www.acmicpc.net

 

 

 

 

 

4. 1차원 배열

10871. X보다 작은 수

 

 

 

정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.

 

 

- 입력 : 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)

둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.

 

- 출력 : X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다.

 

 

 

 

 

 

 

 

 

 

 

총 코드

 

import java.io.*
import java.util.*

fun main() {
    val br = BufferedReader(InputStreamReader(System.`in`))
    var st = StringTokenizer(br.readLine(), " ")
    val sb = StringBuilder()
    val n = st.nextToken().toInt()
    val x = st.nextToken().toInt()
    val arr = IntArray(n)

    st = StringTokenizer(br.readLine(), " ")

    for(i in 0 until n) {
        arr[i] = st.nextToken().toInt()

        if (arr[i] <x) {
            sb.append(arr[i]).append(" ")
        }
    }
    println(sb)
}

 

 

- 배열을 사용하는 챕터라 변수로 선언하지 않고 배열을 사용하였다.

- 계속 틀렸는데 그 부분이 바로 변수 아래 다시 값을 대입한 'st = StringTokenizer(br.readLine(), " ") ' 부분이다.

- 변수를 선언한다고 문제에서 원하는 배열을 선언한다고 생각하면 안 될 것 같다!

728x90
반응형