一.个人理解 前面学习了前缀和算法,对于访问任意区间的速度是比较快的,但如果我们要修改某个区间的数呢,对于前缀和算法来说这还是有点棘手. 所以我们来学学新的算法:差分算法! 前缀和数组储存的是前n个数的和,而差分代表的是与前一个的差值. 为什么要这么储存呢??? 因为这么储存之后,我们就可以对我们的原数组进行修改,假如我们在第 l 个位置加上一个值,就会影响后面所有的数值 ,这时候我们只需要在我我们要截止的地方后面一个数(也就是r+1)加上一个数值就可以了(后面的正负相抵没有了).这样,就只用修…
一.高精度加法 思路: 运用vector数组(c选手可用len来记录数组长度,数组去保存数字)将存入字符串里面的数字符倒叙保存,按照小学的加法列式,相加保存进位即可.具体参考代码. 详细代码解析: #include<iostream> #include<string> #include<vector> using namespace std; //数据名称太长后面又要经常用到它,所以直接给他取个小名,就相当于c中的define typedef vector<int…
算法介绍: 设a为数组,a[i]中储存的是前i 个数(包括自己)的总和,相当于我们中学学过的前N项和,那么,弄成这样的好处是什么呢?假如我们要多次访问一段区间的总和,难道每次都加一次进行重复运算吗???而我们的前缀和就可以解决这个问题,提前预处理,访问到这段区间直接相减就得出了答案,避免了许多的重复运算. 基本代码解析: #include<iostream> using namespace std; + ; int s[N], a[N]; int main() { int n, m; scan…
1.奖券数目 2.星系炸弹 3.三羊献瑞 4.格子中输出 5.九数组分数 6.加法变乘法 7.牌型种数 8.移动距离 9.垒骰子 10.生命之树 1.奖券数目 奖券数目有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利.虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求.某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张. 答案:52488 s.直接求就行了,8*9*9*9*…
题目链接:https://www.jisuanke.com/contest/6516 A:题目: 我们称一个数是质数,而且数位中出现了 5 的数字是有趣的. 例如 5, 59, 457.求1到100000中有趣的数的个数. 题解:无脑分解和暴力枚举素数即可. 代码: #include <algorithm> #include <cstdio> #include <cmath> #include <cstring> #include <iostream&…
1.煤球数目 2.生日蜡烛 3.凑算式 4.快速排序 5.抽签 6.方格填数 7.剪邮票 8.四平方和 9.交换瓶子 10.最大比例 今天是周三了,周天刚考完,这次做的还是不好(上次是全省最后一名).其实刚考完时还是感觉良好的,但是当我听到填空不要加分号.大题不能循环输入的时候,整个人都不好了...原本还不错的心情一下子变糟了... 我是从第一道一直进行到最后一道的,最后一道没有时间做了,也没有时间检查了,可以说是时间分配的不太合理,应该细心检查一遍的(第3题循环暴力竟然没判断重复:第7题写了个…
题目地址:https://wenku.baidu.com/view/326f7b4be518964bcf847c96.html?rec_flag=default    => 百度文档 题目及解析如下: 题目大致介绍: 第一题到第四题是结果填空,方法不限只要得到最后结果就行 第五题到第七题是代码填空,要求在指定的位置处填代码 第八题到第十题是编程题,要求编程解决问题 第一题 第一题很简单,就是个签到题,详情如下: // 黄金分割数 public class t1 { public static v…
1.微生物增值 2.古堡算式 3.海盗比酒量 4.奇怪的比赛 5.方阵旋转 6.大数乘法 7.放棋子 8.密码发生器 9.夺冠概率 10.取球博弈…
1.高斯日记 2.马虎的算式 3.第39级台阶 4.黄金连分数 5.前缀判断 6.三部排序 7.错误票据 8.翻硬币 9.带分数 10.连号区间数…
1.啤酒和饮料 2.切面条 3.李白打酒 4.史丰收速算 5.打印图形 6.奇怪的分式 7.六角填数 8.蚂蚁感冒 9.地宫取宝 10.小朋友排队…