- 博客(9)
- 收藏
- 关注
原创 蛇形矩阵(数组)
这个时候我们定义一个cnt=0,创造一个菱形,读一个数就加1,然后把这个读到二维数组,是不是就实现了我们的要求,不过我还没有写这个代码,这个是思路之一。是不是很像一个图形啊,上面接了一个三角形,下面接了一个倒三角形,这不就是妥妥的菱形吗,这样们也可以通过以下代码实现,把绿色的铺满,然后裁剪留下矩阵的部分。最后我们裁剪掉多余部分,然后按照奇偶判断就能优化成最上面的代码。由题可知,图中的方向就是我们要输出的方向。我们可以把问题换个方向想来找思路。
2024-11-23 23:34:16
275
原创 蓝桥杯分巧克力
以下为题目zhe这道题读完题后有两种思路,一种是暴力,一种是二分,还有dp数组的做法,本篇先介绍暴力的思路,二分也比较快,下一篇介绍二分;
2024-11-18 20:19:41
668
原创 15届蓝桥杯C&C++软件赛省赛B组 08G爬山
如果第一种魔法次数用尽,但第二种魔法次数 `q` 还有剩余,使用第二种魔法将山的高度降低到 `max/2`,并减少 `q` 的次数。2. **输入**:读取山的数量 `n`,以及两种魔法的使用次数 `p` 和 `q`。- 如果第一种魔法次数 `p` 还有剩余,使用第一种魔法将山的高度降低到 `sqrt(max)`,并减少 `p` 的次数。1. **初始化**:定义一个优先队列 `pq` 来存储山的高度,以及两个变量 `p` 和 `q` 来存储两种魔法的使用次数。- 当还有魔法次数剩余时,执行循环。
2024-11-17 15:39:04
292
原创 蓝桥杯酒量争霸赛
**快速幂算法**:`qmi`函数实现了快速幂算法,这是一种高效的计算幂的方法,特别是在需要模运算的情况下。- **组合数计算**:`get_C`函数利用了组合数的性质,通过阶乘和模逆元来计算组合数,避免了直接计算大数的阶乘,这在大数情况下尤其有效。- **常数定义**:通过定义`mod`和`N`作为常数,代码可以在不修改逻辑的情况下轻松调整模数和数组大小,以适应不同的问题规模。- **边界条件检查**:在`get_C`函数中,对输入参数进行了检查,确保了函数的鲁棒性,避免了无效的输入导致的错误。
2024-11-16 18:57:42
1419
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人