本文主要是介绍Day 01: Random Mashup,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
2018.7.19
今天是训练的第一场比赛
今日ranklist:
A. Levko and Table
题意:给定n和k,要求你构造出一个n维方阵使得每行每列的和等于k
解法:对角线是k 其他数是0即可
B. Levko and Permutation
题意:给定n和k,要求你构造出一个序列有n个数(1~n),使得每个数与其下标的最大公约数大于等于1的个数为k个
解法:只需要构造出:n - k 1 2 3 ... n - k - 1 n - k + 1 n - k + 2 ... n 这样的一个序列即可
C. Levko and Array Recovery
题解见:Levko and Array Recovery
D. Adding Digits
题意:给定a, b, n三个数 需要你在a的数后面添加n个数字使得b可以整数a,判断能不能成功
解法:只需要判断第一次能不能成功即可,后面全部加0就可以了。否则就失败
E. Ancient Prophesy
题意:dd-mm-yyyy为一个正确的日期格式,给定一个字符串问你出现最多的是哪个日期
解法:由于日期限定为2013-2015,暴力就可以了。预处理出所有日期一个一个搜索即可。复杂度O(3*365*N)
F. Balls and Boxes
题解见:Balls and Boxes
G. Roma and Lucky Numbers
题意:给定数字问有多少个数的4和7的个数不超过k位
解法:模拟即可
H. Roma and Changing Signs
题意:给你一个不严格递增的序列,一次操作代表你将一个数乘以-1,问你k次操作后能达到的所有数的最大的和是多少
解法:首先将所有负数变为正的(由小到大),如果还需要操作,那就找一个绝对值最小的数进行剩下的操作。
奇数次操作则乘以-1,偶数次则不变。
训练的时候想的太复杂了,还分正负零的情况讨论,其实只需要考虑绝对值就行了。
I. Maxim and Discounts
题解见:Maxim and Discounts
J. Maxim and Restaurant
题解见:Maxim and Restaurant
K. Black and White Tree
题解见:Black and White Tree
这篇关于Day 01: Random Mashup的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!