Javaブルーブリッジカップ16進数回転8進数


問題は、与えられたn個の16進数の正の整数を記述し、対応する8進数を出力する.入力フォーマット入力の第1の動作は、正の整数n(1<=n<=10)である.次のn行は、1行あたり0~9、大文字A~Fからなる文字列で、変換する16進数の正の整数を表し、各16進数の長さは100000を超えない.出力フォーマットはn行を出力し、動作ごとに対応する8進正整数を入力します.【注意】入力された16進数には、012 Aなどのプリアンブル0はありません.出力される8進数にも先頭0はありません.サンプル入力2 39 123 ABCサンプル出力71 4435274
この問題はInteger.toString()を直接呼び出すのは間違っている.16進数の長さは1 e 6に達し、intとlongの範囲をはるかに超えているからだ.
では、まず16進数を2進数に変換し、2進数を8進数に変換する必要があります.
ここの文字列タイプはStringクラスを使用するとTLEになります.
StringBuilderタイプを使用する理由はここで説明します.
import java.util.*;
import java.text.DecimalFormat;
import java.io.FileWriter;
import java.io.IOException;
import java.lang.Math;
import java.lang.reflect.Array;
import java.math.*;

public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int t = sc.nextInt();
		for(int i=0;i