ZangYH
ZangYH
全部文章
分类
归档
标签
去牛客网
登录
/
注册
ZangYH的博客
TA的专栏
51篇文章
0人订阅
题解汇总
51篇文章
560人学习
全部文章
(共51篇)
一群小青蛙呱蹦呱蹦呱
来自专栏
青蛙不会踩到的数一定是由两种以上质因子的,我们用p1-pn表示不同的质因子,那么这些不会踩到的数就可以表示为p1^a1 * p2^b1 或者 p1^a2 * p2^b2 p3^c1 等等要对这些数求lcm,我们假设只存在两个不会踩到的数,分别为 p1^a2 * p2^b2 *p3^c2 和p1^a1...
2021-05-28
0
342
红和蓝
来自专栏
根据题意可以知道叶子结点必须要和他的父亲节点颜色相同,不是叶子节点的节点,而且还没有染色,也让他们和它的父亲同色,如果此时他的父亲已经染过色了那么他就没办法染色了,如果根节点孤寡,也不能染色。 #include<bits/stdc++.h> using namespace std; co...
2021-05-26
0
462
串
来自专栏
解法一:设dp[i]表示长度为i的合法字符串dp[i]的状态转移有两种一:长度为i-1的合法的字符串数量在这种情况中第i位随便填一个字母就可以了即26dp[i-1]二:长度为 i-1的包含u但不包含us的字符串的数量这种情况中的 i位必须要写 s那么怎样计算第二种情况的字符串的数量呢?这样算:长度为...
2021-05-26
0
319
NC16655 过河
来自专栏
dp+离散化设dp[j]的含义是到位置j的陷进数,如果道路长度为1e9的话,数组是开不到这么大的,所以我们必须想办法缩短道路的长度,这就用到离散化了。青蛙每次可以跳s-t之间的数,如果s==t的话,只需要枚举存储陷阱位置的数组,判断当前位置s是否可以走到即可。如果s!=t的话,我们来举个例子讨论下比...
2021-03-21
0
340
NC14526 购物
来自专栏
dp[i][j]的状态为前i天,买了j个糖果的最小花费题目说每天最少要有一个糖果吃,那么第i天最少要有i个糖果,最多要有min(n,im),n为天数,im为当天生产的糖果总数,那么dp[i][j]=min(dp[i][j],dp[i-1][k]+C) k>=i-1,j>=i含义就是如果当...
2021-03-20
0
359
NC16664 合唱队形
来自专栏
从左往右求最长上升子序列,在从右往左求最长上升子序列。 #include <iostream> #include <vector> #include <algorithm> using namespace std; const int maxn = 105; in...
2021-03-06
0
307
NC14701 取数游戏2
来自专栏
dp[i][j]表示左边去了i个数,右边取j个数时所获得最大值 #include <iostream> using namespace std; const int maxn = 1005; int dp[maxn][maxn]; int main() { int t; ...
2021-03-05
0
370
NC16615 传纸条
来自专栏
错误思路:一开始想着用贪心,小渊每次都传给好感度最大的同学,并标记这个同学,小轩传递的时候就传递给没传递过的同学中的最大值,如果这样走的话可能会导致有些只比小渊传给的同学的好感度低一点点的同学,在小轩传递的时候并不能传递到。可以看一下这个样例3 30 72 3880 69 6568 96 0小渊走的...
2021-03-05
0
400
NC51216 花店橱窗
来自专栏
记录一个坑点,不能用注释里的代码求最大值,因为如果n多花放完价值和为负数,但n-1朵放完价值和为正数,那么ans保留的就是n-1朵的答案 #include <iostream> #include <algorithm> #include <vector> usin...
2021-03-02
0
342
POJ1163 The Triangle
来自专栏
当前这个点可以由它的左上方的点和正上方的点走到dp[i][j]的含义是走到[i,j]这个点的最大值所以状态转移方程就是 dp[i][j] = max(dp[i - 1][j], dp[i - 1][j - 1]) + nums[i][j]; #include <iostream> u...
2021-03-02
0
342
首页
上一页
1
2
3
4
5
6
下一页
末页