반응형
https://www.acmicpc.net/problem/3460
1. Scanner 사용
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int T=sc.nextInt();
for(int i=0;i<T;i++) {
int a=sc.nextInt();
String res=Integer.toBinaryString(a);
for(int j=res.length()-1;j>=0;j--) {
if(res.charAt(j)=='1') {
System.out.print(res.length()-j-1+" ");
}
}
System.out.println();
}
sc.close();
}
}
2. BufferRead사용
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Main {
public static void main(String[] args)throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T=Integer.parseInt(br.readLine());
for(int i=0;i<T;i++) {
int a=Integer.parseInt(br.readLine());
String res=Integer.toBinaryString(a);
for(int j=res.length()-1;j>=0;j--) {
if(res.charAt(j)=='1') {
System.out.print(res.length()-j-1+" ");
}
}
System.out.println();
}
}
}
아래가 scanner사용, 위가 bufferRead사용이다.
시간이 단축됨을 확인 할 수 있다.
728x90
반응형
'코딩테스트 > 백준' 카테고리의 다른 글
백준 10870 Java (0) | 2022.08.02 |
---|---|
백준 2460 Java (0) | 2022.08.01 |
백준 2501 Java (0) | 2022.08.01 |
백준 2751 Java (0) | 2022.07.22 |
백준 1157 Java (0) | 2022.07.22 |
댓글