头条笔试。。哭了

做得恍恍惚惚。。第一题ac,第三题brute force40%超时,其他全没做。。。心态爆炸

但总感觉第一题很奇怪,假如a认识b,b认识c,c认识d,那a算间接认识d吗?感觉题目也没表达清楚啊。。。麻烦大佬解答。还是自己太菜了sigh

#笔试题目#
全部评论
leetcode friend circle
点赞 回复 分享
发布于 2018-08-25 12:35
大佬不是第一题ac了吗?求分享思路
点赞 回复 分享
发布于 2018-08-25 12:37
第一题用邻接矩阵做 本地IDE 结果对了 好兴奋 复制粘贴……内存超限 好吧 先往下做吧 找递增序列 调试完成 复制 粘贴……内存超限 妈丫 心态彻底崩了
点赞 回复 分享
发布于 2018-08-25 12:44
#include<iostream> #include<vector> #include<algorithm> using namespace std; int pre[100005]; int find(int x){     int r = x;     while(pre[r]!=r){         r = pre[r];     }     int i=x, j;     while(i!=r){         j = pre[i];         pre[i] = r;         i = j;     }     return r; } //void mix(int x, int y){ //    int fx = find(x); //    int fy = find(y); //    if(fx!=fy){ //        pre[fy] = fx; //    } //} int main(){     int n;     cin>>n;     int res = n;     for(int i=1; i<=n; i++){         pre[i] = i;     }     for(int i=1; i<=n; i++){         int num;         while(cin>>num){             if(num==0){                 break;             }             int f1 = find(i);             int f2 = find(num);             if(f1!=f2){                 pre[f2] = f1;                 res--;             }         }     }     cout<<res<<endl;     return 0; }
点赞 回复 分享
发布于 2018-08-25 16:10

相关推荐

头像
11-09 17:30
门头沟学院 Java
TYUT太摆金星:我也是,好几个华为的社招找我了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务