qbzt day2 上午】的更多相关文章

内容提要 贪心 分治 分块 搜索 接着昨天的讲 过河问题 考虑AB是最快的人,CD是最慢的人,要把CD两个人送过河,只有两种方案,牵扯到四个人,并且n个规模的原问题化成了n-2个规模的子问题 那么最后有两个情况,四个人和三个人,如果是四个人就直接按刚才的方法搞一搞就好了,如果是三个人的话,就有两个方案,一个是A来回送,一个是AB一起操作,就是在两个之间取min就好了 贪心算法在骗分时的运用主要集中在两点: 1.贪心算法失效时该如何补救? 2.如何利用贪心算法来提升自己的一个暴力算法? 1.贪心算…
今天上午考得不是很好,主要还是自己太弱QAQ 开场第一题给的图和题意不符,搞了半天才知道原来是走日字形的 然后BFS即可 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> #include<cstdlib> #include<queue> using namespace std; const int maxn=110; int n,m,a…
1.算数基本定理: 对于任意的大于1的正整数N,N一定能够分解成有限个质数的乘积,即 其中P1<P2<...<Pk,a1,a2,...,ak>=1; 证: 存在性: 若存在最小的N不满足条件,当N为质数是,显然不成立:当N为合数时,存在P,使得N=P*(N/P),N/P<N,与假设N为最小的矛盾,故一定存在: 即:假设N为最小的 当N为质数直接gg 当N为合数还是gg 故不存在... 唯一性: 假设N的分解不唯一 设存在最小的N,使得N=p1r1 p2r2  .... pkr…
题目描述 你是能看到第一题的 friends呢. -- hja ?座楼房,立于城中 . 第?座楼,高度 ℎ?. 你需要一开始选择座楼,跳. 在第 ?座楼准备跳需要 ??的花费. 每次可以跳到任何一个还没有过的楼上去.但是代价,另外一座楼的代价是两高度差绝对值 ,最后一次从楼上跳到地面不需 要代价(只能跳到地上一次).为在不超过 要代价(只能跳到地上一次).为在不超过 ?的情况下,最多跳几次楼. (一座楼 只能 跳一次 ,且每次 跳楼 都要 计算 准备 的花费 ) 输入输出格式 输入格式: 第一行…
预计分数:100+0+60=160 实际分数:100+0+60=160 mmpT1数据错了... T1遭遇 题目描述 你是能看到第一题的 friends呢. —— hja ?座楼房,立于城中 . 第?座楼,高度 ℎ?. 你需要一开始选择座楼,跳. 在第 ?座楼准备跳需要 ??的花费. 每次可以跳到任何一个还没有过的楼上去.但是代价,另外一座楼的代价是两高度差绝对值 ,最后一次从楼上跳到地面不需 要代价(只能跳到地上一次).为在不超过 要代价(只能跳到地上一次).为在不超过 ?的情况下,最多跳几次…
#include<iostream> using namespace std; int n; ; ]; long long p[maxn]; long long dp[maxn][maxn]; long long tot; int pre() { ;i<=n;i++) { if(!note[i]) { p[++tot]=i; } ;j<=tot&&i*p[j]<=n;j++) { note[i*p[j]]=; ) { break; } } } } int ma…
由于优盘咕咕咕了,所以这篇就咕咕咕了 以后还会补上的 qwq…
还是合并石子,但是这次可以任意两个合并,并且求最大异或和 f[s]表示把s所对应的的石子合并为一堆的最小代价 最后求f[2^n-1] 怎么转移? 最后一次也是把两堆合并成一堆,但是会有很多情况,可以枚举s的所有子集,把子集和剩下的部分合并 直接枚举比s小的数,看看是否s|a=s或s&a=a 复杂度O(4^n) 优化:如果自己直接枚举子集就会快一些 cin >> n; ;a<n;a++) cin >> z[a]; ;a<(<<n);a++) ;b<…
动态规划 递推  递归   记忆化搜索 斐波那契数列 1.用其他已经计算好的结果计算自己的结果(递推) 2.用自己的值计算别人的值(考虑对之后的项做出的贡献) cin >> n; f[]=;f[]=; ;a<=n;a++) f[a] = f[a-] + f[a-]; ;a<n;a++) { f[a+] += f[a]; f[a+] += f[a]; } 理论上两种方法都是可以的,但有的题一种方法会很难写,另一种方法就很好写,所以两种都需要掌握 3.记忆化搜索 递归处理斐波那契数列的…
图论 最短路:dijkstra   spfa   floyd 最小生成树:kruskal 连通性:bfs/dfs    tarjan(强连通分量) 其它:拓扑排序    LCA 齿轮: 图的dfs树只有返祖边没有横向边 树边确定了基础的转动比,非树边判定转动比是否可行 Lca Dijkstra Pair第一个存的是源点到这个点当前的最短路,第二个存的是这个点的编号 预处理 把1压进去,1到其他的dis都设置为正无穷 不断地从堆顶弹出元素,直到弹空 对其中的元素进行处理 注意如果已经处理过就不用处…