백준

백준 11576 Base Conversion(Java)

Park DJ 2023. 1. 23. 18:17

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

 

11576번: Base Conversion

타임머신을 개발하는 정이는 오랜 노력 끝에 타임머신을 개발하는데 성공하였다. 미래가 궁금한 정이는 자신이 개발한 타임머신을 이용하여 500년 후의 세계로 여행을 떠나게 되었다. 500년 후의

www.acmicpc.net


 

해석 및 팁

 


 

이 문제는 A진법을 B진법으로 변환하여 출력하면 됩니다. 정확히 말하면 A진법을 10진법으로 변환한 후 10진법을 B진법으로 변환해서 풀면 됩니다.

 


 

Java 코드

 


import java.util.Scanner;
import java.util.ArrayList;
import java.util.Collections;

public class Main {
  public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);
    ArrayList<Integer> list = new ArrayList<>();

    int a = sc.nextInt();
    int b = sc.nextInt();
    int m = sc.nextInt();
    int dec = 0;
    
    for(int i = m; i > 0; i--) {
      int num = sc.nextInt();
      dec += num * Math.pow(a, i-1);
    }

    while(dec != 0) {
      list.add(dec % b);
      dec /= b;
    }
    
    Collections.reverse(list);

    for(int i = 0; i < list.size(); i++) System.out.print(list.get(i)+" ");
  }
}