首页 > 编程语言 >2023烟台7天编程集训笔记

2023烟台7天编程集训笔记

时间:2023-07-12 18:13:27浏览次数:45  
标签:编程 一个点 函数 短路 入度 无向 2023 排序 集训

sort函数:把数组从小到大排序

max函数:求出两个数的最大值

min函数:求出两个数的最小值

unique函数:使用前提是先排好序,再使用,效果是去重

merge_sort归并排序

reverse函数:翻转数组

random_shuffle函数:把a[1]到a[n]随机打乱

swap函数:交换两个数

没有单调性不能二分

位运算运行速度比加减乘除取模运算速度快

位运算符号有:& ^ |

只有两个矩阵的行和列一样时,才能进行矩阵的加减法。只有一个矩阵的行等于另一个矩阵的列时,才能进行乘法

矩阵乘法有结合律,但是没有交换律

搜索问题分为:(1)最优解问题 (2)可行解问题 (3)解数量问题

必须是最优解问题,每一步的代价都是最小步数,才能用bfs,其余问题都用dfs

优化技巧:(1)剪枝:少搜一些无用状态,分为可行性剪枝和最优性剪枝 (2)卡时(3)随机顺序搜索

全局变量在堆空间,局部变量在栈空间

堆空间为256M,可以存6.4×10的7次方个int,栈空间为64KB,只能存16384个int

堆默认定义为大根堆,栈是先进后出(一个桶),队列是先进先出:FIFO(first in first out)

单调队列要用手写队列,用单调递增队列来求最小值,用单调递减队列来求最大值。

归并排序核心思想就是分治,分完再治。

顺序赋值比随机顺序赋值更快。

从起点和重点同时开始bfs直到在中间某个位置相遇叫双向bfs

由点与边构成的元素分类:有向图,无向图

度:度分为入度,出度,只会出现在有向图,无向图只有度这个概念

入度:指向这个点的边的总数

出度:从这个点出去的点的总数

度(无向图):链接这个点的总数

自环:自己连接自己

路径:从一个点到另一个点的过程所经过的边

简单路径:不能走重复点的路径

环:终点 = 起点的路径

简单环:除了终点与起点,不能走重复点

连通:两个点能够通过路径到达

连通图:一个图所有的边都能互相到达

特殊类型的图:树(无向 无环 联通)

森林(无向 无环)

有向树 (有向 无环)

外向树(所有边都朝外)

内向树 (所有边都指向一个点)

章鱼(有环且只有一个环, 中间的点可以延伸出一棵树)

仙人掌(有多个环)

DAG(有向无环图)

注:链式结构既是外向,又是内向

如果把章鱼的环删掉一条边,就可以变成一个树

树任意加上一条边就是章鱼

染色法:把一个点染色为 1,然后一层一层向外染色。如果一条边连接的两个点的颜色一样,就说明不是二分图,否则就是。
拓扑排序:针对 DAG。

对有向图中的每一个点进行排序,使得最后的排序结果都是从左向右指的。

不断删除入度为0的点,然后不断把入度为0的点加入答案。

那如何删除一个点呢?其实不需要删除,只需要将入度减掉即可。

最短路问题可以分为两类:单源最短路问题,多源最短路问题

单源最短路问题:一个起点到其他点最短路

多源最短路问题:多个起点到其他点最短路

最短路的三角不等式:dist[i][j]<=dist[i][k]+dist[k][j]

解决多源最短路的算法:flogd:dist[i][j][k],意思是从j走到k,中间经过很多点,中间节点的编号必须都<=i

标签:编程,一个点,函数,短路,入度,无向,2023,排序,集训
From: https://www.cnblogs.com/zhuyucheng929/p/17548462.html

相关文章

  • 2023河南萌新联赛第(一)场:河南农业大学 11/12
    晚来了一小时,终榜14名,血亏https://ac.nowcoder.com/acm/contest/61132A题不会,我选择oeisn=int(input())print(n*(n+1)*(n+2)//6%1000000007)python代码B题考虑线段树f[x][i][0]表示如果x所统辖的区间里,x第i位为0做计算得到的值,f[x][i][1]表示x所统辖的区间里,第i位为1做计......
  • Day08(2023.07.12)
    行程8:45    到达上海市信息安全测评认证中心(黄浦区陆家浜路1308号)9:00  学习《网络安全等级测评师培训教材》11:30--13:00   吃饭休息13:00 学习《网络安全等级测评师培训教材》17:00      下班 路由器:堡垒机:如......
  • Media Encoder 2023-视频编码软件mac/win版
    AdobeMediaEncoder2023是Adobe公司推出的一款专业的媒体编码和转换软件。作为AdobeCreativeCloud套件的一部分,它与其他Adobe创意应用程序(如PremierePro、AfterEffects)无缝集成,提供了一个强大的工具集,用于优化、转换和编码各种媒体文件。→→↓↓载MediaEncoder2......
  • InDesign 2023-排版设计软件mac/win版
    AdobeInDesign2023是一款专业的排版设计软件,由Adobe公司开发。它是AdobeCreativeCloud套件中的一部分,为用户提供了丰富的工具和功能,用于创建出版物、印刷品、数字杂志、互动PDF和电子书等。→→↓↓载InDesign2023mac/win版 以下是InDesign2023的详细介绍:......
  • Python异步编程
    协程不是计算机提供,程序员人为创造也称为微线程,是一种上下文切换技术(通过一个线程实现代码块互相切换执行)普通代码的执行流程自上而下顺序执行deffun1():print(1)#...print(2)deffun2():print(3)#...print(4)fun1()fun2()-结......
  • HHHOJ #1238. 「NOIP 2023 模拟赛 20230712 D」但战斗还未结束 思考--zhengjun
    赛时想写60pts,结果cxr似乎少算了一点空间,导致我一直没把空间卡过去QWQ。当时不会dfs求拓扑序,这里讲一下。枚举所有非访问过的点依次dfs,每次进行下列操作:找出\(v\)的一个未访问过的入点\(u\),调用dfs(u);找不到\(u\)的时候,把\(v\)加入拓扑序列中。代码#inc......
  • 【雕爷学编程】Arduino动手做(117)---P10V706LED屏模组4
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • Shell 编程常用参考
    Shell特殊变量$0,$#,$*,$@,$?,$$和命令行参数Shell中的特殊变量参考如下表:变量含义$0当前脚本的文件名$n传递给脚本或函数的参数。n是一个数字,表示第几个参数。例如,第一个参数是$1,第二个参数是$2$#传递给脚本或函数的参数个数$*传递给脚本或函数......
  • 【雕爷学编程】Arduino动手做(117)---P10V706LED屏模组3
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......
  • 【雕爷学编程】Arduino动手做(117)---P10V706LED屏模组2
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞......