2023蓝桥杯大学A组C++决赛游记+个人题解
Day0
发烧了一晚上没睡着,感觉鼻子被打火机烧烤一样难受,心情烦躁
早上6点起来吃了个早饭,思考能力完全丧失了,开始看此花亭奇谭
看了六集,准备复习数据结构考试,然后秒睡
一睁眼就是下午2点了
挂了个毛概课串讲,点了个外卖,吃完又睡着了
醒来就晚上8点了
然后又点了个外卖,复习了三章数据结构
就凌晨2点了,睡觉
Day1
7:40醒,被催着上了车,精神恍惚
然后开始考试
第一题
第一题就被难到了
分割圆形,以为是卡特兰数,但又觉得不一样
不给样例,题意也不是很清楚啊。。。
随便推了推
首先,连接相邻两个点的边(外圈)肯定得单独拿出来考虑,也就是2^n种外圈情况
然后设f[n]表示n边形内部划线不相交的方案数
简单推推得到f[n]=2*f[n-1]+Σf[i+1]*f[n-i+1]
f[3]=1;f[4]=3;.........
也不知道对不对,反正这么写了
最后好像是1392(可能是错的)
第二题
求2^(3^(4^(……^2023)))%2023
扩展欧拉定理
没什么好说的,背不到公式了
(翻了翻以前的博客)
emm……犯了一个扩展欧拉定理的典型错误
没加phi(p)
所以答案好像是869?
后面补的代码:
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int gcd(int x,int y){return !y?x:gcd(y,x%y);}
int phi(int n)
{int sum=0;for(int i=1;i<n;i++)if(gcd(i,n)==1)sum++;return sum;
}
int ksm(int x,int y,int m)
{int ret=1;while(y){if(y&1)ret=1ll*ret*x%m;x=1ll*x*x%m;y>>=1;}return ret;
}
int minksm(int x,int y,int m)
{int ret=1;while(y){if(y&1)ret=min(1ll*ret*x,1ll*m);x=min(1ll*x*x,1ll*m);y>>=1;}return ret;
}
const int mod=2023;
pair<int,bool> f(int n,int m)
{if(m==1)return pair(1,1);pair<int,int> p=f(n+1,phi(m));int b=p.first;if(p.second) b+=phi(m);printf("%d^%d\n",n,b);if(minksm(n,b,m)==m)return pair(ksm(n,b,m),1);return pair(ksm(n,b,m),0);
}
int main()
{printf("%d",f(2,2023).first);
}
(所以搞了40分钟填空题是一分没得是吧)
第三题
把长方形分割成小正方形,让小正方形的数量最多
寻找大于2的最小公因数(没错是最小)
然后直接除一除就结束了
第四题
给出L,R
求x+y=z算式的数目(L<=x,y,z<=R)
数学题,稍微推一推就好
这题极度阴间,小心爆你的longlong(针对某些特定的写法)
第五题
第K小的和
给两个数组A,B。
从A、B中各选一个数加起来,组成C数组,求C数组中第K小的数。
二分答案+two-pointers,注意边界条件的验证
第六题
相连的边
给出一棵带权树,选择相连的三条边,让他们的边权和最大。
首先这三条边只可能是一条链,或者是菊花图
菊花图直接对每个点的相连的边排序
把树定根后,链的情况分两种,一种是直链,一种是有LCA的链
直链的情况直接枚举每个点,向上走三步统计边权
有LCA的情况,其实是两种直链的情况加起来,一边直链长度是2,另一边是1
枚举长度为2的直链,即枚举每个点向上走两步,然后在爷爷节点选择除去走上来的边的最大邻接边即可
注意细节处理。
第七题
01游戏
题目保证有解
直接爆搜
剪枝很多,横竖相连三个不能相同,每行的01个数不超过一半,算完每行每列用二进制val值去重
从11点10写到11点40
最后时间10*10的全下划线不到0.5s
第八题
求一个字符串中长度为i的本质不同的子串的个数(i=1~n)
应该是SAM板题,可惜我背不到了,老了啊┭┮﹏┭┮
写了个双哈希n^2logn,能过4000都顶天了
第九题
求一棵树中距离为i的简单路径条数(i=L~R)
点分治板题,可惜我背不到了,老了老了
暴力n^2走人,居然还有40%
md,lqb出题这么这个样子???尽是出板题是吧???欺负我退役多年的老同志
第十题
本来只剩20分钟了,想着暴力也不是很好写,于是想了想正解,发现正解不难
状压DP,SPFA型转移
f[u][S][hp]表示当前在点u,存在怪兽的点的状态为S,当前血量为hp
很显然
(u,v)存在时:
if(S&(1<<v))
f[v][S-(1<<v)][hp-cal(S,v)]=min(f[u][S][hp]+w(u,v))
else
f[v][S][hp]=min(f[u][S][hp]+w(u,v))
然后就利用SPFA转移
最后答案应该是max(f[n-1][……][1~HP])
最后没写完,哪怕前面填空题不做也好啊,最后留个10~20分钟就搞定了,太菜了
总结
总之就是非常菜,简单题背不到公式,板题背不到板子,题目都写不完,太菜了。
相关文章:
2023蓝桥杯大学A组C++决赛游记+个人题解
Day0 发烧了一晚上没睡着,感觉鼻子被打火机烧烤一样难受,心情烦躁 早上6点起来吃了个早饭,思考能力完全丧失了,开始看此花亭奇谭 看了六集,准备复习数据结构考试,然后秒睡 一睁眼就是下午2点了 挂了个…...
wkhtmltopdf踩坑记录
1. 不支持writing-mode。 需求是文字纵向排列,内容从左到右,本来用的是writing-mode: tb-rl;,插件转pdf后发现失效。 解决方法: 让每一列文字单独用一个div容器包裹,对它的宽度进行限制,控制每一行只能出现…...
贪心算法part2 | ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II
文章目录 122.买卖股票的最佳时机II思路思路代码官方题解困难 55. 跳跃游戏思路思路代码官方题解代码困难 45.跳跃游戏II思路思路代码困难 今日收获 122.买卖股票的最佳时机II 122.买卖股票的最佳时机II 思路 局部最优:将当天价格和前一天比较,价格涨…...
[C++]异常笔记
我不怕练过一万种腿法的对手,就怕将一种腿法 练一万次的对手。 什么是C的异常 在C中,异常处理通常使用try-catch块来实现。try块用于包含可能会抛出异常的代码,而catch块用于捕获并处理异常。当异常被抛出时,程序会跳过try块中未执行…...
浅谈一级机电管道设计中的压力与介质温度
管道设计是工程设计中的一个非常重要的部分,管道的设计需要考虑到许多因素,其中就包括管道设计压力分类和介质温度分类。这两个因素是在设计管道时必须非常严格考虑的, 首先是管道设计压力分类。在管道设计中,根据工作要求和要传输…...
Docker网络模型(八)使用 macvlan 网络
使用 macvlan 网络 一些应用程序,特别是传统的应用程序或监控网络流量的应用程序,期望直接连接到物理网络。在这种情况下,你可以使用 macvlan 网络驱动为每个容器的虚拟网络接口分配一个MAC地址,使其看起来像一个直接连接到物理网…...
控制视图内容的位置
文本域中的提示内容在默认情况下是垂直居中的,要改变文本在文本域中的位置,可以使用android:gravity来实现。 利用android:gravity可以指定如何在视图中放置视图内容,例如,如何在文本域中放置文本。 如果希望视图文本显示在上方&a…...
【分布式系统与一致性协议】
分布式系统与一致性协议 CAP原理APCPCA总结BASE理论 一致性拜占庭将军问题 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。 分布式系统的设计目标一般包含如下: 可用性:可用性是分…...
音视频领域的未来发展方向展望
文章目录 音视频领域的未来发展方向全景音视频技术虚拟现实和增强现实的区别 人工智能技术可视化智能分析智能语音交互图像识别和视频分析技术 语音处理智能推荐技术远程实时通信 流媒体技术未来方向 音视频领域的未来发展方向 全景音视频技术:全景音视频技术是近年…...
时间同步/集群时间同步/在线/离线
目录 一、能够连接外网 二、集群不能连接外网--同步其它服务器时间 一、能够连接外网 1.介绍ntp时间协议 NTP(Network Time Protocol)网络时间协议,是用来使计算机时间同步的一种协议,它可以使计算机对其服务器或时钟源做同步…...
基于BP神经网络对MNIST数据集检测识别(numpy版本)
基于BP神经网络对MNIST数据集检测识别 1.作者介绍2.BP神经网络介绍2.1 BP神经网络 3.BP神经网络对MNIST数据集检测实验3.1 读取数据集3.2 前向传播3.3 损失函数3.4 构建神经网络3.5 训练3.6 模型推理 4.完整代码 1.作者…...
HTML5-创建HTML文档
HTML5中的一个主要变化是:将元素的语义与元素对其内容呈现结果的影响分开。从原理上讲这合乎情理。HTML元素负责文档内容的结构和含义,内容的呈现则由应用于元素上的CSS样式控制。下面介绍最基础的HTML元素:文档元素和元数据元素。 一、构建…...
Vue中Axios的封装和API接口的管理
一、axios的封装 在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库,可运行在浏览器端和node.js中。他有很多优秀的特性,例如拦截请求和响应、取消请求、转换json、客户端防御XSR…...
MLIR面试题
1、请简要解释MLIR的概念和用途,并说明MLIR在编译器领域中的重要性。 MLIR(Multi-Level Intermediate Representation)是一种多级中间表示语言,提供灵活、可扩展和可优化的编译器基础设施。MLIR的主要目标是为不同的编程语言、领域专用语言(DSL)和编译器…...
***杨辉三角_yyds_LeetCode_python***
1.题目描述: 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] 示例 2: 输入: numRows …...
Mac使用DBeaver连接达梦数据库
Mac使用DBeaver连接达梦数据库 下载达梦驱动包 达梦数据库 在下载页面随便选择一个系统并下载下来。 下载下来的是zip的压缩包解压出来就是一个ISO文件,然后我们打开ISO文件进入目录:/dameng/source/drivers/jdbc 进入目录后找到这几个驱动包&#x…...
spring.expression 随笔0 概述
0. 我只是个普通码农,不值得挽留 Spring SpEL表达式的使用 常见的应用场景:分布式锁的切面借助SpEL来构建key 比较另类的的应用场景:动态校验 个人感觉可以用作控制程序的走向,除此之外,spring的一些模块的自动配置类,也会在Cond…...
从Cookie到Session: Servlet API中的会话管理详解
文章目录 一. Cookie与Session1. Cookie与Session2. Servlet会话管理操作 二. 登录逻辑的实现 一. Cookie与Session 1. Cookie与Session 首先, 在学习过 HTTP 协议的基础上, 我们需要知道 Cookie 是 HTTP 请求报头中的一个关键字段, 本质上是浏览器在本地存储数据的一种机制,…...
docker数据管理与网络通信
一、管理docker容器中数据 管理Docker 容器中数据主要有两种方式:数据卷(Data Volumes)和数据卷容器( DataVolumes Containers) 。 1、 数据卷 数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻…...
怎么查询电脑的登录记录及密码更改情况?
源头是办公室公用的电脑莫名其妙打不开了,问别人也都不知道密码是多少 因为本来就没设密码啊!(躺倒) 甚至已经想好了如果是50万想攻破电脑,被po抓住要怎么花这笔钱了 是我想太多 当然最后也没解决,莫名…...
《三》TypeScript 中函数的类型
TypeScript 允许指定函数的参数和返回值的类型。 函数声明的类型定义:function 函数名(形参: 形参类型, 形参: 形参类型, ...): 返回值类型 {} function sum(x: number, y: number): number {return x y } sum(1, 2) // 正确 sum(1, 2, 3) // 错误。输入多余的或者…...
深入学习 Mysql 引擎 InnoDB、MyISAM
tip:作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 💕💕 推荐:体系化学习Java(Java面试专题&#…...
【华为OD统一考试B卷 | 100分】阿里巴巴找黄金宝箱(V)(C++ Java JavaScript Python)
题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子,每个箱子上面贴有一个数字。 阿里巴巴念出一个咒语数字k(k<N),找出连续k个宝箱数字和的最大值,并输出该最大值。 输入描述 第一行输入一个数字字串,数字之间…...
六步快速搭建个人网站
目录 第一步、选择搭建平台WordPress 第二步、选域名 1)域名在哪买? 2)域名怎么选? 3)以阿里云为例,讲解怎么买域名 第三步、选择服务器 第四步、申请主机、安装WordPress 第五步、选择WordPress模…...
TypeScript 中的 type 关键字有什么用?
创建类型别名 在 TypeScript 中,type 关键字用于创建类型别名(Type Alias)。类型别名可以给一个类型起一个新的名字,使代码更具可读性和可维护性。 类型别名可以用于定义各种类型,包括基本类型、复合类型和自定义类型…...
27 getcwd 的调试
前言 同样是一个 很常用的 glibc 库函数 不管是 用户业务代码 还是 很多类库的代码, 基本上都会用到 获取当前路径 不过 我们这里是从 具体的实现 来看一下 测试用例 就是简单的使用了一下 getcwd rootubuntu:~/Desktop/linux/HelloWorld# cat Test04Getcwd.c #inc…...
使用IDEA使用Git:Git使用指北——实际操作篇
Git使用指北——实际操作 🤖:使用IDEA Git插件实际工作流程 💡 本文从实际使用的角度出发,以IDEA Git插件为基座讲述了如果使用IDEA的Git插件来解决实际开发中的协作开发问题。本文从 远程仓库中拉取项目,在本地分支进行开发&…...
java boot将一组yml配置信息装配在一个对象中
其实将一组yml数据封进一个对象中才是以后的主流开发方式 我们创建一个springboot项目 找到项目中的启动类所在目录 在同目录下创建一个类 名字你们可以随便取 我这里直接叫 dataManager 然后 在yml中定义这样一组数据信息 然后 我们在类中定义三个和这个配置信息相同的字段…...
【裸机开发】链接脚本(.lds文件)的基本语法
目录 一、什么是链接脚本? 二、链接脚本的基本语法格式 1、常用命令 2、内置变量 三、链接脚本的简单案例 一、什么是链接脚本? 一段程序的编译需要经历四个阶段(预处理—编译—汇编—链接),而链接脚本管理的就是…...
Java 进阶 -- 集合(三)
4、实现 实现是用于存储集合的数据对象,它实现了接口部分中描述的接口。本课描述了以下类型的实现: 通用实现是最常用的实现,是为日常使用而设计的。它们在标题为“通用实现”的表格中进行了总结。特殊目的实现是为在特殊情况下使用而设计的࿰…...
wordpress做招聘网站/长沙企业关键词优化哪家好
测试代码链接 异常过滤器特性: ExceptionFilterAttribute异常过滤器特性:可以在方法执行期间出现异常,被处理掉,有局限性:只有控制器实例化后,方法执行完之前,出现的异常才能被抓住 在WebApiConfig.cs Reg…...
.net网站开发优点/搜索引擎优化seo论文
js 数组去重 记得js 数组去重3种方法: for 循环两次 使用 Array.prototype.indexOf[注意这个方法是 es5 的,兼容性] 使用 对象的键具有唯一性的这一特性,其实在python中的 sets key 也是具有唯一性的 // 使用第三种方法实现的兼容性处理&…...
旅游网站的建设方案/首页关键词优化价格
1.VLAN规划。 通常,不同的部门规划不同的vlan,如上图PC1和PC2属于同一个VLAN,PC3和打印机属于同一VLAN下: 部门VLANPC1 、PC210PC3 ,打印机20 交换机上创建vlan,主机互联的接口配置为access接口ÿ…...
天津高端网站建设/seo专员岗位要求
今天学习: 在Ubuntu下软件源的文件是/etc/apt/sources.list,那么sourdces.list.d目录下的文件又是什么作用呢? 该文件夹下的文件是第三方软件的源,可以分别存放不同的第三源地址,只需“扩展名”为list即可,…...
建站seo赚钱/怎么做百度网页
參考MongoDB权威指南,学习阶段。大家多多交流问题。持续更新本文 MongoDB的长处MongoDB具有丰富的数据模型,是面向文档的数据库。easy扩展。能够在多台server之间切割数据。开发人员仅仅需专注于编写应用。假设须要更大的数据。仅仅需在集群中加入新机器…...
网站建设提供书面资料清单/企业品牌推广营销方案
#include<bits/stdc.h> #define inf 0x3f3f3f3f using namespace std; const int maxn17; /*这里参考大佬的代码,去掉初始位进行二进制枚举*/ int n,m,maxs,lim,cnt; int x[maxn],y[maxn],c[maxn]; int dp[1<<maxn];///某状态下的最少使用教练 int ds[1…...