반응형

@notepad_jj2

츄르사려고 코딩하는 코집사입니다.


1. [백준] 백준 2501번 약수 구하기 자바(Java)

1) 문제번호 : 2501

 

2) 문제 출처

https://www.acmicpc.net/problem/2501

 

2. 풀이

- 값을 입력 받고, 1부터 N까지 반복문을 돌려서 N을 i로 나눴을 때 나머지가 0이라면 약수이므로 리스트에 저장을 한다.

- 저장한 리스트의 크기가 K보다 작으면 0을 출력하고, 그렇지 않으면 리스트에서 K-1번째 값을 출력하면 된다.

 

3. 소스 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());

        int N = Integer.parseInt(st.nextToken());
        int K = Integer.parseInt(st.nextToken());

        ArrayList<Integer> arrList = new ArrayList<>();

        for(int i = 1; i <= N; i++) {
            if(N % i == 0) {
                arrList.add(i);
            }
        }

        if(arrList.size() < K) {
            System.out.println(0);
        } else {
            System.out.println(arrList.get(K-1));
        }
    }
}

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기