Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 큰 수 출력하기
- Two Pointer
- 등수구하기
- 뒤집은 소수
- array
- 최대 길이
- 격자판
- 임시반장 정하기
- java
- GitHub #Commit #BaekJoon
- 코테준비
- 가장 짧은 문자거리
- 아스키코드
- 점수계산
- 연속부분수열
- 누적 계산
- 인프런
- 모든행과열대각선의합
- Pointer
- 두 배열 합치기
- 보이는 학생
- 알고리즘
- ArrayList
- 투 포인터
- 공통원소 구하기
- 10992
- 배열
- 자바
- 10991
- 백준
Archives
- Today
- Total
ezhoon
[백준] 10818_최소, 최대_Java 본문
10818번: 최소, 최대
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
www.acmicpc.net

⚠️주의사항
- 1차원 배열 문제이므로 배열로 풀 것
- 공백으로 구분한다
문제풀이
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.StringTokenizer;
public class Arrange_10818 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int index = 0;
int[] arr = new int[N];
/*for (int i = 0; i < N ; i++) {
arr[index] = Integer.parseInt(st.nextToken());
index++;
}*/
while (st.hasMoreTokens()) { // hasMoreTokens -> StringTokenizer에 토큰이 남아있으면 true 비어있으면 false 반환
arr[index] = Integer.parseInt(st.nextToken());
index++;
}
Arrays.sort(arr);
System.out.println(arr[0] + " " + arr[N - 1]);
}
}
for로 풀던 while로 풀던 속도나 코드 길이는 비슷합니다.
while문에서는 평소에 안 쓰던 hasMoreTokens()가 쓰이는데 StringTokenizer에서 토큰이 남아있으면 true값을 반환해줘서 while문에서 모든 값을 추가하거나 비교 등을 하고 싶을 때 사용합니다.
'[Java] 백준 문제풀이 > 1차원 배열' 카테고리의 다른 글
[백준] 8958_OX퀴즈_Java (0) | 2022.01.08 |
---|---|
[백준] 1546_평균_Java (0) | 2022.01.08 |
[백준] 3052_나머지_Java (0) | 2022.01.07 |
[백준] 2577_숫자의 개수_Java (0) | 2022.01.07 |
[백준] 2562_최댓값_Java (0) | 2022.01.07 |
Comments