华为笔试 9.27 之我是彩笔
第一题求优惠总价格 100%
一个n维度数组代表n个商品的价格,任何一个商品的优惠力度是这个商品之前最近的、标价小于等于原商品的价格,例如:
[1,2,3,1,4]的优惠价格分别是[0,1,2,1,3],优惠总和是7
直接暴力会超时,需要在前者价格大于后者价格的时候剔除前者,例如上面的数组对于最后一个位置[.....,4]前面的[1,2,3...]都可以不考虑,因为有一个小于等于他们任何一个数且更靠后的[1,2,3,1...]
第二题实现多项式运算 50%
a和b两个多项式进行运算,只有加减乘
减法其实就是加-b
乘法我记得numpy有个库可以实现多项式乘法 但是扣脑袋想了半天也没想起函数名是啥...(华为这个系统不会自动弹出库函数,不知道是我卡了还是啥情况)
最后输出需要输出字符串形式而不是数组,例如x3+x2+1应该输出[1 1 1]而不是[1,1,1],遇到一个很莫名其妙的bug,如果把数组先转str再将逗号replace成空格会长一点变成[1 1 1],但是' '.join()不会,debug了半个多小时
最后空集情况看别人写的才发现...空集应该是[],我返回的是[0]...
总结:我是彩笔
第三题拖车问题 0%
有n辆卡车和m个货物以及k个漏斗,每个卡车都可以装一定的货物,用漏斗可以装更多的货物。问最多能运走多少个货物(不是多少重量是多少个)
上一个题用了太长时间没时间看了
总结:我是彩笔x2
#华为#