第一题:草船借箭
一共有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个小时作答。
感受:
可以自行引用头文件,没发现限制。时间设置合理。