結果
問題 | No.566 だいたい完全二分木 |
ユーザー | nisizawa |
提出日時 | 2017-12-03 04:10:33 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
AC
|
実行時間 | 23 ms / 2,000 ms |
コード長 | 884 bytes |
コンパイル時間 | 351 ms |
コンパイル使用メモリ | 10,888 KB |
実行使用メモリ | 8,868 KB |
最終ジャッジ日時 | 2023-08-18 22:29:37 |
合計ジャッジ時間 | 1,671 ms |
ジャッジサーバーID (参考情報) |
judge9 / judge14 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 16 ms
7,760 KB |
testcase_01 | AC | 16 ms
7,756 KB |
testcase_02 | AC | 16 ms
7,848 KB |
testcase_03 | AC | 16 ms
7,932 KB |
testcase_04 | AC | 16 ms
7,804 KB |
testcase_05 | AC | 16 ms
7,800 KB |
testcase_06 | AC | 17 ms
7,804 KB |
testcase_07 | AC | 16 ms
8,200 KB |
testcase_08 | AC | 17 ms
8,280 KB |
testcase_09 | AC | 19 ms
8,564 KB |
testcase_10 | AC | 23 ms
8,868 KB |
ソースコード
import sys class Node: def __init__(self, val): self.val = val self.left = None self.right = None def set_l(self, node): self.left = node def set_r(self, node): self.right = node def create_tree(ls): root = len(ls) // 2 node = Node(ls[root]) if len(ls) >= 2: node.set_l(create_tree(ls[:root])) if len(ls) >= 3: node.set_r(create_tree(ls[root + 1:])) return node def print_ans(node): if node is None: return if node.val == 2: node.val = 3 elif node.val == 1: node.val = 2 elif node.val == 3: node.val = 1 sys.stdout.write(str(node.val) + ' ') print_ans(node.left) print_ans(node.right) k = int(input()) ls = list(range(1, 2**k)) tree = create_tree(ls) print_ans(tree) print('')