随机图片API的使用(同一页面请求多张图浏览器缓存导致图片相同的解决方案)
博客可以写很多,有更多的地方会用到图片,因为一般人都会懒得自己设置每一张图片的样式,所以随机图片api就诞生了。 图片api很常见,一搜就可以搜到很多,文末会放置一些Edge在使用的api,和高质量的api推荐,但当很多人意气风发的将图片api给的接口地址替换掉原来的图片地址后,会发现如果你在同一个页面请求了多张图片,会导致图片实际显示的是同一张。。。对于一个没有充足的网络相关的知识储备的人来说,判断问题的所在的和搞出解决方案是需要花费大量的时间的。所以这篇文章就诞生啦! 同一个页面请求了多张图片,图片相同的解决方案问题就出现在, 发起请求时, 由于链接地址是同一个, 实际上即使同一个页面中有多个(相同)图片链接, 也仅仅发起一次请求, 所以也就返回一张图片了! 所以只要修改链接不同即可! 首先,选取一个API Edge将选两个不同的api作为讲解的素材,它们分别是: 123https://tuapi.eees.cc/api.php # 随机图片API 随心而换 想刷就刷https://acg.toubiec.cn/random.php # 晓晴博客https://img....
编程入坑指南
首先,用一篇大佬的文章引入:这可能是我见过最好的编程指南了!这篇文章讲述了关于 编程语言的选择 学习编程需要的知识基础 编程学习计划的制定 知识的整理(笔记,博客) 编程学习的方法和资料选择等。 总之是一份详细的编程指南,那么,本博客的意义何在?体现在目录中啊~ 分门别类的介绍 算法 学习资源 分门别类的介绍算法如果是想学习算法的话,你可以去OI Wiki,它上面有着完备的算法竞赛的相关的知识。 学习资源菜鸟教程
边缘坐标的编程入门日志
这两节课,同学们学习了STL的各种容器的使用,以及基本的算法函数。STL可以提高我们编程的效率,和降低编程难度,因此同学们应学会常用容器的基本使用方法,以及算法库的几种主要算法。 特别提醒下,课上遇到的set、prority_queue等容器的自定义排序方法,实际上是因为这些容器用的比较器不是函数而是类,因此调用格式不一样,但由于类方法是()的运算符重载,使用看起来像一个普通函数,因此造成了混乱。这些面向对象编程的方法同学们暂时不用深究,算法竞赛没有这方面的内容,仅在使用STL时遇到这些,只要会用即可。课后我整理了目前采用的方法,列在下面,大家参考下: 12345678910111213141516171819202122232425261、sort使用的是函数名或函数指针,例如: sort(ar,ar+n); sort(ar,ar+n,mycmp); //自定义函数mycmp 也可以使用类方法,如: sort(ar,ar+n,greater<int>());//greater<int>是一个类,类方法()和函数相同,也是一个函数指针2、容器使用的是类: ...
线性表
高维数组按行展开。 12a[100][200][300]a[x][y][z] = *(a + x*(200*300) + y*300 + z ) 工程写法,词法练习,语法分析非for列表
AcWing 271. 杨老师的照相排列
AcWing 271. 杨老师的照相排列前言相关分析时间复杂度由均值不等式,最坏情况下共有 (Nk)k(Nk)k 状态,计算每个状态需要 O(k)O(k) 的计算量,因此总时间复杂度是 O(k(Nk)k)O(k(Nk)k)。https://www.acwing.com/solution/content/4954/ 代码123456789101112131415161718192021222324252627282930313233343536373839404142434445#include <iostream>#include <algorithm>#include <cstring>using namespace std;const int N = 31;int k = 1;long long dp[N][N][N][N][N];int main(){ while (cin >> k, k) { int n[6] = {0}; for (int i...
排错日志
排错会花费很大的时间代价。通常会让我。。。 错误多种多样,多次犯下未初始化或初始化错误的错误。比如2021.10.1日再写P1080 [NOIP2012 提高组] 国王游戏 的时候,对于乘积的初始化错误,一开始是判断出初始化错误的,但没有相信自己。初始化错误的表现在某些特殊样例面前可以通过,如在刚刚提到的题目中,如果国王左手上的数字为1,则输出正确。对于固定输入,错误输出可能不固定(未出始化)。解决仔细研读题目,看看变量之间的相关性,相关变量运算时是否有遗漏,看输入数据,看看输出错误的数据,和输出正确数据间的不同,输出正确的输入有什么特殊性
洛谷-P1590 失踪的7
link 废话不多说,直接思路+题解。。。 思路具体思路是计算出每一个数对总方案数的贡献方法数,然后求和就好了。比如n=4321:1 的贡献值:很明显是1,只能有1这一种可能性。2 的贡献值:注意在十位,所以贡献值应该是 $2∗9^1$3 的贡献值:在百位,应该是 $3∗9^2$4 的贡献值:在千位,应该是 $49^3$所以某一个数的设位数为b,值为a贡献值就是 $a9^{b-1}$然而,如何去证明呢?很简单,因为7不可用,每一位自然有9个选择那么根据乘法原理,一位数随机排列为9种,两位数为81种,n位数就是 $9n9^n$9n 种,也就是 说,0-99999....9就可以用乘法原理来算,如果去掉0这种情况,再加上100000......0这 种情况,一加一减抵消了,总数没有变。就变成了1-100000......0的总数为 $a*9^b$种。 至此,我们就证明完了贡献值公式是正确的,但是,为什么总数是这些贡献值加起来呢?我们用位置原理 就能证明。还是之前那个例子,n=4321,计算出了4的贡献值,相当于我们已经算完了1......4000了,剩下无论如何千位数也不会...
线段树
线段树原理思想 懒操作 建树操作