結果
| 問題 |
No.392 2分木をたどれ
|
| コンテスト | |
| ユーザー |
yun_app
|
| 提出日時 | 2016-10-04 14:44:21 |
| 言語 | Java (openjdk 23) |
| 結果 |
AC
|
| 実行時間 | 196 ms / 2,000 ms |
| コード長 | 1,753 bytes |
| コンパイル時間 | 2,981 ms |
| コンパイル使用メモリ | 78,648 KB |
| 実行使用メモリ | 48,960 KB |
| 最終ジャッジ日時 | 2024-11-21 15:38:53 |
| 合計ジャッジ時間 | 4,051 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 3 |
ソースコード
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Main
{
public static void main (String[] args) throws java.lang.Exception
{
// your code goes here
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int m = Integer.parseInt(br.readLine());
HashMap<Integer,String> ans = makeTree();
for(int i=0;i<m;i++){
int n = Integer.parseInt(br.readLine());
System.out.println(ans.get(n));
}
return;
}
public static HashMap<Integer,String> makeTree(){
HashMap<Integer,String> ret = new HashMap<Integer,String>();
Node base = new Node();
base.n = 0;
ret.put(0,"");
Deque<Node> deque = new ArrayDeque<Node>();
deque.addLast(base);
for(int i=1;i<=4094;i+=2){
Node node = deque.pollFirst();
Node left = new Node();
left.n = i;
left.route = new StringBuilder(node.route.toString());
left.route.append("L");
ret.put(i,left.route.toString());
deque.addLast(left);
Node right = new Node();
right.n = i+1;
right.route = new StringBuilder(node.route.toString());
right.route.append("R");
ret.put(i+1,right.route.toString());
deque.addLast(right);
}
return ret;
}
private static class Node{
StringBuilder route = new StringBuilder();
int n;
Node parent,left,right;
}
}
yun_app