LeetCode Weekly Contest 144
問題文
省略
省略
#include<bits/stdc++.h>
using namespace std;
int del[1111];
class Solution{
public:
vector<TreeNode*> delNodes(TreeNode* root, vector<int>& to_delete){
int i, j, k;
vector<TreeNode*> res, t1, t2;
vector<int> nul;
for(i=0;i<1001;i++){
del[i] = 0;
}
for(i=0;i<to_delete.size();i++){
del[to_delete[i]] = 1;
}
if(root->left != NULL){
t1 = delNodes(root->left, to_delete);
}
if(root->right != NULL){
t2 = delNodes(root->right, to_delete);
}
if(del[root->val]){
for(i=0;i<t1.size();i++){
res.push_back(t1[i]);
}
for(i=0;i<t2.size();i++){
res.push_back(t2[i]);
}
}
else{
k = t1.size();
if(k > 0 && root->left == t1[k-1]){
t1.pop_back();
}
else{
root->left = NULL;
}
k = t2.size();
if(k > 0 && root->right == t2[k-1]){
t2.pop_back();
}
else{
root->right = NULL;
}
for(i=0;i<t1.size();i++){
res.push_back(t1[i]);
}
for(i=0;i<t2.size();i++){
res.push_back(t2[i]);
}
res.push_back(root);
}
return res;
}
}
;
// cLay varsion 20190706-1
// --- original code ---
// int del[1111];
//
// class TreeNode {
// };
//
// class Solution {
// public:
// vector<TreeNode*> delNodes(TreeNode* root, vector<int>& to_delete) {
// int i, j, k;
// vector<int> nul;
// vector<TreeNode*> res, t1, t2;
//
// rep(i,1001) del[i] = 0;
// rep(i,to_delete.size()) del[to_delete[i]] = 1;
//
// if(root->left != NULL){
// t1 = delNodes(root->left, to_delete);
// }
// if(root->right != NULL){
// t2 = delNodes(root->right, to_delete);
// }
//
// if(del[root->val]){
// rep(i,t1.size()) res.push_back(t1[i]);
// rep(i,t2.size()) res.push_back(t2[i]);
// } else {
// k = t1.size();
// if(k > 0 && root->left == t1[k-1]) t1.pop_back();
// else root->left = NULL;
//
// k = t2.size();
// if(k > 0 && root->right == t2[k-1]) t2.pop_back();
// else root->right = NULL;
//
// rep(i,t1.size()) res.push_back(t1[i]);
// rep(i,t2.size()) res.push_back(t2[i]);
// res.push_back(root);
// }
//
// return res;
// }
// };
//
// {
// // main関数を適当に処理する
// }
Current time: 2024年04月27日10時33分42秒
Last modified: 2019年07月07日13時21分48秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)