뻠삥

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

 

10871번: X보다 작은 수

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

www.acmicpc.net

 

주어진 값이 기준 값보다 작은 경우를 가려내는 문제입니다.

쉬운 문제들이지만, 반복해서 풀다보니 파이썬의 문법에 조금씩 익숙해져가는 기분입니다.

 

문제 풀이는 아래와 같습니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
 
public class Main {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
        
        String[] strCondition = br.readLine().split(" "-1);
        String[] strTargets = br.readLine().split(" "-1);
        int sizeTargets = strTargets.length;
        int[] arrTargets = new int[sizeTargets];
        int criteria = Integer.parseInt(strCondition[1]);
        
        for (int i = 0; i < sizeTargets; i++) {
            arrTargets[i] = Integer.parseInt(strTargets[i]);
        }
        
        for (int i = 0; i < sizeTargets; i++) {
            if (arrTargets[i] < criteria) {
                bw.write(arrTargets[i] + " ");
            }
        }
        
        bw.close();
        br.close();
    }
}
 
cs

 

1. Java

 

2. Python 3

1
2
3
4
5
6
7
8
9
10
import sys
 
if __name__ == '__main__':
    cntLoop, criteria = map(int, sys.stdin.readline().split(' '-1))
    listTargets = sys.stdin.readline().strip().split(' '-1)
    result = ''
    for i in range(cntLoop):
        if int(listTargets[i]) < criteria:
            result += listTargets[i] + ' '
    print(result)
cs