2023得物app秋招笔试 编程题分享python

第一题:草船借箭

一共有N条船,第一条船上有A支箭,第二条船上有B支箭。第三条船上的箭为前两条船上的总和多一支;第四条船上的箭为前三条船上的总和多一支;以此类推。输入三个值N,A,B。问一共有多少只箭。

示例:

输入:

4 1 2

输出:

15

代码:python2

import sys
import numpy as np

line_1 = sys.stdin.readline().strip()
lines = line_1.split()
N = lines[0]
num = [0 for i in range(int(N))]

if int(N) == 1 :            #仅有一条船
    num[0] = int(lines[1])
    print(num[0])
if int(N) == 2:             #仅有两条船
    num[0] = int(lines[1])
    num[1] = int(lines[2])
    print(num[0] + num[1])
if int(N) >= 3:             #有三条船或以上
    num[0] = int(lines[1])
    num[1] = int(lines[2])
    for i in range (2,int(N)):
        for j in range(0,i):
            num[i] = num[i] + num[j]
        num[i] = num[i] + 1
    result = np.cumsum(num)
    print(result[-1])

结果:

通过47%的用例。用例不透明。没想出卡在了什么样的用例上。

第二题:漂亮的糖葫芦

有一串长度为n的糖葫芦,我们认为如果有连续x个相同的元素就是一串漂亮的糖葫芦。认为漂亮输出1,不漂亮输出0。

示例:

输入:先输入糖葫芦的长度n和标准x。再输入糖葫芦(一个string)

 6 2
qqweer

输出:

1

代码:python2

import sys

line_1 = sys.stdin.readline().strip()
lines = line_1.split()
n = int(lines[0])
x = int(lines[1])
string = sys.stdin.readline().strip()
num=0
for i in range(0,n-1):
    if string[i] == string[i+1]:
        num = num + 1
if num >= x-1:
    print(1)
else:
    print(0)

结果:

通过全部样例

讨论:

基本信息:

在线考试定平台:【赛码在线考试系统】

试卷名称: 前端开发工程师

考试时长: 120 分钟

开始时间: 2023-10-10 10:00 星期二

结束时间: 2023-10-10 13:00 星期二

时间段内任选2个小时作答。

感受:

可以自行引用头文件,没发现限制。时间设置合理。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值