본문 바로가기

Backend/JAVA

[Algorithm] 데일리 백준

반응형
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;

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));
    StringBuilder sb = new StringBuilder();

//    // 3052
//    // 10개의 수
//    int size = 10;
//    int[] numbers = new int[10];
//    for(int i = 0 ; i < size ; i++){
//      String inputNumber = br.readLine();
//      // 42로 나눈 나머지
//      numbers[i] = Integer.parseInt(inputNumber) % 42;
//    }
//    // 나머지가 다른 수들 카운트
//    int cnt = 0;
//    for(int i = 0 ; i < 42 ; i++){
//      for(int j = 0 ; j < size ; j++) {
//        if (numbers[j] - i == 0) {
//          cnt += 1;
//          break;
//        }
//      }
//    }
//    System.out.println(cnt);

//    // 10811
//    String[] switchBasket = br.readLine().split(" ");
//    // 바구니 생성
//    int basket = Integer.parseInt(switchBasket[0]);
//    int swtichAction = Integer.parseInt(switchBasket[1]);
//    int[] baskets = new int[basket];
//    for(int i = 0 ; i < basket ; i++ ){
//      baskets[i] = i+1;
//    }
//    // 동작 횟수
//    for (int i = 0; i < swtichAction; i++) {
//      String[] targetRange = br.readLine().split(" ");
//      int fromI = Integer.parseInt(targetRange[0]);
//      int toJ = Integer.parseInt(targetRange[1]);
//      // 바꾸기
////      for(int j = toJ ; j < fromI; j--){
////        int temp = baskets[j];
////        baskets[j] = baskets[j-1];
////        baskets[j-1] = temp;
////        System.out.println(temp);
////      }
//      while (fromI < toJ) {
//        int temp = baskets[fromI-1];
//        baskets[fromI-1] = baskets[toJ-1];
//        baskets[toJ-1] = temp;
//        fromI++;
//        toJ--;
//      }
//    }
//
//    for (int i = 0; i < basket; i++) {
//      sb.append(baskets[i] + " ");
//    }
//    System.out.println(sb);

    // 1546
    // 과목 개수
    String a = br.readLine();
    int size = Integer.parseInt(a);
    // 최고점
    String[] b = br.readLine().split(" ");
    float[] scoreList = new float[size];
    for (int i = 0; i < size; i++) {
      scoreList[i] = Integer.parseInt(b[i]);
    }
    // 버블 정렬
//    for (int i = 0; i < size - 1; i++) {
//      for (int j = 0; j < size - i - 1; j++) {
//        if (scoreList[j] > scoreList[j + 1]) {
//          float temp = scoreList[j];
//          scoreList[j] = scoreList[j + 1];
//          scoreList[j + 1] = temp;
//        }
//      }
//    }
    // 단순화
    java.util.Arrays.sort(scoreList);
    // 점수 수정 및 평균 산출
    float average = 0;
    for (int i = 0; i < size ; i++) {
      scoreList[i] =  scoreList[i]/scoreList[size-1] * 100;
    }
    for (int i = 0; i < size; i++) {
      average += scoreList[i];
    }
    System.out.println(average/size);
  }
}
반응형

'Backend > JAVA' 카테고리의 다른 글

[JAVA] Enum을 String으로 사용하기  (0) 2024.05.07
[Algorithm] 데일리 백준  (0) 2024.05.03
[Algorithm] 데일리 백준  (0) 2024.04.29
[Algorithm] 데일리 백준  (0) 2024.04.26
[Algorithm] 데일리 백준  (0) 2024.04.24