食物链
摘要:题目 很经典的并查集题目 反集做法:开三倍的数组,分别是吃x的和x吃的。#include #include #include using namespace std;const int MAXN=200000;int f1[MAXN];int find(int x)//找爸+路径...
阅读全文
银河英雄传说(带权并查集)(草稿)
摘要:题目#include #include #include using namespace std;const int MAXN=31000;int f[MAXN],min1;int front[MAXN],behind[MAXN];int find(int x){ if(f[...
阅读全文
团伙
摘要:题目#include #include #include using namespace std;int f1[2001],f[2001];int ff(int x) { if(f1[x]!=x) f1[x]=ff(f1[x]); return f1[x]; //...
阅读全文
数组模拟链表
摘要:#include #include #include #include using namespace std;int head[1000],next[1000],num[1000];int main(){ int n,m; scanf("%d%d",&n,&m); ...
阅读全文
最小生成树(prime)
摘要:#include #include #include using namespace std;int dis[1000],sum=0,f[1000],a[1001][1001],ans[1000][3],p[1000];int main(){ int n,m,t=0; ...
阅读全文
裸的tarjan(模板)
摘要:#include #include #include using namespace std;vector q[1000];int color[10000],c=0,num=0,low[1000],dfn[1000],top=0,f[1000],s[1000],maxf=-1;v...
阅读全文
烦人的幻灯片(确实烦人啊)
摘要:思路:这也是个类拓扑排序,给区间编号,然后有一个点在其范围,这个区间的入度就增加,每次遍历所有区间,然后挑出入度为1的区间,数组记录,因为他要求按区间顺序输出。#include #include using namespace std;struct po{ int x1; ...
阅读全文
奖金(类拓扑排序)
摘要:思路:将有要求的人入度增加,每次遍历所有点,将入度为0的点挑出来,记录在一个数组中,最后在删除其出度,每轮循环发工资钱数加1便可以保证总工资最少了。#include #include using namespace std;int r[100000],c[100000][1000]...
阅读全文
能量项链
摘要:题目 思路跟合并石子一毛一样呢#include #include using namespace std;int n;int a[1000],f[1000][1000];int main(){ scanf("%d",&n); for(int i=1;i<=n;i++) ...
阅读全文
算24
摘要:题目#include #include #include #include using namespace std;double a[5];bool f[5];const double p=0.000001;bool dfs(int x)//bool型容易判断有无方案{ if...
阅读全文
靶状数独
摘要:靶状数组题目链接 90分,而且超时很严重,与或运算不会23333333int len=max(a1[0],b1[0])+1; while(len>0 && !c[len]) len--; printf("%d",c[len]); for(int i=len-1;i...
阅读全文
QBXT的总结(day 1)
摘要:1搜索: 先写出基本的搜索模板,然后将大小变量放入dfs返回值去,根据dfs中变量的数量开相应维数的数组,写出记忆化搜索,再根据边界条件和记忆化搜索写出dp。 2差值维护: 给定n个数ai,有m次操作,每个操作是给al~ar增加一个数k。最终输出操作完后的这n个数的值。首先令s[i...
阅读全文