深信服校园招聘算法练习卷
时长:120分钟 总分:100分
694浏览 6人已完成答题
题型介绍
题型 | 填空题 |
---|---|
数量 | 4 |
重复串查找
给定任意字符串,请帮小强找出其中的最长重复子串。
百分号解码
现在有一系列的URL,小强希望你帮忙进行百分号解码,直到无法再解码为止。
输入描述: 第一行一个正整数T(T<=10),表示T个测试样例;
对于每个测试样例,
输入字符串s,字符串不包含空白符且长度小于100,000。
有部分测试样例的字符串长度<=1,000。输入样例: 1 %%32F 输出描述: 输出T行,每行一个字符串,表示解码后的结果。输出样例 /
矿泉水问题
小明横穿沙漠,需要携带至少x毫升的水。
有两种规格的矿泉水可供选购:小瓶矿泉水每瓶500ml,价格a元。大瓶矿泉水每瓶1500ml,价格b元。
小明打算买一些矿泉水用于横穿沙漠,为了保证至少买到x毫升的水,小明至少需要花费多少钱?
输入描述: 第一行一个正整数t(t<=1000),表示有t组测试数据接下来t行,每行3个正整数:x,a,b。其中x<=1,000,000,000,表示小明至少需要x毫升水;a<=100,b<=100,分别表示小瓶和大瓶矿泉水的价格,单位:元。输入样例: 3 5000 5 10 4999 5 10 5000 5 100 输出描述: 每组测试数据输出一行,表示小明最少需要花费的钱,单位:元。输出样例 35 35 50
子数组查找
例如:给定数组[4 2 1 3],包含数字集{2, 3}的最短子数组是[2 1 3],包含数字集{1, 3}的最短子数组是[1 3]。
输入描述: 第一行一个正整数T(T<=10),表示T个测试样例;
对于每个测试样例,
输入正整数N(N<=100,000),表示数组长度;
接下来输入N个正整数,所有整数都>=0且<=1,000,000,000;
输入正整数M(M<=N),表示M个互不相同的整数;
接下来输入M个整数,表示要查询的整数,已保证互不相同。
有部分测试样例满足N<=1,000。输入样例: 1 4 4 2 1 3 2 2 3 输出描述: 输出T行,每行一个正整数,表示最短子数组的长度。如果不存在,输出0输出样例 3