c环境配置
vscode下编写c程序
下载gcc编译器
使用的是直接解压使用版本的,放在u盘里面了。添加bin目录到path环境变量下(用户变量下即可)
在cmd里面输入gcc -v能看到版本号就表示安装成功了
安装扩展插件
在vscode里面装两个插件:c/c++和Code Runner
配置选项
在文件-首选项-扩展里将“Run Code Configuration”中的“Run In Terminal”、”Save File Before Run”前面的复选框选中
运行调试的设置
首先,在”Terminal“菜单下点击”Configure Tasks…”子菜单。
在随后出现的弹出框中选择“C/C++:gcc.exe生成活动文件”
提示:没有这个选项框关闭vscode后重启
随后,在“CEXAMPLES”文件夹中会自动生成一个“.vscode”的子文件夹,在这个子文件夹下自动创建一个”tasks.json“的文件。不用做任何改动。
最后,回到“hello.c”文件,单击鼠标右键选择“Run Code”即可运行代码。
运行结果会在下面出现的“Terminal”中显示
如果想要调试代码的话呢?点击“Run”菜单下的“Start Debugging”子菜单
在随后出现的弹出框中选择“C++(GDB/LLDB)”,再选择”gcc.exe“。
提示:shift f5关闭调试功能
至此,c环境的安装就结束了,终于摆脱上古c环境vc6.0这种了!
leetcode1641
题目描述:
给你一个整数 n,请返回长度为 n 、仅由元音 (a, e, i, o, u) 组成且按 字典序排列 的字符串数量。
字符串 s 按 字典序排列 需要满足:对于所有有效的 i,s[i] 在字母表中的位置总是与 s[i+1] 相同或在 s[i+1] 之前。
#数学解法:可以把问题转换成将 n 个小球放到 5 个盒子里,盒子可以为空。
我们可以想象成把 n 个字符分配给五个元音所代表的盒子中。一旦每个盒子中的字符个数定了,那么这个字符串也固定下来了。因为题目要求必须是字典序,所以一定 a 字符在最前;其次是 e 字符;其次是 i 字符;其次是 o 字符;其次是 u 字符。
下面问题的关键就是,n 个小球放到 5 个盒子里,盒子可以为空,一共有多少种方法?
这是经典的中学数学问题。更一般的,我们来探讨,将 n 个小球放到 m 个盒子里,有多少种方法?
首先,我们考虑问题的简单版本,即盒子不能为空的情况。
此时,我们只需要在 n 个小球排成一排,中间放 m - 1 个隔板,放好以后,相当于把 n 个小球分成了 m 份。每一份对应一个盒子里的小球数量。
因为盒子不能为空,所以两个小球之间不可能放多个隔板,左右两端也不可能放隔板。因此,放隔板的位置有 n - 1 个,我们要放 m - 1 个隔板。答案为 C(n - 1, m - 1)。
有了这个结论,再来讨论问题的复杂版本,就简单了,即盒子可以为空的情况。
此时,我们只需要先拿 m 个新的小球,在 m 个盒子里,每个盒子中扔进去一个小球。之后,再分配原来的这 n 个小球,得到的分配结果,肯定 m 个盒子里都不为空。但此时,我们使用了 n + m 个小球。
换句话说,把 n 个小球放到 m 个盒子里,盒子可以为空,等价于:把 n + m 个小球放到 m 个盒子里,盒子不能为空。
大家也可以想成是:我们先把 n + m 个小球放到 m 个盒子里,盒子不能为空,然后再在每个盒子里拿走 1 个小球,总共拿走了 m 个小球,得到的结果,就是把 n 个小球放到 m 个盒子里,盒子可以为空的解。
把 n + m 个小球放到 m 个盒子里,盒子不能为空的分法,带入上面的公式,就是 C(n + m - 1, m - 1)
所以,把 n 个小球放到 m 个盒子里,盒子可以为空,答案为 C(n + m - 1, m - 1)。
总结:
将 n 个小球放到 m 个盒子里,盒子不为空:C(n - 1, m - 1);
将 n 个小球放到 m 个盒子里,盒子可以空:C(n + m - 1, m - 1);
对于这个问题,m = 5,盒子可以为空,所以答案是 C(n + 5 - 1, 5 - 1) = C(n + 4, 4)
##也可以动态规划求解
字母表示结尾
#还可以从头开始动态规划,但是会重复计算
论文
文章加密
一.编辑/themes/next/layout/_partials/head.swig
在如下位置添加代码
1 | <script> |
之后,在你想要加密的文章的头文件里添加上password: xxxxxx
即可。
二.也是我自己采用的加密方法:装插件
1.npm install –save hexo-blog-encrypt
2.要为一篇文章添加密码查看功能,只需要在文章信息头部添加 password
字段即可:
1 | --- |
3.在Hexo主配置文件 _config.yml
中添加如下配置:
1 | # Security |
就可以按照标签类加密
进阶教程:https://www.itfanr.cc/2021/04/16/hexo-blog-article-encryption/