백준 알고리즘
[Bronze III] 최소, 최대 - 10818
성능 요약
메모리: 25440 KB, 시간: 72 ms
분류
구현, 수학
문제 설명
N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
출력
첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.
Code
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
32
33
34
35
36
//1차원배얄
use std::io;
fn main() {
//스트링
let mut input = String::new();
// let mut output = String::new();
let mut numbers_arry = String::new();
//입력값받고
io::stdin().read_line(&mut input).unwrap();
io::stdin().read_line(&mut numbers_arry).unwrap();
//배열선언
let v2: Vec<i32> = numbers_arry
.split_whitespace()
.map(|x| -> i32 { x.parse().unwrap() })
.collect();
let result1 = v2.iter().max();
let result2 = v2.iter().min();
let mut result3 = 0;
let mut result4 = 0;
match result1 {
// 분할이 유효 함
Some(x) => result3 = *x,
// 부서가 잘못되었습니다.
None => println!("Cannot divide by 0"),
}
match result2 {
// 분할이 유효 함
Some(x) => result4 = *x,
// 부서가 잘못되었습니다.
None => println!("Cannot divide by 0"),
}
println!("{} {}", result4, result3);
}
//아직못품