蓝桥杯
不努力的人不配得到幸福
要么出众 要么出局
展开
-
各种常见算法比较
1.插入排序(Insertion Sort)插入排序其实就是借助这样的思想,首先我们将数组中的数据分为两个区间,一个是已排序区间,另一个是未排序区间,同时这两个区间都是动态的。开始时,假设最左侧的元素已被排序,即为已排序区间,每一次将未排序区间的首个数据放入排序好的区间中,直达未排序空间为空。#include<iostream>#include<vector>using namespace std;void InsertionSort(vector<int.原创 2020-06-14 15:17:08 · 2290 阅读 · 0 评论 -
模拟线段树区间更新
已知该游戏共有 n 个服务器(编号从1开始),游戏公司总共添加了 m 次机器人。每次添加用三个整数l,r,x表示:从第 l 个服务器到第 r 个服务器每个服务器均添加 x 个机器人。请问最终每个服务器中分别有多少个机器人。第一行输入两个整数n , m ( 1 <= n , m <= 100000)接下来m行,每行输入三个整数l , r , x 。( 1 <= l <...原创 2018-11-19 16:48:11 · 123 阅读 · 0 评论 -
欧拉筛法求素数o(n)
/*求小于等于n的素数的个数*/#include<stdio.h>#include<string.h>using namespace std;int main(){ int n, cnt = 0; int prime[100001];//存素数 bool vis[100001];//保证不做素数的倍数 scanf("%d", &...原创 2018-11-16 18:29:44 · 603 阅读 · 0 评论 -
pair_map的使用
#include&lt;utility&gt;#include&lt;iostream&gt;#include&lt;cstdio&gt;#include&lt;string&gt;#include&lt;map&gt;using namespace std;int main(){ map&lt;s原创 2018-11-13 22:00:05 · 180 阅读 · 0 评论 -
G - Minimax Gym - 101972G
很明显不能在边界选择)原创 2018-11-29 20:39:20 · 217 阅读 · 0 评论 -
博弈基础
奇异局势:是指任何一个人面对这种局势,最后都会失败。非奇异局势:是指任何一个人面对这种局势,最后都会成功。为了方便理解,我用必败态和必胜态来代替:1.对必胜态的正确操作,会使对手面对失败态;2.对必败态的任意操作,都会使对手面对必胜态;3.不同的必胜态存在一些相同之处(同样的,不同的失败态也存在一些共性)。4.如果有甲乙两人,如果甲一开始面对的是必胜态,那么甲在这个过程一直面对的都是必...原创 2018-11-08 21:09:29 · 188 阅读 · 0 评论 -
思维
题意:有一个矩形的地方左下角坐标(0,0),右上角坐标(R,R),里面有N个绿洲,每个绿洲给出左下角坐标(L,T)宽W高H,把这块地以x=n(整数)分成两部分需要满足两个要求1.左边与右边的绿洲面积差最小。2.在满足1的条件下,让左边的面积尽量大输出分割的坐标n思路:把矩形分成宽为1的单位矩形,算出每个矩形的绿洲面积,从左边找到左边面积大于等于总面积一半的位置 再向后找,如果面积不变...原创 2018-11-08 18:59:57 · 118 阅读 · 0 评论 -
变形最短路
E - Jumping Gym - 101147E原创 2018-11-05 17:19:04 · 144 阅读 · 0 评论 -
STL
set不重复集合set<int> st;st.insert(x);set<int>::iterator it=st.begin();it!=st.end();it++cout<<(*it)st.size()map(map.count()可以判断有无)#include<iostream>#include<algorith...原创 2020-04-06 20:47:31 · 147 阅读 · 0 评论 -
快速幂讲解
首先,快速幂的目的就是做到快速求幂,假设我们要求a^b,按照朴素算法就是把a连乘b次,这样一来时间复杂度是O(b)也即是O(n)级别,快速幂能做到O(logn),快了好多好多。它的原理如下:假设我们要求ab,那么其实b是可以拆成二进制的,该二进制数第i位的权为2(i-1),例如当b==11时a11=a(20+21+2^3) 11的二进制是1011,11 = 2³×1 + 2²×0 + 2¹...原创 2020-04-06 10:51:58 · 195 阅读 · 0 评论 -
数据结构零碎做题知识
不重复 set集合set<int>st;for(int i=1;i<=m;i++) { cin>>x; st.insert(x); } int sz=st.size(); for(set<int>::iterator it=st.begin();it!=st.end();it++){ cout<<(*it); sz-...原创 2020-03-29 20:03:40 · 171 阅读 · 0 评论 -
k倍区间
标题: k倍区间给定一个长度为N的数列,A1, A2, … AN,如果其中一段连续的子序列Ai, Ai+1, … Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。你能求出数列中总共有多少个K倍区间吗?输入第一行包含两个整数N和K。(1 <= N, K <= 100000)以下N行每行包含一个整数Ai。(1 <= Ai <= 100...原创 2020-02-20 10:54:45 · 159 阅读 · 0 评论 -
方格分割
6x6的方格,沿着格子的边线剪开成两部分。要求这两部分的形状完全相同。如图:p1.png, p2.png, p3.png 就是可行的分割法。试计算:包括这3种分法在内,一共有多少种不同的分割方法。注意:旋转对称的属于同一种分割法。解题思路:每一种对称分割,都必然经过正中间的点,关于这个点对称,即(3, 3),以该点为起点,像两个相反方向搜索,直到走到正方形边缘,搜索过程中保证两条...原创 2020-02-19 11:00:13 · 139 阅读 · 0 评论 -
承压计算
X星球的高科技实验室中整齐地堆放着某批珍贵金属原料。每块金属原料的外形、尺寸完全一致,但重量不同。金属材料被严格地堆放成金字塔形。 7 5 8 7 8 8 9 2 7 2 ...原创 2020-02-17 17:23:36 · 148 阅读 · 0 评论 -
包子凑数
题目描述小明几乎每天早晨都会在一家包子铺吃早餐。他发现这家包子铺有N种蒸笼,其中第i种蒸笼恰好能放Ai个包子。每种蒸笼都有非常多笼,可以认为是无限笼。每当有顾客想买X个包子,卖包子的大叔就会迅速选出若干笼包子来,使得这若干笼中恰好一共有X个包子。比如一共有3种蒸笼,分别能放3、4和5个包子。当顾客想买11个包子时,大叔就会选2笼3个的再加1笼5个的(也可能选出1笼3个的再加2笼4个的)。当然...原创 2020-02-17 16:35:41 · 188 阅读 · 0 评论 -
背包问题
一.01背包有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。求解将哪些物品装入背包可使价值总和最大。f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。状态转移方程:f[i][v]=max{ f[i-1][v] , f[i-1][v-c[i]]+w[i] }将前i件物品放入容量为v的背包中”这个子问题,若只考虑第i件物品的策略(放或不放),那...原创 2020-02-17 16:02:12 · 166 阅读 · 0 评论 -
分巧克力
## 分巧克力题目描述儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足:形状是正方形,边长是整数大小相同例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。当然小朋友们都希望得到...原创 2020-02-17 10:49:03 · 117 阅读 · 0 评论 -
中奖计算
题目:中奖计算某抽奖活动的规则是:每位参与者在纸上写下一个8位数的号码。最后通过摇奖的办法随机产生一个8位数字。参与者写下的数字中最多有多少个连续位与开奖号码中的相同,则称为中了几个号。例如:小张写的数字是:12345678,而开奖号码是:42347856。则称小张中了3个号,因为其中最长的相同连续位是:“234”。如果小张写的是:87654321,则他只中了一个号。下面的代码根据传入的参数...原创 2020-02-15 11:04:06 · 351 阅读 · 0 评论 -
国王的烦恼
题目描述C国由n个小岛组成,为了方便小岛之间联络,C国在小岛间建立了m座大桥,每座大桥连接两座小岛。两个小岛间可能存在多座桥连接。然而,由于海水冲刷,有一些大桥面临着不能使用的危险。如果两个小岛间的所有大桥都不能使用,则这两座小岛就不能直接到达了。然而,只要这两座小岛的居民能通过其他的桥或者其他的小岛互相到达,他们就会安然无事。但是,如果前一天两个小岛之间还有方法可以到达,后一天却不能到达了,...原创 2020-02-15 10:02:06 · 196 阅读 · 0 评论 -
蓝桥杯题型总结
https://blog.csdn.net/weixin_39903708/article/details/103753061转载 2020-02-14 09:48:10 · 2218 阅读 · 0 评论 -
质数有多少个
用 0,1,2,3⋯7 这 8个数组成的所有整数中,质数有多少个(每个数字必须用到且只能用一次)。提示:以 0 开始的数字是非法数字分析:每个数字必须用到且用到一次,很自然想到了0-7的全排列,这里比较特殊的是第一位不能为0,判断一下即可。答案:2668#include<iostream>#include<algorithm>#include<math.h...原创 2020-02-13 20:47:39 · 910 阅读 · 0 评论 -
最长上升子序列-DP
LIS是最长上升子序列。什么是最长上升子序列? 就是给你一个序列,请你在其中求出一段最长严格上升的部分,它不一定要连续。就像这样:2, 3, 4, 7 和 2, 3, 4, 6 就是序列 2 5 3 4 1 7 6 的两个上升子序列,最长的长度是 4。 #include<stdio.h>#include<stdlib.h>#include<string.h&g...原创 2020-02-13 20:03:33 · 130 阅读 · 0 评论 -
进制转换
十进制转换十六进制和八进制十进制整数,格式限定符%o可以以8进制进行输出,%X/%x可以以16进制进行输出,大写X表示使用大写字母,小写x表示使用小写字母。使用%#o,%#X,%#x,得到的输出将包括前缀0,0X,0x#include <stdio.h>int main(){ int n; scanf("%d",&n); printf("%X",n)...原创 2020-02-13 17:40:36 · 168 阅读 · 0 评论 -
第39级台阶
第39级台阶小明刚刚看完电影《第39级台阶》,离开电影院的时候,他数了数礼堂前的台阶数,恰好是39级!站在台阶前,他突然又想着一个问题:如果我每一步只能迈上1个或2个台阶。先迈左脚,然后左右交替,最后一步是迈右脚,也就是说一共要走偶数步。那么,上完39级台阶,有多少种不同的上法呢?请你利用计算机的优势,帮助小明寻找答案。————————————————版权声明:本文为CSDN博主「Le...原创 2020-02-13 17:29:07 · 325 阅读 · 0 评论 -
未名湖边的烦恼-递归
未名湖边的烦恼问题描述 每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。 每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求的人(比如都是租鞋或都是还鞋)交换位置是同一种排法)输入格式 两个整数,表示m和n...原创 2020-02-12 21:31:23 · 220 阅读 · 0 评论