12
返回列表 发新帖
楼主: Timofu
跳转到指定楼层
上一主题 下一主题
收起左侧

黑车公司

🔗
anoyanoy 2018-7-14 19:54:02 | 只看该作者
全局:
  1. /**
  2. * Definition for a binary tree node.
  3. * struct TreeNode {
  4. *     int val;
  5. *     TreeNode *left;
  6. *     TreeNode *right;
  7. *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
  8. * };
  9. */
  10. class Solution {
  11. public:
  12.     void helper(TreeNode* root, int sum, map<int, vector<vector<int>>> pathSum, int curr_sum, vector<int> curr_path, int& numOfPath, vector<vector<int>>& paths) {
  13.         if (!root) {
  14.             return;
  15.         }
  16.         curr_sum += root->val;
  17.         if (pathSum.count(curr_sum - sum)) {
  18.             numOfPath += pathSum[curr_sum - sum].size();
  19.             for (auto i:pathSum[curr_sum - sum]) {
  20.                 vector<int> temp;
  21.                 for (int cnt = i.size(); cnt < curr_path.size(); cnt++) {
  22.                     temp.push_back(curr_path[cnt]);
  23.                 }
  24.                 temp.push_back(root->val);
  25.                 paths.push_back(temp);
  26.             }
  27.         }
  28.         curr_path.push_back(root->val);
  29.         pathSum[curr_sum].push_back(curr_path);
  30.         
  31.         helper(root->left, sum, pathSum, curr_sum, curr_path, numOfPath, paths);
  32.         helper(root->right, sum, pathSum, curr_sum, curr_path, numOfPath, paths);
  33.     }
  34.     int pathSum(TreeNode* root, int sum) {
  35.         int numOfPath = 0;
  36.         map<int, vector<vector<int>>> pathSum;
  37.         pathSum[0].push_back(vector<int>());
  38.         vector<int> cur_path;
  39.         vector<vector<int>> paths;
  40.         helper(root, sum, pathSum, 0, cur_path, numOfPath, paths);
  41.         for (auto i:paths) {
  42.             for (auto j:i) cout << j << " -> ";
  43.             cout << endl;
  44.         }
  45.         return numOfPath;
  46.     }
  47. };
复制代码



及其耗空间的解法  不过如果时间只有45min  我也只能想到这样了  用lc437测了下 应该是对的
回复

使用道具 举报

🔗
 楼主| Timofu 2018-7-17 14:33:25 | 只看该作者
全局:
anoyanoy 发表于 2018-7-14 19:54
[mw_shl_code=cpp,true]/**
* Definition for a binary tree node.
* struct TreeNode {

👍
回复

使用道具 举报

🔗
mitchellhe 2018-7-22 02:57:56 | 只看该作者
全局:
您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
使用VIP即刻解锁阅读权限或查看其他获取积分的方式
游客,您好!
本帖隐藏的内容需要积分高于 100 才可浏览
您当前积分为 0。
VIP即刻解锁阅读权限查看其他获取积分的方式
Unlock interview details and practice with AI
Curated Interview Questions from Top Companies
回复

使用道具 举报

🔗
cynthiacao 2018-8-20 08:09:09 | 只看该作者
全局:
多谢楼主分享!
是和蠡口斯伞其一样只能从某个节点往下加吗?还是说可以任意方向加?
回复

使用道具 举报

🔗
 楼主| Timofu 2018-8-22 01:05:44 | 只看该作者
全局:
cynthiacao 发表于 2018-8-20 08:09
多谢楼主分享!
是和蠡口斯伞其一样只能从某个节点往下加吗?还是说可以任意方向加?

任意方向
回复

使用道具 举报

🔗
JamesJi 2018-8-31 08:12:26 | 只看该作者
全局:
楼主可以分享一下你的面试官名字吗
回复

使用道具 举报

🔗
PepePls 2018-9-24 12:56:33 | 只看该作者
全局:
love_ballon 发表于 2018-7-12 08:41
烙印也不全不好了。我刚过的一个面试就是印度人。挺好的。我fail的都不是烙印,当然从来没遇到过国人。。。 ...

+1, 从来没有被烙印黑过, 遇到了很多烙印, 感觉都挺实诚的
回复

使用道具 举报

🔗
ld_xixi 2018-9-28 02:35:36 | 只看该作者
本楼:
全局:
原题啊亲。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表