摘要:【题目】先给出题目的链接 【分析】题目有点类似于宝背包问题,算是一种背包问题的变形。首先我们要留出背包容量为1来装价值最大的东西,剩下的背包体积还有其他物品就按照01背包的解题思路去求解。最后问题的答案就是:价值最大的东西的价值+剩余空间dp[]之后的最大价值。如果把背包容量完全给了去dp[]求解的
阅读全文
摘要:【定理】首先来具体的看一下割线定理:(节选自百度百科) 【题目】题目来自牛客网2019西北工业大学程序设计创新实践基地春季选拔赛 【分析】 由割线定理,|BD|*|BE| == |BF|*|BG| ,所以有|BD|*|BE| = ((x1-x0)^(1/2) + (y1-y0)^(1/2) - r
阅读全文
摘要:【题目】 【分析】 首先利用全全排列函数列举出所有的组合,然后利用dfs搜索每一个满足的组合,在查找的过程中利用排序+set容器来去重复(这是一种较为常见的去重方法,注意要排序),dfs过程中,要判断一个数是否为平方数,还要对特殊的情况进行特判。【知识点】 全排列,dfs,平方数判断,set去重 【
阅读全文
摘要:以下博客转载自:https://blog.csdn.net/ryo_218/article/details/79750476 第三届蓝桥杯C++组 取球游戏 以下博客转载自:https://blog.csdn.net/ryo_218/article/details/79750476 第三届蓝桥杯C+
阅读全文
摘要:题目描述给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。 你能求出数列中总共有多少个K倍区间吗? 输入输入数据: 第一行包含两个整数N和K。(1 <= N, K <=
阅读全文
摘要:浮点数可以用printf(“%.20f\n”,a);输出到小数点后20位,但是一般的,如果用cout << a << endl; 或者printf("%lf\n",a);这样输出的话,在数据精确度很高的情况下,系统一般会进行四舍五入之后在进行输出,比如说会精确到小数点后六位或者后四位输出。 可以作为
阅读全文
摘要:以下博客转载自:https://blog.csdn.net/qq_40160605/article/details/80150252 lower_bound( )和upper_bound( )都是利用二分查找的方法在一个排好序的数组中进行查找的。 在从小到大的排序数组中, lower_bound(
阅读全文
摘要:https://blog.csdn.net/u010003835/article/details/47665847https://blog.csdn.net/vir_lee/article/details/80645066strtol函数:用于由十进制转化到2~36的其他进制。函数原型为:long
阅读全文
摘要:以下博客转载自:https://blog.csdn.net/howardemily/article/details/68064377 ,在此感谢前辈们的经验分享。 全排列参考了两位的博客 感谢! http://blog.sina.com.cn/s/blog_9f7ea4390101101u.html
阅读全文
摘要:1.充分考虑算法复杂度 虽然蓝桥杯一直被大家戏说成暴力杯,但是有的地方还是会卡时间的。比如这个题目:算法训练 数字三角形 ;如果这个题目用bfs来写的话,时间上会超,一种做法就是在输入的时候直接往上层遍历一遍就好了,这样的话,算法复杂度就不会超时。 2.bitset 学会使用bitset处理二进制有
阅读全文
摘要:gcd: lcm: 总结:事实上,求两个数lcm的本质也还是要用上他们的gcd,他们的lcm = (a*b) / (gcd(a,b));
阅读全文
摘要:博客主要参照:https://www.cnblogs.com/yjlblog/p/6947747.html ,感谢前辈们分享的经验! 1.学会运用set容器;(有个小知识点,set容器,元素只能出现一次,并且插入可以从小到大排序) 2.学习字符函数库中常用的函数 3.学会stringstream(可
阅读全文
摘要:题目是:https://www.nowcoder.com/acm/contest/127/F 这道题目虽然很简单,但同时也很容易错,发现了规律之后,题目也就迎刃而解了。 规律如下:
阅读全文
摘要:知识点:一直读入数据,直到键入回车键是停止。
阅读全文
摘要:#include #include using namespace std; typedef long long LL; // 18位素数:154590409516822759 // 19位素数:2305843009213693951 (梅森素数) // 19位素数:4384957924686954497 LL prime[6] = {2, 3, 5, 233, 331}; LL qmul(LL...
阅读全文
摘要:使用递归调用来实现快速幂函数可以说是对快速幂函数最为高效的方法之一,一般可以满足对于算法的时间复杂度需求。(好像还有一种更为高效的实现算法,感兴趣的请自行查找) 先贴上代码: 可能注释解释的那么多一下子没看懂,没关系,多看几遍,自己推算一遍就好了,代码不可多背,要在理解的基础上再去记忆,这样才能牢固
阅读全文
摘要:筛选素数其实有两种比较高效的算法可以提供选用,分别是:Eratosthenes筛选法与欧拉筛选法。但是欧拉算法的普适性比较高,所以这里就只介绍欧拉函数的算法。筛选的范围较小的话,欧拉算法,数据较大,埃氏筛法,所以埃氏筛法一定要掌握,以后可以统一用埃氏筛法。【埃氏筛法】 筛选10000000以内的素数
阅读全文
摘要:对比与其他的变态搜索题目来说,这道题目就系显得特别友好; 之所以贴上这道题目,是因为还能才能从这道题目中学到东西 1.找到自己想要的搜索结果之后,如何终止搜索 2.如何储存最大的数值 AC CODE: 1.unsigned __int64 x; 对应的输出就是printf("I64u\n",x);
阅读全文
摘要:对于初学搜索问题比较有挑战性的一个问题: description: input: output: sample input: sample output: AC Code: TIP: 结构体+queue队列容器+方向数组的运用+广度优先搜索(特殊情况的排查,不重不漏)
阅读全文
摘要:poj3278:catch the cow 这里贴上的都是原题,没有附上翻译的版本,大家英语都是杠杠的,想必都是无障碍阅读,实在读不懂,可以百度一下意思。 description: input: output: sample input: sample output: Hint: AC code 1
阅读全文