ACM
candicecyj
想变成白天鹅的小鸭子~
展开
-
csp201909-1
#include <cstdio> #include <iostream> #include <cmath> #include <algorithm> using namespace std; int main() { int n, m, max = -1, ans1 = 0, k = 0; int guo1, guo2...原创 2019-12-01 11:39:51 · 249 阅读 · 0 评论 -
公式小可爱们
公式1 1^2+2 ^2…+ n ^2=n(n+1)(2n+1)/6;公式2 1+2+3+…+n=n(n+1)/2;原创 2020-03-30 08:43:47 · 97 阅读 · 0 评论 -
算法模板(更新中)
1.快速幂3^1000000=?3^1=33^2=93^4(2 ^ 2)=3^8(2 ^ 3)=思路:1000000可以用多少个2的次幂凑出来,把o(n)复杂度降为o(logn)int qmi(int a, int b, int p) a的b次幂模p{ int res = 1 % p;//答案 while (b){ if (b & 1) res = res * ...原创 2019-10-07 20:08:46 · 118 阅读 · 0 评论 -
C++ STL用法学习
STL用法学习一、sort排序二、字符串string1.简单使用2.获取一行数据例如hello world3.+=运算符4.字符串相关排序5.erase函数6.substr函数7.循环方式for循环 +auto三、vector用法四、stack用法&字符串和数字转换五、queue用法六、map用法七、set用法八、dequeue用法九、list用法十、文档一、sort排序//STL学习...原创 2020-01-11 17:08:12 · 161 阅读 · 0 评论 -
2017年第八届蓝桥杯
#include <cstdio>#include <algorithm>#include <cmath>#include <iostream>#include <algorithm>using namespace std;string map[12];bool vis[12][12];int ans;void df...原创 2020-01-05 13:11:46 · 86 阅读 · 0 评论 -
第九届蓝桥杯试题+题解汇总c/c++ A组(部分)
1.分数1/1 + 1/2 + 1/4 + 1/8 + 1/16 + …每项是前一项的一半,如果一共有20项,求这个和是多少,结果用分数表示出来。类似:3/2当然,这只是加了前2项而已。分子分母要求互质。注意:需要提交的是已经约分过的分数,中间任何位置不能含有空格。用等比求和公式,Sn=a1(1-q^n)/(1-q)结果是1048575/524288,不放心的话就再来个__gcd(...原创 2019-03-12 20:51:35 · 2116 阅读 · 1 评论 -
第三届蓝桥杯试题与题解总结
第三届注:题目顺序可能有偏差1.古堡算式 穷举: 填空题,不论代码如何出来答案就好,a,b,c,d,e,x枚举即可福尔摩斯到某古堡探险,看到门上写着一个奇怪的算式:ABCDE * ? = EDCBA他对华生说:“ABCDE应该代表不同的数字,问号也代表某个数字!”华生:“我猜也是!”于是,两人沉默了好久,还是没有算出合适的结果来。请你利用计算机的优势,找到破解的答案。把 ABCD...原创 2019-02-17 19:36:33 · 577 阅读 · 0 评论 -
字符串专题练习-P1957 口算练习题
题目传动门解决几个点,这个问题就算解决了输入求长度字母转数字(负数负数负数)还有一个就是别自己加戏(比如我就习惯性的多输入了很多空格)#include <cstdio>#include <iostream>#include <algorithm>#include <cstring>#include <stack>#i...原创 2020-03-30 16:16:53 · 211 阅读 · 0 评论 -
c/c++中size()、sizeof()、strlen()、length(),vector
1.sizeof()一个运算符,获取类型原型所占用的字节长度用法sizeof(对象)sizeof(类型)2.strlen()计算字符串长度的函数char a[] = “red”;strlen(a) = 6;3.size()与length()均为string类的成员函数string a = “red”a.size() = 6;a.length() = 6;其中length...原创 2020-03-30 14:41:01 · 2325 阅读 · 0 评论 -
背包问题
背包九讲原创 2020-01-05 13:12:36 · 153 阅读 · 0 评论 -
神奇的位运算
运算优先级判断第i位是不是1举个栗子从 1~3这 n3个整数中随机选取任意多个,输出所有可能的选择方案(升序排列)。所有答案为state 输出001 代表输出1010 代表输出2011 代表输出1 2100 代表输出3101 代表输出1 3110 代表输出 2 3111 代表输出 1 2 3那么问题来了?怎么判断什么时候该输出呢,大家看上面的输出...原创 2019-10-09 21:22:25 · 107 阅读 · 0 评论 -
1.队列
队列的基本操作queue<int>s;队列是先入先出 FIRST IN FIRST OUTs.push(yarudeyuansu)压入队列s.size()目前队列元素的个数s.front()目前队列的队首元素s.back()目前队列的队尾元素s.empty()判断队列是不是空,空的话返回true(1)不空的话返回false(或者0)s.pop()去掉队中...原创 2018-04-07 01:52:44 · 165 阅读 · 0 评论 -
2.stack
1.先说说stack吧栈只支持栈顶操作,典型的先入先出,LAST I N FIRST OUTstack<int>s;基本操作是s.push(压入的元素)s.size()栈元素个数 s.pop();弹出栈顶元素s.top()返回栈顶元素s.empty()栈为空时则返回真#include<cstdio>...原创 2018-04-07 01:56:00 · 120 阅读 · 0 评论 -
数据结构-堆
这里写了堆排序第一行读入一个数字n代表一共n个数接下来输入n个数字输出为从小到大#include<cstdio>using namespace std;int h[101];//用来存放堆的数组int n;//用来存储堆中的元素的个数,也就是堆的大小//交换函数,用来交换堆中两个元素的值void swap(int x,int y){ int t; ...原创 2018-10-16 16:24:27 · 95 阅读 · 0 评论 -
STL--优先队列
STL中优先队列的使用基本操作priority_queue<int, vector<int>, greater<int> > q;q.push(x);加入一个元素q.pop();删除队列首元素q.top();返回优先队列首元素q.size();返回元素个数//默认为最大优先队列//priority_queue<...原创 2018-10-16 17:05:52 · 137 阅读 · 0 评论 -
传值&传引用&传指针
刚学c时学的传值和传引用,传指针忘得差不多了,再写一遍,复习一下1.传值#include<cstdio>#include<cstring>#include<string>#include<iostream>using namespace std;void sp(int a,int b){ int t=a; a=b;...原创 2018-05-06 00:22:08 · 215 阅读 · 1 评论 -
洛谷P1403 [AHOI2005]约数研究 暴力或者稍微用用筛法
P1403 [AHOI2005约数研究 暴力或者稍微用用筛法]//法一,直接上暴力 /*#include<cstdio>#include<iostream>using namespace std;int main(){ int n,sum; scanf("%d",&n); for(int i=1;i<=n;i++) { sum+=...原创 2018-11-27 18:26:52 · 260 阅读 · 0 评论 -
洛谷 P1088 火星人 用了stl里面的函数
** P1088 火星人**next_permutation()//用了stl里面的库函数 #include<cstdio>#include<algorithm>using namespace std;int main(){ int n,m;//分别代表手指数和要加的数 scanf("%d%d",&n,&m); int dit[10005...原创 2018-11-27 13:41:15 · 177 阅读 · 0 评论 -
p1498南蛮图腾 谢尔宾斯基三角形 分形
p1498南蛮图腾 谢尔宾斯基三角形//规律就是以最小图腾为基本单位,//先向右复制一个,再向上复制一个//比如第一个就是这样组成一个小三角形,第二个就是这样组成了一个大三角形/* 第一个图形倒着存入 /\ /__\ /__\ /\*/ #include<cstdio>#include<...原创 2018-11-26 21:03:08 · 329 阅读 · 0 评论 -
P1464 Function洛谷
题目链接洛谷p1464https://www.luogu.org/problemnew/show/P1464题解:记忆化搜索//题目给的数据范围很大,而且后面告诉调用的次数非常多,要想个办法,在//题目的末尾也给出提示了说要记忆化搜索,//记忆化搜索其实就是在原来搜索的基础上找个数组存储一下//所以数组开多大是个问题 #include<cstdio>using ...原创 2018-10-08 20:33:07 · 256 阅读 · 0 评论 -
洛谷p1014cantor
洛谷p1014cantor蛇形数找规律找规律模拟就好,八皇后有一个对角线规律这里也可以用一下,(x+y)分奇偶//一开始没明白题目啥意思//其实也很简单就是个蛇形数找规律// 1/1(1) , 1/2(2) , 1/3(6) , 1/4(7), 1/5, …//2/1(3), 2/2(5) , 2/3(8), 2/4, …//3/1 (4), 3/2(9), 3/3, …...原创 2018-10-08 21:39:40 · 141 阅读 · 0 评论 -
洛谷 P1605 迷宫 dfs+回溯
洛谷 P1605 迷宫 dfs+回溯题目链接属于走迷宫中比较基础的代码如下//dfs+回溯 #include<cstdio>#include<iostream>#include<algorithm>using namespace std;int sx,sy,fx,fy,zx,zy;//zxzy分别代表障碍的起点和终点 int n,m,t;...原创 2018-10-18 21:26:02 · 320 阅读 · 0 评论 -
洛谷p1090--合并果子 贪心
洛谷p1090合并果子用了优先队列,会比较简单点/*解析,1 2 891+2=3新堆,花力气为3 新堆3入队 3+8=11新堆,花力气为11所以花的总力气为11+3=14 */ #include<cstdio>#include<queue>using namespace std;int main(){ int n,guo,sum=0;//...原创 2018-10-16 17:32:14 · 382 阅读 · 0 评论 -
洛谷p1181--贪心 数列分段Section I
能找到就并,找不到就自己成为一段洛谷p1181数列分段#include<cstdio>using namespace std;int main(){ int n,m,shu,sum=0,ans=1;//它的初始值应该为1 ,因为一定有一段 scanf("%d%d",&n,&m); //n代表数列的长度m代表每段的最大值 //ans代表分段数 ,...原创 2018-10-16 18:16:28 · 217 阅读 · 0 评论 -
洛谷 P1208 [USACO1.3]混合牛奶 Mixing Milk 贪心
洛谷p1208混合牛奶总体来说比较简单,用了结构体,再用一下sort排序,将价格从小到大排注意临界问题,可能还需要购买的数量会<=下一个coun #include<cstdio>#include<algorithm>using namespace std;int n,m;//n代表需要牛奶的总数,m代表提供牛奶的农民个数 struct mil...原创 2018-10-16 21:02:10 · 163 阅读 · 0 评论 -
p1223排队接水 贪心
和上一题混合牛奶类似,这题我用的结构体里面加一个变量记录order题目链接如下洛谷p1223排队接水思路有了就很简单#include<cstdio>#include<algorithm>using namespace std;struct water{ int ord;//其实就是下标 int time;//打水所需要的时间 }wat[10...原创 2018-10-16 21:51:30 · 356 阅读 · 0 评论 -
洛谷P1307 数字反转
洛谷p1307数字反转这道题注意反转数字时的逆过程while(n!=0){ m=n%10;n/=10;}while(n!=0){dig=n%10;cou=cou*10+dig;n/=10;}#include<cstdio>#include<cstring>using namespace std;int main(...原创 2018-10-10 20:54:33 · 215 阅读 · 0 评论 -
洛谷P1003 铺地毯
简单模拟,有个小技巧就是倒着查洛谷p1003铺地毯模拟不过有一点不是很懂,就是为什么scanf就mle,cin就可以了//不是很懂为什么不能用scanf读入只能用cin//scanf读入直接mle了,但是cin就可以 #include<cstdio>#include<cstring>#include<iostream>using name...原创 2018-10-10 22:03:48 · 142 阅读 · 0 评论 -
洛谷P1094 纪念品分组 贪心
洛谷P1094 纪念品分组 贪心比较简单,用了sort,选一大一小题目链接如下洛谷P1094 纪念品分组代码如下//用sort排序,一大一小加起来组就会最少 #include<cstdio>#include<algorithm>using namespace std;bool com(int a,int b){ return a<b;}in...原创 2018-10-17 16:34:33 · 255 阅读 · 0 评论 -
P1803 凌乱的yyy / 线段覆盖 贪心
P1803 凌乱的yyy / 线段覆盖 贪心只要结束时间比当前结束时间大,开始比当前晚就贪心++P1803 凌乱的yyy / 线段覆盖题目链接代码如下//其实这道题很简单找一下比当前大的结束时间并且开始的晚 #include<cstdio>#include<algorithm>using namespace std;struct game{ int...原创 2018-10-17 17:16:01 · 280 阅读 · 1 评论 -
洛谷 P1031 均分纸牌 贪心
P1031 均分纸牌 贪心题目链接代码如下//题目只让统计次数,所以变简单了不少//思路就是,先求平均值,然后和平均值一样的不用调整,不一样的要调整//因为是相邻之间调整,所以把前俩相加之和算作下一个,直到0为止,加了几次就调整了几次 //0之后如果还有数就接着加,一样道理 #include<cstdio>using namespace std;int main()...原创 2018-10-17 20:01:23 · 285 阅读 · 0 评论 -
洛谷p1040加分二叉树
题目链接洛谷p1040加分二叉树代码如下用dp也可以做,这里用的dfs//动态规划还没开始练题,就先用dfs+剪枝来写吧 //先序遍历可以用递归快速实现 #include<cstdio>#include<iostream>using namespace std;int jd[10005],grade[1005][10005],root[1005][1000...原创 2018-10-20 20:21:06 · 164 阅读 · 0 评论 -
洛谷p1226【模板】快速幂||取余运算
补充知识点:1.右边空出的位用0填补,高位左移溢出则舍弃该高位。2.左边空出的位用0或者1填补。正数用0填补,负数用1填补。注:不同的环境填补方式可能不同;低位右移溢出则舍弃该位。3.左移相当于2,要注意边界问题。如char a = 65; a&lt;&lt;1 按照2来算为130;但有符号char的取值范围-128~127,已经越界,多超出了3个数值,所以从-128算起的第三个数值-126...原创 2018-11-22 10:11:08 · 272 阅读 · 0 评论 -
洛谷p1010幂次方(分治加递归)
洛谷p1010幂次方(分治加递归)题目链接方法一:分治加递归代码如下#include<cstdio>#include<iostream>const int maxx=50;using namespace std;int number[maxx];//number代表存着2的倍数值的数组 int dfs(int n){ int j=0; if(n!=0...原创 2018-11-22 13:17:27 · 297 阅读 · 0 评论 -
P1908 逆序对 归并排序,分治
P1908 逆序对题目链接知识点补充:划分问题:把序列分成元素个数尽量相等的两半递归求解:把两半元素分别排序合并问题:把两个有序表合并成一个复杂度:nlogn图解:前两部分是很容易完成的,关键在于如何把两个有序表合成一个,每次只需要把两个序列的最小元素加以比较,删除其中的较小元素并加入合并后的新表即可。...原创 2018-11-25 10:21:23 · 179 阅读 · 0 评论 -
洛谷p1219八皇后问题 dfs+回溯
洛谷p1219八皇后问题题目链接代码如下#include<iostream>#include<cstdio>#include<cmath>using namespace std;int h[100],l[100],c[100],d[100];//分别代表行列左下到右上,左下到右上 int sum,n;//sumint print(){ if...原创 2018-10-17 21:36:35 · 395 阅读 · 0 评论