8.23腾讯笔试(python)第二第三求助

第二题
while True:
try:
T = int(input())
for _ in range(T):
A, B, C, D = map(int, input().split())
tmp_d = A / 3 * (D ** 3) + 0.5 * (D * D) + B * D
tmp_c = A / 3 * (C ** 3) + 0.5 * (C * C) + B * C
print(round(tmp_d - tmp_c, 6))
except:
break
第三题:
while True:
try:
n = int(input())
print(int(n * (2 ** (n - 1))) % (1000000007))
except:
break
第二题一道都没过,第三题80%。
#笔试题目##腾讯#
全部评论
第二题要用%.6f。。。。这是真的坑
2 回复 分享
发布于 2020-08-23 22:56
第三题应该是幂运算会超时,所以得给幂运算换个优化计算方法(但是我用模幂乘方,没算对,后来又改成和你一样的方法了)
点赞 回复 分享
发布于 2020-08-23 22:35
第二题我也用的是round,还想了半天跟x轴有交点,结果还是0
点赞 回复 分享
发布于 2020-08-23 22:38
第二题没问题,输出加一个取6位小数,就全过了,真的坑
点赞 回复 分享
发布于 2020-08-23 22:43
貌似用round的话没有超过6位是不会按6位输出的
点赞 回复 分享
发布于 2020-08-23 22:45

相关推荐

shtdbb_:还不错,没有让你做了笔试再挂你
点赞 评论 收藏
分享
2 2 评论
分享
牛客网
牛客企业服务