自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (1)
  • 收藏
  • 关注

原创 图论——因子分解

因子分解相关概念1、因子分解是图分解的一种方法2、图G的因子GiG_iGi​,指至少包含G的一条边的生成子图(生成子图:包含原图所有顶点,边不管,若边数为m,则不同的生成子图有2m2^m2m个,不同的生成子图≠不同构)3、图G的因子分解:指将G分解为若干边不重的因子之并4、图G的n因子:指G的n度正则因子5、若图G可以分解为若干n因子之并,称G是可n因子分解的一、图的一因子分解\...

2019-05-28 14:29:32 16109 1

原创 图论——根树

一、根树概念\quad一棵非平凡的有向树T,如果恰有一个顶点的入度为0,而其余所有顶点的入度为1,这样的的有向树称为根树。其中入度为0的点称为树根,出度为0的点称为树叶,入度为1,出度大于1的点称为内点。又将内点和树根统称为分支点。\quad对于根树T,若每个分支点至多m个儿子,称该根树为m元根树;若每个分支点恰有m个儿子,称它为完全m元树。二、重要定理和性质1、在完全m元树T中,若树叶数...

2019-05-24 17:33:59 12542

原创 图论——极图和托兰定理

一、lll部图的概念与特征lll部图定义:完全lll部图定义:如果在一个lll部图G中,任意部ViV_iVi​中的每个顶点同G中其它各部中的每个顶点均邻接,称G为完全lll部图。记作: G=Kn1,n2,⋯ ,nl(ni=∣Vi∣,1≤i≤l)G=K_{n_1, n_2,\cdots, n_l}(n_i = |V_i|, 1 \le i \le l)G=Kn1​...

2019-05-23 21:47:30 9469 2

原创 图论——图代数问题

一、图的邻接矩阵定义:设G为n阶图,V=v1,v2,…,vnV={v_1, v_2, …, v_n}V=v1​,v2​,…,vn​,邻接矩阵A(G)=(aij)A(G)=(a_{ij})A(G)=(aij​),其中aij={l,vi和vj间边数0,vi和vj不邻接 a_{ij}=\left\{\begin{aligned}&l ,v_i和v_j间边数 \\&...

2019-05-23 19:07:36 1862

原创 1153 Decode Registration Card of PAT (25 分)

\quad熟练运用map和sort就很容易。需注意第四个测试点用map会超时,全部用unordered_map就好。#include <bits/stdc++.h>using namespace std;const int maxn = 1e4+10;unordered_map<char, vector<pair<string, int> > ...

2019-05-20 21:15:45 1706

原创 图论(十五)——有向图的概念和算法

考试要求:有向图的相关概念和结论强连通分支和单项连通分支的求法一、有向图概念和性质概念:边有方向的图称为有向图出度:以点v为始点的边的条数称为点v的出度,一个自环算一度入度:以点v为终点的边的条数称为点v的入度,一个自环算一度一个简单图有2m(G)2^{m(G)}2m(G)个定向图。∑d+(v)=∑d−(v)=m(G)\sum d^+(v)=\sum d^-(v)=m(G)...

2019-05-17 00:27:12 11939

原创 PAT甲级 1106 Lowest Price in Supply Chain (25 分)

\quad树的层次遍历,需记录每一层零售商数量。若某一层出现零售商,即该曾出现叶子节点,则统计该层叶子节点个数,计算出结果输出即可。#include <bits/stdc++.h>using namespace std;const int maxn = 1e+5+10;vector<int> v[maxn];int main(int argc, char co...

2019-05-15 17:17:21 1352

原创 图论(十四)——图的着色

考试要求求图的边色数和点色数(结构分析法)色多项式(以前考现在了解)应用题:画图,问题转换一、图的边着色\quad边色数:给图边上色,使得相邻边颜色不同所需要的颜色最少种数。记为χ′(G)χ&#x27;(G)χ′(G)\quad对图的正常边着色,实际上是对G的边集合的一种划分,使得每个划分块是G的一个边独立集(无环时是匹配);图的边色数对应的是图的最小独立集划分数。因此,图...

2019-05-15 17:13:23 11605 2

原创 PAT甲级 1107 Social Clusters (30 分)

\quad首先找出兴趣相同的人,建立关系,vector v[maxn];其中v[i]中的值是与i有相同兴趣的人。最后dfs,标记每个人所属类别,统计每类人数,排序输出即可。#include <bits/stdc++.h>using namespace std;const int maxn = 1010;struct People{ int habbit[maxn];}p...

2019-05-09 16:27:56 1352

原创 PAT甲级 Mars Numbers(20分)

\quad水题,但是注意0表示tret,需注意。#include <bits/stdc++.h>using namespace std;string one[12] = {"jan", "feb", "mar", "apr", "may", "jun", "jly", "aug", "sep", "oct", "nov", "dec"};string two[12] = {"...

2019-05-05 21:29:07 1354

原创 PAT甲级 1099 Build A Binary Search Tree (30 分)

\quad本题意在告诉你每个节点的左右孩子信息,需要你把树建出来,接着利用BST中序遍历值是有序的这一特性重新给每个节点赋值。最后再来个BFS对树进行层次遍历输出即可。#include <bits/stdc++.h>using namespace std;int n;struct TreeNode{ int val; int left, right;}treeNode...

2019-05-05 20:52:04 1426

原创 PAT甲级 1096 Consecutive Factors (20 分)

\quad感觉这个20分题挺难的,利用构造连乘来找n最大的能够连成的因子个数。#include <bits/stdc++.h>using namespace std;int main(int argc, char const *argv[]){ int n; cin >> n; int maxn = sqrt(n)+1; int first = 0, le...

2019-05-05 20:17:14 1425

原创 PAT甲级 1094 The Largest Generation (25 分)

\quad树的BFS,注意记录每一层的终止位置(我用-1标识),统计每一层的数量即可。程序如下:#include <bits/stdc++.h>using namespace std;const int maxn = 100;vector<int> v[maxn];int main(int argc, char const *argv[]){ int N,...

2019-05-05 19:48:19 1321

原创 PAT甲级 1093 Count PAT's (25 分)

\quad这是一个数学问题,容易想到对于字符串中每个A而言,若其前面有m个P,后面有n个T,可以得到对于当前的A,能够组成m*n种情况的PAT。我们可以先统计出T的总个数,依次遍历字符串,遇到P则统计P的个数++,遇到T则T个数--,遇到A则令结果加上当前P数量和T数量的乘积。最后将结果模给定的数输出即可。这里若数太大在中间计算过程中就爆long long的话可以每一步都模那个大数,不过PAT数据...

2019-05-05 17:23:07 1479 1

原创 PAT甲级 1091 Acute Stroke (30 分)

\quad很简单三维搜索,可以用BFS或者DFS。但是DFS好像会爆栈,有两个测试用例过不了。BFS程序如下:#include <bits/stdc++.h>using namespace std;int I[1286][128][60];int m, n, l, t;int vis[1286][128][60];int dir[6][3] = {{1, 0, 0}, {...

2019-05-03 19:56:02 1498

原创 PAT甲级 1090 Highest Price in Supply Chain (25 分) 数组模拟

我用from数字记录每一个节点的父亲节点,这样来求层数。但这样的做法需要优化,不然会超时。优化的三个方便如下:优化1:已经求出第几层的可以直接用优化2:求出某个节点层数,回溯回去继续求出它所有父亲节点层数优化3:发现某个节点已求得情况下也不需要再求了#include <bits/stdc++.h>using namespace std;const int maxn =...

2019-05-03 14:36:25 1401

原创 PAT甲级 1086 Tree Traversals Again (25 分) 前序中序创建二叉树

\quad从题目给出的入栈和出栈操作,可知入栈顺序是树的前序遍历,本题前序遍历是{1,2,3,4,5,6};出栈顺序是树的中序遍历,本题的中序遍历是{3,2,4,1,6,5}。题目要求我们求树的后序遍历,因此这道题的关键就是根据前序遍历和中序遍历来创建一棵二叉树。流程如下:1根据前序遍历来确定每次根节点的位置,因为前序遍历先访问的是根节点,所以前序遍历第一个位置就是根节点。2根据根节点和中序...

2019-05-02 22:56:41 1536

原创 PAT甲级 1085 Perfect Sequence (25 分)

\quad题目看起来很简单,但有两个坑。一是p虽然没超过int范围,但中间过程m*p会超int,所有在p和中间变量定义时应该用long long;二是进行优化,具体的优化实在统计满足条件的数字个数时从i+res后开始即可#include <bits/stdc++.h>using namespace std;int main(int argc, char const *argv[...

2019-05-01 22:08:29 1286 2

原创 PAT甲级 1084 Broken Keyboard (20 分)

\quad简单的字符串处理,用map来辅助完成很容易。#include <bits/stdc++.h>using namespace std;int main(int argc, char const *argv[]){ string s1, s2; map<char, int> m; cin >> s1 >> s2; for (i...

2019-05-01 21:18:41 1218

原创 PAT甲级 1081 Rational Sum (20 分)

\quad模拟分数运算。考察求最小公倍数,最大公约数算法,需要细心。#include <bits/stdc++.h>using namespace std;// 求a和b的最大公约数int gcd(int a, int b){ return a == 0 ? b : gcd(b % a, a); } long long gcd(long long a, long long ...

2019-05-01 20:59:40 1229

原创 PAT甲级 1079 Total Sales of Supply Chain (25 分)

方法1——最后一个测试点超时(22分)\quad用father数组记录每一个编号的上一级编号,例如,我们知道题目中编号2,3,5的上一级是供应商0,那么,father[2]=father[3]=father[5]=0。接下来,我们要求某个零售商位于第几级,就可以通过不断取出其上一级id,直至这个id为0(供应商)时停止,每取一次级数level加一,最终level就是这个供应商的级数。程序如下:...

2019-05-01 20:02:49 1213

推特事件检测

事件检测的大牛文章,IEEE影响因子10分以上,可供下载。

2018-10-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除