蔚来笔试题1卷:
单选20道,编程5道(核心代码模式)
时间:90分钟
1.选择
- 关于Word2vec说法错误的是
- 摄像头是自动驾驶中一种重要传感器,哪些信息可以通过出厂前标定获得。
- 令A,B,C,D为n×n矩阵且行列式不为0,若ABCD=1,则B-1
- linux查看当前系统的启动时间命令
- 数据库事务管理条件
- 全高清视频分分辨率是19201080p,如果一张真彩色像素的19201080BMP数字格式图...
- 新能源汽车车型电动力总成的技术路线...
- 面向对象特征
- 线性表散列存储哈希解决
- 哪些信息可以在LiDAR的原属数据中直接得到
- 随机变量正太分布..
- 3个并发进程每个需要同类资源4个,不会发生死锁最少资源数
- 数组A[n]中随机排列有n个互不相同的数。。
- 线程进程
- 考察位运算>>
- 考察++
2.编程
- 点与三角形的距离
下面给出自己的代码,欢迎大佬指点
import math def cross(a,b,p): res=(b[0]-a[0])*(p[1]-a[1])-(b[1]-a[1])*(p[0]-a[0]) return res def toLeft(a,b,p): return cross(a,b,p)>0 def inTinTriangle(a,b,c,p): res = toLeft(a, b, p) if (res != toLeft(b, c, p)): return False if (res != toLeft(c, a, p)): return False if cross(a, b, c) == 0: return False return True def get_distance(p1,p2,point): A = p2[1] - p1[1] B = p1[0] - p2[0] C = (p1[1] - p2[1]) * p1[0] + (p2[0] - p1[0]) * p1[1] #根据点到直线的距离公式计算距离 distance = abs(A * point[0] + B * point[1] + C) / (math.sqrt(A**2 + B**2)) return distance def solve(point,Triangle): point=point a=Triangle[0] b=Triangle[1] c=Triangle[2] res=inTinTriangle(a,b,c,point) ret=0.0000 if res: return format(ret,".4f") else: dis1=get_distance(a,b,point) dis2=get_distance(a,c,point) dis3=get_distance(b, c, point) ret=min(dis1,dis2,dis3) return format(ret,".4f") if __name__ == '__main__': point=[0,0] Triangle=[(-1,-1),(1,-1),(0,1)] res = solve(point,Triangle) # 输出结果 print(res)
- 比较版本号
力扣第165题-比较版本号 - 二维数组中的寻找
力扣第74题-搜索二维矩阵 - 容器盛水问题
力扣第42题-接雨水 - 数字字符串转换为IP地址
力扣第93题-复原 IP 地址
全部评论
(7) 回帖