自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 [线性dp] hdu6806 Equal Sentences

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6806题意:两个单词能左右交换,求最多有多少个不同的字符串思路dp 但要注意:dp[0]=1、字母相等时的问题代码#include<bits/stdc++.h> using namespace std;const int mod=1e9+7;int dp[100010];string s[100010];int main(){ int t; cin>>t;

2020-07-31 18:04:07 152

原创 2020牛客多校 第五场 E-Bogo Sort

题目题目链接:https://ac.nowcoder.com/acm/contest/5670/E思路群论+大整数乘法求循环节的lcm即可代码#include<bits/stdc++.h>using namespace std;#define int long long#define ll long longint a[100010],cnt[100010],prime[100010],N=100000,primenum[100010];bool vis[100100],v

2020-07-31 14:05:02 107

原创 [群论 置换群] POJ 2369

题目题意:将一个序列变换为1-n求最少需要变换多少次题目链接:http://poj.org/problem?id=2369思路只需要求出所有循环节长度,取所有循环节的最小公倍数即可代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostrea

2020-07-30 18:01:16 148

原创 2020牛客多校 第五场 F DPS

题目代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#include<queue>#include<stack>

2020-07-30 16:01:23 140

原创 [最长上升子序列]2020牛客多校第五场 D-Drop Voicing

题目题目链接:https://ac.nowcoder.com/acm/contest/5670/D思路先把p变成一个环形序列,画图可发现 两个操作合在一起就是把序列里面任意一个数换从其他地方插入 我们只需要求出最多有多少个不用进行变换所以将1-n分别作为开头 计算后n个里面的最长上升子序列 找出最大的结果 n-maxn即可AC代码#include<cstdio>#include<cstring>#include<cmath>#include<cs

2020-07-30 15:21:11 139

原创 2020牛客多校 第五场 I.Hard Math Problem

题目题目链接:https://ac.nowcoder.com/acm/contest/5670/I题目大意:在一个nm的放个上放HEG三个物品,H必须至少挨着一个E和一个G,求n、m趋近无穷时 H/nm的最大值思路开始我想的方法是:HEHEHGHGHGHEHEHGHGHG这样怎么算都是1/2正解:GHHGHHHHEHHEHGHHGHGHHEHH由于图是无限延展,所有的H都能成立这一块一共有24个方格,H有16个 16/24= 2/3代码cout<<"0.

2020-07-29 22:31:29 107

原创 2020牛客多校第六场 Grid Coloring

题目https://ac.nowcoder.com/acm/contest/5671/G思路构造题 注意n==1 其他没啥好说的代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string&gt

2020-07-29 21:11:52 124

原创 2020牛客多校第六场 K-Bag

题目题目链接:https://ac.nowcoder.com/acm/contest/5671/K思路先枚举起点 注意起点要0~k-1把每个下标对应的起点标记起来滑动窗口每次取K个判定代码#include<bits/stdc++.h>using namespace std;#define int long long#define ll long longint a[5000100],cnt[5000100];bool vis[5000100]; unordered_m

2020-07-29 00:32:50 879

原创 2020牛客多校第四场H-Hard Gcd Problem

题目题目链接:https://ac.nowcoder.com/acm/contest/5669/H思路找到每个数的质因数 按质因数相同的归类代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<st

2020-07-26 23:57:02 196

原创 2020暑假多校 Finding the Order

题目思路多画几遍 找最长边即可

2020-07-26 19:26:16 81

原创 牛客第四场 Basic Gcd Problem

题目题目链接:https://ac.nowcoder.com/acm/contest/5669/B思路这道题其实就是求这个数分解因数最大能分解几次当时过的时候怕T 做了许多预处理 想复杂度 没下过到暴力就能过QWQ暴力算法:#include<bits/stdc++.h>#define ll long long//#define int long longusing namespace std;//const int INF = 0x3f3f3f3f;const int

2020-07-26 13:38:24 160

原创 [斐波那契幂和+二次剩余]2020hdu多校 6755 Fibonacci Sum

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6755思路前置知识:斐波那契的幂和该博客是对F1^k ~ Fn^k 的和的讲解 谢谢大佬该题具体思路:大佬博客斐波那契的幂和可以化为二项式相加用二次剩余求出sqrt(5) 计算出a,b的值预处理组合数需要的阶乘与逆元 、a、b的次方欧拉降幂优化最后运用推出的来的公式算出来就好了代码#include<bits/stdc++.h>#define int long long

2020-07-26 12:06:14 788 2

原创 cf 1379A

题目https://codeforces.ml/contest/1379晚安代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#inclu

2020-07-24 02:15:31 750

原创 [01背包] cf 1382 D. Unmerge

题目不想解释题目 累了题目链接:https://codeforces.ml/contest/1382/problem/D思路每一个数字(a[i]) 找到它后面第一个大于它的数字(a[j])则[i~j-1]一定在一起 将其存为一个小块 把全部都分成一个小块然后01背包就好了代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctyp

2020-07-22 22:18:16 303

原创 [扩展欧拉函数] 牛客2020多校第三场 F.Fraction Construction Problem

题目已知ab 求出符合条件的cdef思路先想想a/b是不是最简形式如果gcd(a,b)!= 1则可令c/d=a2/b2+1 e/f=1即 c=(a+b)/gcd(a,b) d=b/gcd(a,b) e=1,f=1如果gcd(a,b)==1则(cf-ed)/df=a/b令df=b cf-ed=a如果知道df 则ce可根据扩展欧几里得求出那么df最好是互质的先令d为b的一个质因子 然后求出f (详见代码)最后根据exgcd计算出ce代码#include<cstdio&g

2020-07-22 20:40:00 193

原创 2020hdu多校 1004Distinct Sub-palindromes

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6754思路只要有ababababa这种形式一定会有子回文串 且子回文串长度为n 要打破这种局面 就只有abcabcabc所以分类讨论即可代码#include<bits/stdc++.h>#define ll long long#define int long longusing namespace std;const int INF = 0x3f3f3f3f;const i

2020-07-21 22:05:19 281

原创 [拓扑排序] cf 1385E. Directing Edges

题目题目链接:https://codeforces.ml/contest/1385/problem/E题目大意:一个图有有向边也有无向边,求如果给无向边加上方向是否有环。如果没有输出加上方向后的所有边,如果有输出NO思路可以先对所有有向边拓扑排序一次,求出所有点拓扑的顺序。如果最后还剩有入度不为0的点 则有环。然后对所有无向边的点 比较他们的拓扑序 令其方向为:拓扑顺序小 ->拓扑顺序大因为这样拓扑顺序小的点入度不会被影响 而且在这个点被读过后 拓扑顺序大的点入度也不会被影响代码#

2020-07-19 00:12:30 448

原创 [dfs] cf 1385

题目题目链接:https://codeforces.ml/contest/1385/problem/D思路dfs找出所有情况自闭了 想复杂了 写了一个小时的假算法 我怎么这么菜呜呜呜代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostre

2020-07-18 01:28:04 931

原创 [扩展欧几里得] POJ2142The Balance

题目有两种砝码a,b,要用ab称出c的质量,计算ab的最少个数题目链接:http://poj.org/problem?id=2142思路还没学LaTeX代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#includ

2020-07-17 22:27:55 793

原创 [扩展欧几里得板子] cf 7C line

题目求AX+BY=C的x,y,若无解,输出-1题目链接:https://codeforces.com/contest/7/problem/C代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<strin

2020-07-17 00:40:57 1479

原创 [扩展欧几里得]luoguP1516青蛙的约会

题目题目链接:https://www.luogu.com.cn/problem/P1516思路好麻烦啊不想写呜呜呜数论怎么这么麻烦代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string&g

2020-07-16 23:20:35 140

原创 [求逆元板子题] hdu 1576

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1576代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include&lt

2020-07-16 17:15:21 183

原创 [快速幂板子] hdu 1061

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1061代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<

2020-07-16 16:20:03 113 1

原创 [费马小定理+组合数] hdu 4704

题目S(k)是x1+x2+…+xk=N的组合数 (重复的组合数,即:1+2+1=4 和 1+1+2=4 属于不同的方案数)求(S(1)+S(2)+…+S(N))mod 10^9的个数题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4704思路求解S(k): 将整数m拆分为n个数字的有序拆分方案数为C(m-1,n-1)隔板法理解: 把N分成一份的分法数为C(0,n-1), 把N分

2020-07-16 01:59:59 232 1

原创 [快速幂板子] hdu2817

题目代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#include<queue>#include<stack>

2020-07-16 00:03:01 146

原创 [bfs+位运算] 牛客周周练15C璀璨光滑

题目题目链接:https://ac.nowcoder.com/acm/contest/6290/C思路1号点一定是数字0。可以发现,图上的数字中1的个数其实就是道1号点的最短路。然后从0开始bfs,先随便分配一个解。把解求出来之后,可以按位进行排序,排出最小解代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#i

2020-07-15 19:35:41 198

原创 牛客算法周周练15 E.算式子

题目题目链接:https://ac.nowcoder.com/acm/contest/6290/E思路先分析一下,如果 ai > x,那么 [x/ai] = 0反之 若ai < x,[ai/x] = 0当 x<ai 时 在一段区域内[a[i]/x]的值k不变,因此枚举x,再在里面枚举k,记录这一段对应的增加值。ans[i]为x=i时在此处的公式值。当x>ai 时 在一段区域内[x/a[i]]的值也不变,由此枚举a[i],再在里面枚举k,ans[i]的增加量为这一区间a

2020-07-15 00:37:18 246

原创 [完全背包板子] hdu1114

题目题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114求一定容量下最小值代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#i

2020-07-14 01:15:47 922 2

原创 [dfs+bfs] hdu 1428

题目思路先用bfs求出所有点到终点的距离,存下来。再用dfs记忆化算出有多少点的到重点的距离小于这个点代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include&lt

2020-07-12 17:01:52 200

原创 [二维完全背包] hdu2159 FATE

题目思路如果没有杀怪数,这个就是一个完全背包 加上杀怪数的话多一个维度即可代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#inclu

2020-07-12 15:44:56 222

原创 [01背包] hdu 2546饭卡

题目代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#include<queue>#include<stack>

2020-07-12 15:15:06 220

原创 [前缀和dp] CF1372D. Omkar and Circle

题目n个数字组成一个环,每次选择一个数字将其相邻的两个值赋给他,然后删除相邻的值,这样操作只剩一个值,求这个值的最大值。思路一共有n个数,且n为奇数,即一共删除n/2个数,留下n/2+1个数且删除的数皆不相邻。即求删除的数的和的最小值。由于有n/2+1个数不被删除,一定有两个不被删除的数是相邻的,我们就枚举这两个数的位置。设相邻两个数的后一个数下标为idp[i][0]为i前下标为偶数的前缀和dp[i][1]为i前下表为奇数的前缀和数列转移方程1 2 3 4 5 6 7

2020-07-12 14:52:29 1105

原创 [带限制的01背包 排序] hdu3466

题目有n个商品,购买它的价格为pi,需要购买者余额大于等于qi才能购买,卖出的获利为vi。一个人有m块钱,求他的最大获利题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3466题目如果没有购买条件限制,这道题就是一个01背包。所以我们来处理限制。只有保证 dp[j - a[i].p] 最优,才能保证 dp[j] 最优,满足无后效性。若想使 dp[j - a[i].p] 最优,即要保证对于任意两组值:( p1, q1, v1 、( p2, q2, v

2020-07-12 01:43:04 420

原创 [负数01背包] poj2184

题目一个牛牛有两种属性,有n个牛牛。要让选出的牛牛两种属性之和最大并且分开的属性都不为0,求属性之和最大值思路有负数->将负数变成正数开始想过用二维费用 但是牛牛的属性上线未知 容易T可以将牛牛的一个属性最大值设为N,dp[N]-dp[1]即为这个属性为x时另外一个属性的值,同时设置dp[mid]=0。总属性为dp[n]+n-mid代码#include<cstdio>#include<cstring>#include<cmath>#include

2020-07-11 01:52:09 549

原创 [二维费用背包] 牛客 6218/C 牛妹的春游

题目思路面包和饮料作为两种价值,求其分配最小值,就是二位费用背包问题。但是这里要注意面包和饮料是可以超过所求值也可能小于所求值的 就要做些改动代码class Solution {public: /** * * @param breadNum int整型 * @param beverageNum int整型 * @param packageSum int整型vector<vector<>> 每个一维数组中有三个数,依次表示这个

2020-07-10 01:13:29 194

原创 [01背包] hdu1171

题目有一个数组,要把他们分成两堆使其差值最小,求两堆的val思路呜呜呜居然是01背包,求dp[sum/2]就好了代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#includ

2020-07-10 00:39:29 661

原创 [线性dp] hdu1069

题目有多个立方体长宽高为x,y,z,可以重复使用,用来叠高高。但是每次叠的下面一个必须严格大于上面一个。求能堆到的最高的高度题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1069思路固定两条边,第三条边就是加上的高。所以一个立方体对应有六种摆放方式,把所有的摆放方式保存起来,按从大到小sort一遍。每次最高的值就是要找它下面的立方体最高的值加上它本身代码#include<cstdio>#include<cstring>#

2020-07-09 21:54:51 181

原创 [dp] hdu 2859

题目看看最多有多长的关于对角线对称的矩阵长度http://acm.hdu.edu.cn/showproblem.php?pid=2859思路从左下往右上dp代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#includ

2020-07-09 01:40:00 376

原创 [最大上升子序列和] hdu1807

题目找最大上升子序列 题目数列长度为1000题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1087代码很容易想到On^2的算法#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#

2020-07-08 22:53:49 232

原创 [最大子段和] hdu1003

题目计算出一个数列内的最大字段和代码#include<cstdio>#include<cstring>#include<cmath>#include<cstdlib>#include<cctype>#include<ctime>#include<iostream>#include<string>#include<map>#include<queue>#includ

2020-07-08 21:37:08 162

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除