10810 공 넣기
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int M = sc.nextInt();

        int[] baskets = new int[N];

        for (int m = 0; m < M; m++) {
            int i = sc.nextInt();
            int j = sc.nextInt();
            int k = sc.nextInt();

            for (int b = i - 1; b < j; b++) {
                baskets[b] = k;
            }
        }
        for (int b = 0; b < N; b++) {
            System.out.print(baskets[b] + " ");
        }

    }
}
10813 공 바꾸기
import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
        int M = sc.nextInt();


        // 바구니 초기화
        int[] baskets = new int[N];
        for (int i = 0; i < N; i++) {
            baskets[i] = i + 1;
        }

        for (int a = 0; a < M; a++) {
            int i = sc.nextInt();
            int j = sc.nextInt();
            // i번 바구니와 j번 바구니의 공을 교환 (인덱스는 0부터 시작하므로 i-1, j-1)
            int temp = baskets[i - 1];
            baskets[i - 1] = baskets[j - 1];
            baskets[j - 1] = temp;
        }

        for (int b = 0; b < N  ; b++) {
            System.out.print(baskets[b] + " ");
        }

    }
}
5597 과제 안 내신 분..?
import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        boolean[] submitted = new boolean[31];

        for (int i = 0; i < 28; i++) {
            int N = sc.nextInt();
            submitted[N] = true;
        }

        for (int i = 1; i <= 30; i++) {
            if (!submitted[i]) {
                System.out.println(i);
            }
        }
    }
}

3052
나머지

 

* HashSet은 중복 값을 허용하지 않는 자료구조
* 시간 복잡도는 O(1) 삽입 연산

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        HashSet<Integer> remainders = new HashSet<>(); // 나머지를 저장할 HashSet

        for (int i = 0; i < 10; i++) {
            int num = sc.nextInt();
            remainders.add(num % 42); // 42로 나눈 나머지를 HashSet에 추가
        }

        // HashSet의 크기가 서로 다른 나머지 값의 개수
        System.out.println(remainders.size());
    }
}
10811 바구니 뒤집기
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt(); // 바구니 개수
        int M = sc.nextInt(); // 뒤집기 명령 수

        // 바구니 초기화
        int[] baskets = new int[N];
        for (int i = 0; i < N; i++) {
            baskets[i] = i + 1;
        }

        for (int a = 0; a < M; a++) {
            int i = sc.nextInt(); // 시작 바구니
            int j = sc.nextInt(); // 끝 바구니

            reverse(baskets, i - 1, j - 1);
        }

        // 결과 출력
        for (int num : baskets) {
            System.out.print(num + " ");
        }
    }

    // 배열의 부분 구간 [start, end]를 역순으로 뒤집는 함수
    private static void reverse(int[] arr, int start, int end) {
        while (start < end) {
            int temp = arr[start];
            arr[start] = arr[end];
            arr[end] = temp;
            start++;
            end--;
        }
    }
}

1546
평균
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt(); // 시험 본 과목의 갯수
        double[] scores = new double[N];

        double maxScore = 0;
        for (int i = 0; i < N; i++) {
            scores[i] = sc.nextDouble();
            if (scores[i] > maxScore) {
                maxScore = scores[i];  // 최댓값 갱신
            }
        }
        // 새로운 점수 계산
        double sum = 0; // 변환 점수의 합
        for (int i = 0; i < N; i++) {
            sum += (scores[i] / maxScore) * 100;
        }
        // 새로운 평균 계산
        double newAverage = sum / N;
        System.out.println(newAverage);

    }
}

'Algorithm' 카테고리의 다른 글

[백준] 심화 1  (0) 2024.11.29
[백준] 문자열  (0) 2024.11.26
[백준] 반복문  (0) 2024.11.24
[백준] 조건문  (0) 2024.11.23
[백준] 입출력과 사칙연산  (0) 2024.11.23