- 博客(64)
- 收藏
- 关注
原创 蓝桥杯 完美的代价
题目思维题#include <iostream>using namespace std;char st[8005];int main(){ int ch[26]={0}; int n; cin>>n; for(int i=0;i<n;i++){ cin>>st[i]; ch[st[i...
2020-03-13 16:49:47
183
原创 蓝桥杯 阶乘计算
题目题解他是把所有的位数,包括之后的零一起算了进去,避免了最后进位的麻烦,值得学习。#include <iostream>#include <algorithm>#include <cstring>using namespace std;int a[10000];int main(){ int n; cin>>n; ...
2020-02-23 21:57:17
207
原创 蓝桥杯(进制转换)
全部题解详见这里十六进制转八进制#include <iostream>using namespace std;int main(){ int n; cin>>n; for(int i=0;i<n;i++){ string a,b; cin>>a; for(int i=0;i...
2020-02-19 21:03:09
388
原创 洛谷p2524(数论:康托展开)
题解康托展开作用:康托展开的作用是求n个数的全排列中某一个序列在所有排列中的次序(该排列次序(亦称之为排名)以字典序从小到大排序)。公式:X=a[n] [(n-1)!] +a[n-1][(n-2)!]+…+a[1] * [0!]。...
2020-02-16 23:39:30
259
原创 洛谷p1832(完全背包)
题目#include <iostream>#include <algorithm>#include <cstring>using namespace std;int book[1000],prime[1000];long long b[1005];int top=0;void sushu(int n){ memset(book,0,siz...
2020-02-10 16:11:07
196
原创 洛谷p1204(线段的最长覆盖)
题目#include <iostream>#include <algorithm>using namespace std;struct node{ int start,end;};bool cmp(node a,node b){ return a.start<b.start;}node a[5005];int main(){...
2020-01-18 21:13:16
244
原创 洛谷p1876(开灯)
题目这道题是找在这个范围中有奇数个因子的数,那么只有完全平方数满足这个条件,因为他的一个因子的平方是本身,所以我们枚举在这个范围
2020-01-15 20:43:58
242
原创 循环链表实现约瑟夫环
。。。这次数据结构实验让我更深地认识到了链表和指针,以后多看一点,理解链表。#include <stdio.h>#include <stdlib.h>#include <malloc.h>typedef struct { int num; struct node *next;}node,*linklist;void insert(linkli...
2019-11-11 17:41:07
124
原创 负基数的进制转换,洛谷p1017
关于负基数的讲解如果余数为负数,就让商加1:bei=a/b+1然后再算余数:yu=a-bei*b代码:#include <iostream>using namespace std;char c[21]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F','G','H','I','J','K'}...
2019-11-10 22:32:38
271
原创 洛谷p1547,算是最小生成树的模板吧
题目地址我们用一个并查集来表示有没有环,然后采用kruskal算法构建最小生成树,最后将最长的边输出就行。#include <iostream>#include <algorithm>using namespace std;int fa[2002];struct node{ int a,b; int value;};bool cmp(node m...
2019-11-04 21:39:52
96
原创 洛谷p2121拆地毯
这道题是找有k条边的最大生成树,我们使用一个并查集,再定义一个结构体,将边的值排序,然后开始构建最大生成树,如果有环的话说明在一个集合中,有公共的祖先。#include <iostream>#include <algorithm>using namespace std; int fa[100001];struct node{ int x,y; int v...
2019-10-28 20:14:45
238
1
原创 洛谷p2256,并查集和字符串
第一种,直接用字符串做#include <iostream>using namespace std;struct node{ string name; int num;};node a[20002];int find(int x){ if(a[x].num==x){ return x; }else{ while(a[x].num!=x){ ...
2019-10-21 22:26:30
172
原创 链表的实现
#include <iostream>#include <ctime>#include <cstdlib>using namespace std;struct node{ int data; node *next=NULL;};typedef node *linklist; //尾插法 void creat(linklist *l,i...
2019-10-20 12:53:23
89
原创 洛谷p1002过河卒
这道题使用了dp很明显f[i][j]=f[i−1][j]+f[i][j−1],然后将马的格子删去就行过河卒题目#include <iostream>using namespace std;long long dp[21][21]={1};int mark[21][21]={0};int main() { int nx,ny,hx,hy; cin>>nx&...
2019-09-27 22:11:15
149
原创 洛谷p1022,计算器的改良
。。。这道题就是根据等号分成两部分,然后分别算出来系数和总的和,最后除一下就好题目在这里为什么我一直记不住setprecision怎么拼#include <iomanip>头文件,setprecision控制输出数字位数c++里面存在-0,所以需要特判下面是代码#include <iostream>#include <iomanip>#incl...
2019-09-23 23:35:15
162
原创 贪心,安排会议(洛谷p1803)
题目这道题我们以会议结束时间排序,因为我们要使结束时间尽量小。排序过后,如果开始时间比上一个会议结束时间更靠后,使计数器++。
2019-06-08 10:42:02
262
原创 求多源最短路,Floyd算法实例,洛谷p1744
采购特价商品一个裸的Floyd算法就行,其核心是遍历,找出通过每个中继点的最短路径。#include <iostream>#include <cstring>#include <cmath>#include <iomanip>#define INF 10000000using namespace std;struct node{ ...
2019-05-15 16:23:58
256
原创 2019浙江省赛e题(思维题)
题目我们只需将没排好序的和排好序的比,从后往前,只要不是那个位置上的,计数器++,然后继续将原序列之前一个和现在的比,只要不是,就一定被移动过,我们也不用管移动的到底是谁。可以手模一下过程。...
2019-05-14 20:46:02
220
原创 洛谷p1075,质因数分解
因为质数只能被1和它本身整除,而本题的数是两个质数的乘积,所以它的因子就是1,本身和那两个质数,所以直接循环一遍,如果能被整除,就输出另一个比较大的...
2019-05-14 09:05:30
566
原创 半欧拉图的应用,洛谷p1636
题目本题考察对半欧拉图的应用,对连通图和多个连通分量不适用。半欧拉图介绍如果没有度是奇数的顶点,则可以一笔画成,如果有,则笔画数为奇点的一半。...
2019-05-10 19:22:13
196
原创 小蚂蚁过马路(思维题)
要小心数据范围,会爆int,所以用long long。其实我们只用管最小的就行,然后因为都要经过一个过程,所以不用管最小的在哪个城里。为了区别整除和有余数的情况,我们用(n-1)/low,这样就可以区别了。...
2019-05-08 22:29:34
331
原创 欧拉素数筛
之前在c语言实验的时候,发现用欧拉素数筛写素数总是算不出来,今天发现原来是里面要加一个条件,要不然可能数组越界这个是算100以内的素数,里面循环的数可以改为n。...
2019-05-01 15:40:11
159
原创 Codeforces Round #555 (Div. 3) A - Reachable Numbers思维题,运用了set
思路其实挺简单,不断++,当末尾有0的时候除0,没有的话如果set中没有这个元素,就将他存到set中s.find()如果等于s.end()的话就表示在set中没有这个元素。...
2019-04-28 10:34:44
174
原创 Codeforces Round #554 (Div. 2)c题 数学题
大致意思是找到一个k使a+k和b+k的最小公倍数最小我们可知不论k取多少,abs(a-b)的值不变,所以如果一个数能是a+k的公约数肯定也是b+k的公约数,肯定也是abs(a-b)的因子,所以我们找出它的因子,然后运用枚举的方法找出最小的最小公倍数,之后输出那个k就行。找出公因子操作如下:cha就是ab之差,k和cha/k都是因子,复杂度为根号n下面是所有的代码:这样这道题就可以...
2019-04-27 21:24:20
142
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人