https://www.acmicpc.net/problem/2822
์ฝ๋
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
// 0)
int[] score = new int[8];
int[] arr = new int[3]; // ์ ์๊ฐ ๋ฎ์ 3๊ฐ๋ฅผ ๋ด์ ๋ฐฐ์ด
int arr_index = 0;
int sum = 0;
for(int i=0; i<score.length; i++)
score[i] = scan.nextInt();
// 1)
int[] score2 = Arrays.copyOf(score, 8);
Arrays.sort(score2);
// 2)
for(int i=0; i<3; i++)
for(int j=0; j<score.length; j++)
if(score2[i] == score[j])
arr[i] = j;
// 3)
for(int i=0; i<score.length; i++) {
if(i == arr[0] || i == arr[1] || i == arr[2])
continue;
sum += score[i];
}
// 4)
System.out.println(sum);
for(int i=0; i<score.length; i++) {
if(i == arr[0] || i == arr[1] || i == arr[2])
continue;
System.out.print(i+1 + " ");
}
scan.close();
}
}
ํ์ด
๋ฌธ์ ๋ ์ ์๋ 8๊ฐ์ด๊ณ , ๋์ ์ ์ 5๊ฐ์ ํฉ๊ณผ ์ธ๋ฑ์ค๋ฅผ ์ถ๋ ฅํ๋ ๋ฌธ์ ์ด๋ค.
// 0)
์ ์ 8๊ฐ๋ฅผ ์ ๋ ฅ๋ฐ์ score๋ฐฐ์ด๊ณผ ๊ฐ์ฅ ๋ฎ์ ์ ์ 3๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์ ์ฅํ arr๋ฐฐ์ด, 5๊ฐ์ ์ ์ ํฉ์ ์ ์ฅํ sum๋ณ์๋ฅผ ์ ์ธํ๋ค.
// 1)
๊ธฐ์กด์ score ๋ฐฐ์ด์ ๋ณต์ฌํ๊ณ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ score2 ๋ฐฐ์ด์ ์ ์ธํ๋ค.
// 2)
score2 ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํ์ผ๋ฏ๋ก, ๊ฐ์ฅ ์ 3๊ฐ์ ๊ฐ์ด ์ ์๊ฐ ๋ฎ์ 3๊ฐ์ด๋ค.
๋ฐ๋ผ์ score2 ๋ฐฐ์ด์ 0, 1, 2 ๋ฒ์งธ ์ธ๋ฑ์ค์ score ๋ฐฐ์ด์ด ๋์ผํ ๋์ ์ธ๋ฑ์ค๋ฅผ arr ๋ฐฐ์ด์ ์ ์ฅํ๋ค.
ex) score ๋ฐฐ์ด์ด 20, 30, 50, 48, 33, 66, 0, 64 ์ผ๋ ๊ฐ์ฅ ์์๊ฐ์ 20, 30, 0 (0, 1, 6) ์ด๋ค.
๋ฐ๋ผ์ arr[0] = 0, arr[1] = 1, arr[2] = 6 ์ด๋๋ค.
// 3)
score ๋ฐฐ์ด์ ๋ฐ๋ณตํ๋ฉด์ ์ธ๋ฑ์ค๊ฐ ์์์ ์ ์ฅํ arr๋ฐฐ์ด์ ์ธ๋ฑ์ค์ ๋์ผํ ๋๋ ๊ฐ์ฅ ๋ฎ์ ์ ์3๊ฐ์ค ํ๋์ด๋ฏ๋ก ๋ํ์ง ์๊ณ ๋์ด๊ฐ๋ค.
// 4)
๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ์ฅ ๋ฎ์ ์ ์์ค ํ๋์ผ๋ ์ถ๋ ฅํ์ง์๊ณ ๋์ด๊ฐ๋ค.
๋ฐฐ์ด์ 0๋ถํฐ ์์ํ๋ฏ๋ก i+1 ๊ฐ์ ์ถ๋ ฅํ๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2609๋ฒ: ์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์ (0) | 2020.01.20 |
---|---|
[๋ฐฑ์ค] 10814๋ฒ: ๋์ด์ ์ ๋ ฌ (0) | 2020.01.20 |
[๋ฐฑ์ค] 2501๋ฒ: ์ฝ์ ๊ตฌํ๊ธฐ (0) | 2020.01.20 |
[๋ฐฑ์ค] 2576๋ฒ: ํ์ (0) | 2020.01.20 |
[๋ฐฑ์ค] 2858๋ฒ: ๊ธฐ์์ฌ ๋ฐ๋ฅ (0) | 2020.01.19 |
๋๊ธ