https://www.acmicpc.net/problem/2501
import java.util.Scanner;
import java.util.Arrays;
public class Main {
//클래스명이 따로 지정되지 않은 경우에는 반드시 Main으로 해야 실행이 된다.
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//입력받기 위한 Scanner
int a = sc.nextInt();
int b = sc.nextInt();
int []array = new int[a+1];
//배열의 크기를 설정
int count=0;
for(int i=1; i<=a; i++) {
if(a%i==0) {
array[count]=i;
count++;
}
}
//배열안에 약수일 경우, 숫자가 추가되도록 설정
System.out.println(array[b-1]);
//크기가 a+1이므로 출력할때는 원하는 값이 나오도록 -1을 해줘야 한다.
}
}
https://www.acmicpc.net/problem/3460
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
//2진수 담을 String 배열
String[] binary = new String[num];
//2진수 구하기
for (int i = 0; i < num; i++) {
int num2 = sc.nextInt();
String tmp = "";
while (num2 != 1){
tmp += num2 % 2;
num2 /= 2;
}
tmp += num2;
binary[i] = tmp;
}
//1의 위치 찾아 출력하기
for (String tmp : binary){
for (int i = 0; i < tmp.length(); i++) {
if (tmp.charAt(i)=='1'){
System.out.print(i+" ");
}
}
}
}
}