摘要:
有n个关系,他们之间某些人相互认识。这样的人有m对。你需要把人分成2组,使得每组人内部之间是相互不认识的。如果可以,就可以安排他们住宿了。安排住宿时,住在一个房间的两个人应该相互认识。最多的能有多少个房间住宿的两个相互认识。 先是要判断是否为二部图,然后求最大匹配。 学习一下模板~ #include 阅读全文
摘要:
有N个人排队,每一个人都有一个val来对应,每一个后来人都会插入当前队伍的某一个位置pos。要求把队伍最后的状态输出。 倒序插入,线段树单点更新,从头到尾输出线段树的状态 #include<cstdio> #include<algorithm> #include<cstring> using nam 阅读全文
摘要:
线段树单点更新~ 建立线段树存储区间内的最大剩余宽度,优先询问左子树~ #include<cstdio> #include<algorithm> #include<cstring> using namespace std; const int maxn=1e6+14; struct node { i 阅读全文
摘要:
高难度dfs,解析看subway map那篇博客 #include<cstdio> #include<algorithm> #include<cstring> #include<map> #include<vector> using namespace std; const int maxn=100 阅读全文
摘要:
大模拟题 #include<bits/stdc++.h> using namespace std; const int maxn=1014; struct node { int data; node * left; node * right; }; void insert (node * &root 阅读全文
摘要:
根据后序和先序,判断树是否唯一并生成中序 #include<bits/stdc++.h> using namespace std; vector<int> in,pre,post; bool unique1=true; void getIn (int preL,int preR,int postL, 阅读全文
摘要:
PAT A1123 建立一颗平衡二叉树并判断其是否是完全二叉树~ #include<cstdio> #include<algorithm> #include<queue> #include<vector> using namespace std; struct node { int v; int h 阅读全文
摘要:
建立一颗avl树并输出根节点~ #include<cstdio> #include<algorithm> using namespace std; struct node { int v; int height; node * left; node * right; }; node * newNod 阅读全文