程序员笔试之拼多多2021校园招聘测试开发工程师 编程题收集整理(十)

1.炎炎夏日,多多实在太无聊,唯有学习才能保持内心的安宁。多多最近在学习矩阵知识,但他遇到了一类奇怪的矩阵。因此想把矩阵打印出来,好好观察。对于一个n阶矩阵,首先用米字形分割线把矩阵等分为8个区域,然后从右上角开始,按逆时针顺序给各区域编号为1,2,…,8。如图示意:
在这里插入图片描述
同时矩阵元素需要满足:
1)各区域内的元素都等于区域的编号
2)被分割线穿过的元素值都等于0
多多希望你能够帮他打印出这个矩阵
输入描述:
一个数字n,表示矩阵的阶数
(3<n<200)
输出描述:
输出n行,每行n个数,用空格隔开,表示打印出的矩阵
示例1:
输入:
4
输出:
0 2 1 0
3 0 0 8
4 0 0 7
0 5 6 0

示例2:
输入:
5
输出:
0 2 0 1 0
3 0 0 0 8
0 0 0 0 0
4 0 0 0 7
0 5 0 6 0

2.在神奇的一天,多多背着一个神奇的背包来到一个神奇的商店,商店里有N个神奇的商品。店长让多多挑任意个商品放入背包带走。多多发现,这些商品中有些会占用背包的一部分空间,但也有些商品反而会让背包变得更大。同时,这些商品中有些具有一定的收益,但也有些商品是负收益。多多想知道它今天能带走的最大收益是多少。
对于前60%的数据,商品占用的背包空间和商品的收益均为非负整数!
输入描述:
第1行是两个整数N,M,其中N表示商品的总数,M表示多多的背包的原始大小。
第2到N+1行每行有两个数字Ci,Vi,其中Ci表示第i件商品占用的背包空间,如果Ci为负数则表示这件商品会增加背包空间;Vi表示第i件商品的收益。
对于100%的测试数据,满足:
1<=N<=200
0<=M<=5000
-100<=Ci<=100
-100<=Vi<=100
输出描述:
多多能带走的最大收益
示例:
输入:
4 4
-1 -1
1 -1
-1 1
6 6
输出:
6

3.多多君最近在研究新的一组函数:
多多君认为,若某个正整数X可以被特征值集合中的某个数Y整除,那么这个正整数X是具有显著特征的。对于给定N和M,其中N表示正整数集合1 ~ N,而M表示有M个特征值组成的集合,多多君想知道,在正整数1 ~ N中,一共有多少具有显著特征的数字。
输入描述:
第一行,两个正整数N和M,分别表示正整数集合以及特征集合的大小。
(1<=N<=1,000,000,000,1<=M<=10)
记下来M行,表示特征集合的数字,其中第i行表示第i个特征值Yi.
示例1:
输入:
10 2
2
3
输出:
7

示例2:
输入:
10 3
2
3
5
输出:
8

猜你喜欢

转载自blog.csdn.net/qq_34124009/article/details/108356859