商汤科技2021校招-开发大类B卷

2021-05-28 10:46:35 浏览数 (1)

来源于读者投稿,作者Angel。

笔试时间:2020.09.18,19:00——21:00

岗位:嵌入式软件工程师

题型:单选4道,不定项选择题2道,填空2道,编程2道。

单选

1、在一棵二叉树上第5层的结点数最多是:16

代码语言:javascript复制
第1层1个 2^0
第2层2个 2^1
第3层4个 2^2
第n层 2^(n-1)
//就是2的层数-1次方.

2、一根长度为a的木棒折成三段,求能构成三角形的概率:1/4

3、两堆硬币,分别为100和200枚,两人可从一堆取任意枚或从两堆取相同枚,不可以不取,取到最后一枚赢。怎么赢?(先手还是后手,后手从哪一堆取?)

4、权值为8.6.4.11的四个叶子节点构造一棵哈弗曼树,该树的带权路径长度为?

不定项选择题

1、十进制小数55.125对应的二进制数是?

2、以下关于static说法正确的是?

回答:经典考察,另外还有const、volatile等关键字。

填空题

1、此程序崩溃,为什么?

代码语言:javascript复制
#include<stdio.h>

char *f()
{
  char str[512];
  sprintf(str,"AI helps world!");
  return str;
}
int main(){
  printf("%s",f() 3);
  return 0;
}

2、求输出

代码语言:javascript复制
#include<stdio.h>

int fun(int x,int y){
  return (x>>2)*(y 4);
}
int main(){
  int a[4];
  int i = 0,value;
  a[0]=1;
  a[1]=18;
  for(i=0;i<2;i  ){
    value = fun(a[i  ],a[i  ]);
    a[i-1]=value>>1;
    a[i-2]=value-4;
    a[i]=value;
 }
  printf("%d-%d-%d-%d",a[0],a[1],a[2],a[3]);
  return 0;
}

编程题

1、给定一个多边形P,是一个(n,2)的数组,表示按顺序每个顶点的坐标,和一个点A(x,y),请计算点A到多边形P上的所有线段中,最短的举例的数值(点到多边形的最短距离理论)

2、有一个人在迷宫里,要从入口s抵达出口g,迷宫里的“x”表示墙壁,"."表示道路,大写字母比如A表示门,小写字母比如“a”表示钥匙。求能不能走出来?(应该是考的广度优先搜索)

·················· END ··················

0 人点赞