매일 Algorithm

신재원·2023년 4월 12일
0

Algorithm

목록 보기
94/243

백준 11931번 (Silver 5)

import java.io.*;
import java.util.Arrays;
import java.util.Collections;
import java.util.StringTokenizer;

public class problem300 {


    public static void main(String[] args) throws IOException {
        // Scanner 입력과, println을 사용하면 시간초과로 인해 버퍼와, writer사용
        BufferedReader br
                = new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter writer
                = new BufferedWriter(new OutputStreamWriter(System.out));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int N = Integer.parseInt(st.nextToken());
        Integer arr[] = new Integer[N];

        for (int i = 0; i < N; i++) {
            arr[i] = Integer.parseInt(br.readLine());
        }
        Arrays.sort(arr, Collections.reverseOrder());
        // 내림차순으로 출력
        for (Integer i : arr) {
            writer.write(i + "\n");
        }
        writer.flush();
    }
}

백준 13909번 (Silver 5)

import java.util.Scanner;

public class problem301 {


    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        int t = in.nextInt();

        // 소인수 분해 하였을떄 n * n의 값들이 남는다.(1, 4, 9, 16 ..)
        // 제곱근
        System.out.print((int) Math.floor(Math.sqrt(t)));
    }
}

백준 14490번 (Silver 5)

import java.util.Scanner;

public class problem302 {


    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);

        String[] str = in.next().split(":");

        int a = Integer.parseInt(str[0]);
        int b = Integer.parseInt(str[1]);

        int temp = gcd(a, b);
        System.out.println(a / temp + ":" + b / temp);

    }

    // 최대 공약수
    private static int gcd(int a, int b) {
        if (b == 0) return a;
        return gcd(b, a % b);
    }

}

백준 14582번 (Silver 5)

import java.util.Scanner;

public class problem303 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int[] arr = new int[9];
        int[] brr = new int[9];
        int aSum = 0;
        int bSum = 0;
        boolean flag = false;

        for (int i = 0; i < 9; i++) {
            arr[i] = in.nextInt();

        }
        for (int i = 0; i < 9; i++) {
            brr[i] = in.nextInt();
        }

        for (int i = 0; i < 9; i++) {
            aSum += arr[i];
            // 이기고 있는지 확인
            if (aSum > bSum) {
                flag = true;
            }
            bSum += brr[i];
            // 역전이 당했는지 확인
            if (aSum > bSum) {
                flag = true;
            }
        }

        if (aSum < bSum && flag) {
            System.out.print("Yes");
        } else {
            System.out.print("No");
        }
    }
}

0개의 댓글