微软 2017春招真题 题目 There is a tree of N nodes which are numbered from 1 to N. Unfortunately, its edges are missing so we don't know how the nodes are connected. Instead we know:   Which nodes are leaves   The distance (number of edges) between any pair o…
输入n m km个数,表示每层的节点个数接下来m行是每层的节点,节点顺序是从左往右的k个叶子节点k*k个矩阵,表示叶子节点之间的距离 输出:每个节点的父亲节点编号,root节点是0 题解:1.很明显,相邻两个节点的距离如果是2,那么便是同一个父亲节点.2.第一个点的父亲节点u,必定是上一层第一个非叶子节点fa3.u左边的节点v 如果dis[u][v]==2,则fa[v]=fa[u] 否则,fa[v]为fa的下一个非叶子节点所以很明显,dis矩阵得为n*n的大小,而不仅仅是k*k4.由于一开始只知…
构造. 从最后一层开始往上构造.最后一层肯定都是叶子结点,距离为2的肯定是同一个父亲,确定好了父亲之后,可以确定上一层每个节点之间的距离,以及上一层每个节点到还未确定的叶子节点之间的距离. #include<bits/stdc++.h> using namespace std; int n,m,k; vector<]; ],L[],h[]; ][]; ]; int main() { scanf("%d%d%d",&n,&m,&k); ;i<…
别看是在线笔试,但是非常严格,全称窗口不得最小化和关闭,转移,全称需要打开摄像头监控,使用草稿纸需要摄像头对准……反正2个小时,题量在那儿摆着,有作弊的功夫不如好好做做最后的编程题呢……网易不让泄漏原题,但是我只是说了考察的知识点,不犯法吧…… 3月初投了网易内推,当初以为有内推码的就免笔试了,最后空欢喜,有内推码也要在线笔试……先在线填写了简历,等了漫长的半个多月,开始就认为简历挂掉了,毕竟网易,周边的小伙伴,有挂掉的……我都等到上周了才来通知,说今天在线笔试…… 总体感觉考察不算很难,但是很…
美团点评2017校招笔试真题-算法工程师A 1.下面哪种STL容器的实现和其它三个不一样 A. set B. deque C. multimap D. map 正确答案: B STL的容器可以分为以下几个大类: 1. 顺序(序列)容器,有 vector,list,deque , string,stack( 适配器类), queue( 适配器类), priority queues( 适配器类). 2.关联容器,有set, multiset,map,multimap, bitset,hash_set…
美团点评2017校招笔试真题-算法工程师B 1.以下关于经典的k-means聚类的说法哪个是错误的? A:k-means聚类算法是全局收敛的 B:k-means的聚类结果和初始聚类中心点的选取有关 C:k-means聚类算法的时间复杂度是O(NKT),其中N为样本个数,K为聚类团数量,T为迭代次数 D:k-means聚类算法无法自动确定聚类团数量 正确答案: A 时间复杂度O(tkn)是线性的,t是循环次数,k是聚类的个数,n是数据点的个数. 用户需事先指定聚类数目k.算法对异常值十分敏感.对初…
1. 循环输入输出交互 Python在线笔试琐碎 求两个整数 A+B 的和. while True: try: (n, m) = (int(x) for x in raw_input().split()) print(n+m) except KeyError: break…
[题目链接]:https://hihocoder.com/problemset/problem/1490 [题意] 给你一棵树的以下信息: 1.节点个数 2.给出树的每一层从左到右的顺序每个节点的编号 3.哪些节点是叶子节点 然后树中的边被去掉了; 让你复原出原图(树) [题解] 这是道模拟题. 从最下层到上一层,从最左边的节点到右边的节点往上接父亲节点就好; 具体实现的时候; 直接找上一层最左边的且没被其他节点当爸爸的.且不为叶子节点的节点当爸爸就好; 当了爸爸之后 更新那个爸爸到其他所有节点…
http://hihocoder.com/problemset/problem/1489 笔试题第一道,虽然说第一道都很水,但是我感觉这题不算特别水把..这道题我就卡住了我记得,tle,最后只有30分,比较惨烈.我个人感觉这道题正解比较难想把,那时候太年轻,没有想到当item很大时,可以从第八道item开始就把初始p当成0来计算..不过我试了一下,发现即使如此,还要计算每次的数学期望,反正我当时要是不知道,Ei和Ei+1之间的联系,应该还是算不出来..我太麻瓜了.. 贴一下我tle代码,思路就是…
思路: 获得第i(i = 0, 1, ..., n - 1)件物品的概率仅由公式p / (1 << i)决定,所以获得这i件物品之间是相互独立的.迭代计算获得所有i件物品的期望再求和即可.不要被题目中的树形结构所蒙蔽. 实现: #include <iostream> #include <cstdio> using namespace std; int p, q, n; double get_item(int i) { ? p / ( << i) : ; ;…