QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#874547#3445. Numbers On a Treefernandes_queilaCompile Error//Java111.5kb2025-01-28 10:50:332025-01-28 10:50:35

Judging History

你现在查看的是最新测评结果

  • [2025-01-28 10:50:35]
  • 评测
  • [2025-01-28 10:50:33]
  • 提交

answer

import java.util.Scanner;

class TreeNode {
    int label;
    TreeNode left;
    TreeNode right;

    TreeNode(int label) {
        this.label = label;
        this.left = null;
        this.right = null;
    }
}

public class TreeNode {
    
    static TreeNode buildTree(int height, int[] currentLabel) {
        if (height < 0) {
            return null;
        }

        TreeNode node = new TreeNode(currentLabel[0]);
        currentLabel[0]--;

        node.right = buildTree(height - 1, currentLabel);
        node.left = buildTree(height - 1, currentLabel);

        return node;
    }

    static int searchNode(TreeNode root, String road) {
        TreeNode currentNode = root;

        for (int i = 0; i < road.length(); i++) {
            if (road.charAt(i) == 'L' || road.charAt(i) == 'l') {
                currentNode = currentNode.left;
            } else if (road.charAt(i) == 'R' || road.charAt(i) == 'r') {
                currentNode = currentNode.right;
            }
        }

        return currentNode.label;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        int height = scanner.nextInt();
        scanner.nextLine(); // Consume the newline after the height
        String road = scanner.nextLine().trim();

        int[] currentLabel = { (int) Math.pow(2, height + 1) - 1 };
        TreeNode root = buildTree(height, currentLabel);

        System.out.println(searchNode(root, road));
    }
}

詳細信息

TreeNode.java:16: error: duplicate class: answer.TreeNode
public class TreeNode {
       ^
1 error