๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Coding Test/PS

[๋ฐฑ์ค€/Java] 10818๋ฒˆ: ์ตœ์†Œ, ์ตœ๋Œ€ (๋ธŒ๋ก ์ฆˆ3)

๐ŸŸค ๋ฐฑ์ค€ 10818๋ฒˆ: ์ตœ์†Œ, ์ตœ๋Œ€ (๋ธŒ๋ก ์ฆˆ3)

 

๋ฌธ์ œ ํ’€์ด

1์ฐจ ํ’€์ด

โŒ ํ‹€๋ฆผ
import java.util.*;
import java.lang.*;
import java.io.*;

public class Main {
	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 min = 1000000;  // ์ดˆ๊ธฐ๊ฐ’: ์ตœ๋Œ€ ์ •์ˆ˜๊ฐ’
		int max = 0;
		
		for (int i=0; i<1000000; i++) {
		    int a = Integer.parseInt(st.nextToken());
		    
		    // ์ตœ์†Œ, ์ตœ๋Œ€ ์ฐพ๊ธฐ
		    if (min > a) {
		        min = a;
		    } else if (max < a) {
		        max = a;
		    }
    
            // ํ† ํฐ์ด ๋” ์ด์ƒ ์—†๋‹ค๋ฉด ๋ฐ˜๋ณต๋ฌธ ํƒˆ์ถœ
		    if (!st.hasMoreTokens()) {
		        break;
		    }
		}
		
		System.out.println(min + " " + max);
	}
}

 

โŒ ํ‹€๋ฆฐ ์ด์œ 

  1. ์Œ์ˆ˜๋ฅผ ๊ณ ๋ คํ•˜์ง€ ๋ชปํ•˜๊ณ  `max` ์ดˆ๊ธฐ๊ฐ’์„ 0์œผ๋กœ ์„ค์ •
  2. ์ตœ์†Œ, ์ตœ๋Œ“๊ฐ’์„ ์ฐพ๋Š” `if`๋ฌธ์„ `else-if`๋ฌธ์œผ๋กœ ๊ตฌ์„ฑํ•˜์—ฌ ๋†“์น˜๋Š” ์ตœ๋Œ“๊ฐ’๋“ค์ด ๋‚˜ํƒ€๋‚จ

 

2์ฐจ ํ’€์ด

import java.util.*;
import java.lang.*;
import java.io.*;

public class Main {
	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 min = 1000000;  // ์ดˆ๊ธฐ๊ฐ’: ์ตœ๋Œ€ ์ •์ˆ˜๊ฐ’
		int max = -1000000; // ์ดˆ๊ธฐ๊ฐ’: ์ตœ์†Œ ์ •์ˆ˜๊ฐ’
		
		for (int i=0; i<n; i++) {
		    int a = Integer.parseInt(st.nextToken());
		    
		    // ์ตœ์†Œ, ์ตœ๋Œ€ ์ฐพ๊ธฐ
		    if (min > a) min = a;
		    if (max < a) max = a;
		}
		
		System.out.println(min + " " + max);
	}
}

 

  • `max`์˜ ์ดˆ๊ธฐ๊ฐ’์„ ์ตœ์†Œ ์ •์ˆ˜๊ฐ’์œผ๋กœ ์„ค์ •
  • ์ตœ์†Œ, ์ตœ๋Œ€ ๊ตฌํ•˜๋Š” `if`๋ฌธ ๋‚˜๋ˆ”
๐Ÿ”ฆ ์—ฌ๋‹ด : `BufferedWriter`๋กœ ์ถœ๋ ฅํ•˜๋Š” ์ฝ”๋“œ๋„ ์ œ์ถœํ•ด๋ดค๋Š”๋ฐ, ์‹คํ–‰์‹œ๊ฐ„ ๋˜‘๊ฐ™์Œ
→ ์ถœ๋ ฅ์ด ๋งŽ์€ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ์„œ ์˜ํ–ฅ์ด ์—†๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž„

 

3์ฐจ ํ’€์ด

import java.util.*;
import java.lang.*;
import java.io.*;

public class Main {
	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 min = Integer.MIN_VALUE;  // ์ดˆ๊ธฐ๊ฐ’: int ์ตœ์†Ÿ๊ฐ’
		int max = Integer.MAX_VALUE; // ์ดˆ๊ธฐ๊ฐ’: int ์ตœ๋Œ“๊ฐ’
		
		for (int i=0; i<n; i++) {
		    int a = Integer.parseInt(st.nextToken());
		    
		    // ์ตœ์†Œ, ์ตœ๋Œ€ ์ฐพ๊ธฐ
		    min = Math.min(min, a);
		    max = Math.max(max, a);
		}
		
		System.out.println(min + " " + max);
	}
}

 

Integer.MIN_VALUE, Integer.MAX_VALUE

์ฝ”๋“œ ์„ค๋ช… ๊ฐ’
`Integer.MIN_VALUE` `int` ํƒ€์ž…์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ์†Ÿ๊ฐ’ -2,147,483,648 (-2^31 - 1)
`Integer.MAX_VALUE` `int` ํƒ€์ž…์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ“๊ฐ’ 2,147,483,647 (2^31 - 1)