自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 贪心(排序)

这类贪心问题就是找到一个前后关系的等式,然后在化简的时候是一定会把关键变量消去的,就只和这两个元素的性质有关,和前面的所有元素都无关,一般步骤如下:先假定一个前后顺序,将其作为正确的 依照这个顺序列出关系式 化简后的到一个式子 写入cmp,用sort排序 求解下面是3个例题:解法:假定其中的两个元素(机器人)是pq,设下面两个顺序的准确性是这样的:————pq———— ✅ ————qp———— ❌那么:qa(pa*x+b)+qb > pa(qa*x+qb)+pb.

2021-03-13 20:31:19 873

原创 ecjtu-2020训练赛(1)解题报告

文章目录A题 CF1382A Common SubsequenceB题 Sequential NimC题 CF1385A Three Pairwise MaximumsD题 CF1385B Restore the Permutation by MergerE题 CF1388A Captain Flint and Crew RecruitmentF题 CF1388B Captain Flint and a Long VoyageA题 CF1382A Common Subsequence题意:给出两个数字

2021-02-24 11:50:48 306

原创 快速幂

文章目录1.通俗解释2.代码实现最终代码1.通俗解释快速幂就是加快指数运算,一般情况下指数运算的结果都很大,顺便学一下取模运算的一些法则:(a + b) % p = (a % p + b %p) % p (1)(a - b) % p = (a % p - b % p ) % p (2)(a * b) % p = (a % p * b % p) % p (3)下面进入正题举个例子: 314=(32)7=97=91∗96=91∗813=91∗811∗812=91∗811∗65611

2021-02-21 12:38:33 126

原创 并查集

文章目录概念用途例题参考视频概念并查集(union-findset)是一种不算太“低级”的数据结构,在算法竞赛中比较常见。简而言之,它专门用来高效地处理不相交集合(disjointsets)的合并及查询问题。Bernard A. Galler和Michael J. Fischer于1964年提出了并查集的森林表示形式:用一棵(多叉)树来表示一个集合,树中的每个节点都保存着对它的父节点的引用,所有的不相交集合即可形成一个森林,并且每个集合的“代表”就是对应的树的根节点。用途1、维护无向图的连

2021-02-15 12:10:41 143

原创 二分搜索求最小化的最大值、最大化的最小值

如果遇到题目要求最小的最大值或者使得最小值最大化,这个时候一般情况枚举很容易超时,这时我们就可以用二分搜索的思想来解决问题。

2021-02-05 12:57:09 704

原创 线性筛法求素数(埃氏筛法、欧拉筛法)

文章目录1)埃氏筛法2)欧拉筛法总结筛法都是初始化把所有数都先设为素数,然后筛除合数。1)埃氏筛法理解起来比较简单,就是从小到大的枚举每一个数,标记它的所有倍数都是合数(非素数)放到u[ i ]为false,u中的下标对应的就是这个数的值。bool u[MAXN];int num,su[MAXN];// 1. 埃氏筛法void Prime () { for (int i=2; i<=MAXN; i++) u[i]=true; for (int i=2; i<=MAX

2021-01-29 18:32:04 411

原创 DP动态规划

文章目录1. 0-1背包问题1)动态规划法①常见的dp一维数组②不常见的二维数组方法2)分治法2.完全背包问题1. 0-1背包问题1)动态规划法①常见的dp一维数组经典的01背包裸题一般都是这个方法很快敲出来的。#include <iostream>#include <algorithm>#include <stdio.h>using namespace std;int w[35000],d[35000],dp[35000];int main(){

2021-01-28 21:38:26 101

原创 C++ STL的基础运用

以下有些会结合经典题对常用的序列式容器和关联性容器进行简单的介绍1. vector容器vector是序列式容器,相当于动态数组,不用定义大小。记得添加include <vector>常用函数:vector<type> v;定义容器变量v.push_back(type x) 将x加入到vector容器v中v.size()得到容器当前元素个数v.resize(int x)重新定义容器大小为x,超出范围的数据丢去v.clear() 清空容器,size将变成0,但是它.

2021-01-25 22:20:34 580

原创 冬令营第三天

冬令营第三天1.欧几里得辗转相除法求最大公约数只有一行代码,熟悉了很快就能敲出来。int gcd(int a, int b) { return b == 0 ? a : gcd(b, a%b);}重要的是扩展的欧几里得算法!!!扩展的欧几里得算法用于ax+by=GCD(a,b)的x和y求解。1.先看看推导过程:我觉得推导起来还是挺复杂的,如果觉得难理解,把代码背下来吧????2.上代码(????其实不多的)int exgcd(int a,int b, int &x,i

2021-01-20 20:49:03 125

原创 C语言大数相乘(整形)

C语言大数相乘(整形)我们在用C语言运算时int存不下很大的数字无法直接计算大数相乘,那么这时候就需要把数字当作字符先存下来,然后存入数组中一部分一部分的进行运算。我通过-纸短情长大佬的这篇博客理解了大数相乘的基本思路,并引用大佬的代码,但大佬没有讲的很细,我将我自己的理解发表出来以供参考,如有侵权请联系我删除。首先给出这个图,对照这张图方便理解代码下面是代码://大数乘法#inc...

2020-02-20 19:03:03 1761

空空如也

空空如也

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

TA关注的人

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