浙江工商大学2020年新生赛部分题解(三)

浙江工商大学2020年新生赛部分题解(三)

2、战神和一笔画圆

这个题目其实是考一个叉积的概念,当然也可以通过斜率来判断,但是太复杂了,有各种情况,不合适。
直接介绍一下叉积,当两个向量叉积大于零时,说明第一个向量转到第一个向量的方向为逆时针。
向量a为(x1, y1), 向量b为(x2, y2),a X b = x1 * y2 - x2 * y1;
上面应该是高中叉积的概念,当然你要了解计算几何里面,在计算几何里,△ABC的面积就是“向量AB”和“向量AC”两个向量叉积的绝对值的一半。其正负表示三角形顶点是在右手系还是左手系。
在这里插入图片描述

3、战神打包快递

其实这题我感觉是个意想的题,就是想想是这个道理,然后写一发就过了的题。
具体说,我们让节省的材料尽可能多,当然我们可以让两个矩形较长的边靠在一起就行了。接下来其实即使一个公式的问题,先考虑一共需要多少,减去节省的,就能AC本题了。
出题人有一个详细的证明,我去找一下截个图:在这里插入图片描述

5、战神数颜色

这个题是比较经典的题,就是求贡献的题。
我们考虑每一个数对答案造成的贡献,对于ai,我们算这一项能出现多少次,出现多少次其实就是选取区间左右端点的方案数的的乘积,乘法原理嘛。举个栗子,对于第3项a3 = 2,出现的所有区间, 左端点可以是1、2、3;右端点可以是3、4、5、6;一共有3 * 4 = 12种。所以a3的贡献是a3 * 12。
所以答案就是:
在这里插入图片描述
by pangge
2020/12/20 19:09 算法之光实验室

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值