自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 MotionPPT安装及使用技巧

我觉得还是很不错的,整体下来耗时一分半。虽然有些地方有些许生硬,但是框架出来了我们修修补补还是很快滴。安装完毕点击立即打开,这时候会打开我们的PowerPoint,新建一个空白文档。在motionPPT官网上注册账号并且申请公测,一般一到两天就可以申请下来。这里有很多玩法,我拿其中一个举个例子,其他的大家可以自行研究哦。接下来我们要做的就是,静静的等待。点击motion go,登录。在实验室里点击chatppt。在文本框内输入你的要求。

2023-04-21 12:53:15 4554 2

原创 895. 最长上升子序列

如果还不能理解的话,可以想想求f[i]的规则,其实每个f[i]都可以由前面的f[i]推导出来,就拿f[7]举例,他其实是在找以a[7]结尾之前满足要求且最长的子序列,而我们找到的就是125,而125又是由a[6]结尾之前最长且满足要求的子序列,即1 2.可以理解为一个递推问题。拿样例来举例子,我们得到的应该是1256,那么应该就是f[7]的时候取最长。刚开始f[7]=1,a[7]=6。

2023-03-30 20:51:19 127

原创 1211. 蚂蚁感冒(第五届蓝桥杯省赛C++A/B组)

其实翻译过来就是 往右走并且在第一只蚂蚁的左边 和 往左走并且在第一只蚂蚁的右边 的蚂蚁感染。我们发现也是表示 往右走并且在第一只蚂蚁的左边 和 往左走并且在第一只蚂蚁的右边 的蚂蚁感染。这样代码量大大减少,如果是想思路也可以按照我上面那个来想,然后再考虑要不要优化代码。//第一种情况,第一只蚂蚁往左走,左边的反向和右边的同向会感染。//第二种情况,第一只蚂蚁往右走,左边的同向和右边的反向会感染。

2023-03-18 15:13:25 174

原创 1205. 买不到的数目(第四届蓝桥杯省赛C++A组,第四届蓝桥杯省赛JAVAC组)

最后整理得到大致公式res=(n-1)*(m-1)-1.大致可以发现规律为n=3时,m+1,res+2。推得公式为res=2m-3;暴力搜索,打表找规律。

2023-03-17 20:38:29 119

原创 1230. K倍区间(第八届蓝桥杯省赛C++B组,第八届蓝桥杯省赛JAVAB组)

将代码仔细分析s[r]-s[l-1])%k,这句代码的意思不就是找两个s数组里的数,他们的模k的余数相同吗?那我们不就可以直接统计我们当前的s中有几个数的余数相同,然后得到答案吗。在最基本的暴力里,时间复杂度大约是O(n^3),根据题目的数据范围,我们大致可以看出能通过的时间复杂度大约是O(n)左右,那么就需要降幂。在本题中采用暴力解法超时过于离谱,所以需要一步步优化。首先用前缀和将最里层循环取代,这个大家应该都会。在暴力做法里,我们代码大致是这样。其次比较难想的一点就是取模。#### C++ 代码。

2023-03-16 21:37:23 49

原创 99. 激光炸弹

一个int 4 个bit,开一个数组 5000 * 5000 * 4=100000000,1M为1048576个字节,大约100万,激光炸弹的投放是通过卫星定位的,但其有一个缺点,就是其爆炸范围,即那个正方形的边必须和。�,分别代表地图上的目标数目和正方形包含的横纵位置数量,数据用空格隔开。输出一个正整数,代表一颗炸弹最多能炸掉地图上目标的总价值数目。��,�� 表示目标在地图上的位置,每个目标都有一个价值。�×� 个位置的正方形内的所有目标。��,��,��,分别代表目标的。:不同目标可能在同一位置。

2023-03-16 20:40:28 86

原创 1227.分巧克力(第八届蓝桥杯省赛C++A/B组,第八届蓝桥杯省赛JAVAA/B组)

然后后来就是想到二分,从题目给的数据范围里找出符合条件的那个数。题目给定数据范围是1~100000,那就从这个范围里找符合题目要求的数。构建好二分框架之后,再去具体实现check()内容。* check内容其实更好弄明白,我现在拿到一个数,我直接检查我手上的巧克力按照这个数切到底。能不能够分给k个小朋友吃。就直接创一个计数器res,切一块记一次,如果够了说明就是这个数。* 拿到这个题的时候我第一个想起来的是短边效应,即最短边的长度决定巧克力的大小(虽然在这。个题里用处不大,但是我觉得还是很有意思的。

2023-02-28 20:17:54 140

原创 1221.四平方和(来源:第七届蓝桥杯省赛C++A/B组,第七届蓝桥杯省赛JAVAB/C组)

就是上面那个其实就是存的a²+b²的值时分别对应的cd。那在下面枚举的时候就是直接取ab最小的时候输出就结束了。

2023-02-27 23:45:14 67

原创 java期末复习

但是,地球上的动物仍以从低等到美等、从简单到這杂的趋势不断进化并繁行,并有了如今的多样性。这个就很好理解,我先声明了我这个类里有三个属性,我们写一个构造方法,使得在创建这个对象的时候就可以直接为这三个属性赋值 ,this.name就可以理解为指向,this.name代表的是第一行这个name,=后面的name就是构造方法传值传进来的name,我们用。这道题考的是继承,继承其实算比较简单好理解的了,子类继承父类所有方法和属性,并且可以在子类中重写父类中的方法,你也可以理解成if的嵌套,他们在逻辑上有些相似。

2023-02-17 16:22:32 741

原创 翻硬币(第四届蓝桥杯省赛C++B组)

第一个是比对,比对他们每一位是否相同,相同则继续比对下一位,不相同就一定要进行操作,因为题设能操作的部分其实只有两个地方,该位置和其相邻的位置,至于左边还是右边其实是可以不用考虑的。因为比对过了的就不能再改变他的状态了,所以可操作的数就只能是按照比对顺序的下一位操作。现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?两行等长的字符串,分别表示初始状态和要达到的目标状态。我们约定:把翻动相邻的两个硬币叫做一步操作。

2023-01-30 17:38:34 128

原创 95.费解的开关

我刚开始想的是用递归指数型枚举第一行的操作,但是后来我发现这样写很麻烦,还是采用了将是否改灯的操作看作是五位二进制数,从00000到11111共32种情况,其中从低到高表示对第一行每一个是否进行改灯操作,0表示不改,1表示改。之前对这个题一直没思路怎么想也不对,后来看了一下y总的解题思路才知道怎么做,我先把改灯规则和操作都以函数的形式写出来了,用的最通俗的写法。之前我一直看不懂这是什么意思,我之前觉得是为什么灯为1还要进行改灯,后面我才发现这个op指的是我们是否改灯的操作,不是指灯本身的状态。

2023-01-16 16:53:07 320

原创 1209.带分数

带分数中,数字 1∼9 分别出现且只出现一次(不包含 0)。先枚举完a的值,再a的叶子上枚举c,根据a,c的值去算b,类似于嫁接。输出输入数字用数码 1∼9 不重复不遗漏地组成带分数表示的全部种数。100 可以表示为带分数的形式:100=3+69258714。类似这样的带分数,100 有 11 种表示法。还可以表示为:100=82+3546197。

2023-01-13 16:10:52 103

原创 论文报告中如何优雅的粘贴代码(表格版)

这时我们需要填充表格左侧的代码行数的数字,在空白处如下图一样打出 Seq a(a没有什么具体含义,就是相当于编程语言里面的变量,你可以设成a,也可以设成b或者其他的)。创建好表格后应该是一行代码占据表格的一行,在左侧另加一列,用作代码行数的计数(当然不要也可以)。在一个文档里你需要创建两个或以上的这样的有序序列时,就不能接着用Seq a了,因为会它会接着上次的排。这时候左侧全为 1 ,不用担心,在不取消整列选择时,再次点击F9,它就会自动填充为有序序列。经过调整,我们就可以得到下面的优雅美观的代码了。

2023-01-01 13:24:48 11744 4

原创 用递归方式写斐布拉契数列的坏处

在学习循环时,用循环写斐布拉契数列思路大致如下:代码可以写成: 若使用函数递归,则有:相较于循环求解,递归法似乎更好理解,但递归法存在一个和大的问题:

2022-06-10 16:19:25 162

原创 笔记:Stack overflow栈溢出

函数递归中出现的栈溢出现象的原因

2022-06-07 20:41:31 276

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除