10pts+MLE求助!
  • 板块灌水区
  • 楼主CodeAnythingNow
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/5/26 14:43
  • 上次更新2024/5/26 18:55:42
查看原帖
10pts+MLE求助!
1135135
CodeAnythingNow楼主2024/5/26 14:43

rt.

#include <iostream>

using namespace std;

struct Node {
    int data;
    Node* left;
    Node* right;

    Node(int val) : data(val), left(nullptr), right(nullptr) {}
};

Node* createTree(int a, int b) {
    if (b == 0) {
        return new Node(a);
    }

    Node* root = new Node(a ^ b); 

    root->left = createTree(a & b, (a & b) << 1);
    root->right = createTree(a | b, a | b);

    return root;
}

int calculateSum(Node* root) {
    if (!root) {
        return 0;
    }

    int sum = root->data + calculateSum(root->left) + calculateSum(root->right);

    return sum;
}

int main() {
    int a, b;
    cin >> a >> b;

    Node* root = createTree(a, b);
    int result = calculateSum(root);

    cout << result << endl;

    return 0;
}

记录

2024/5/26 14:43
加载中...