2023蓝桥杯大学A组C++国赛游记+个人题解

news2024/9/27 17:27:20

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转移

最后答案应该是min(f[n-1][……][1~HP])

最后没写完,哪怕前面填空题不做也好啊,最后留个10~20分钟就搞定了,太菜了

总结

总之就是非常菜,简单题背不到公式,板题背不到板子,题目都写不完,太菜了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/656998.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

04- c语言数组 (C语言)

一 数组的概念 1、在程序设计中&#xff0c;为了方便处理数据把具有相同类型的若干变量按有序形式组织起来,这些按序排列的 同类数据元素的集合 称为 数组。 2、在C语言中&#xff0c;数组属于构造数据类型。一个数组可以分解为多个数组元素&#xff0c;这些数组元素可以是基本…

力扣动态规划专题(三)完全背包 518.零钱兑换II 377. 组合总和 Ⅳ 70. 爬楼梯 322. 零钱兑换 279.完全平方数 步骤及C++实现

文章目录 完全背包一维dp数组 滚动数组 518.零钱兑换II377. 组合总和 Ⅳ70. 爬楼梯322. 零钱兑换279.完全平方数139.单词拆分 完全背包 完全背包的物品数量是无限的&#xff0c;01背包的物品数量只有一个 完全背包和01背包分许步骤一样&#xff0c;唯一不同就是体现在遍历顺序上…

deque的介绍

前言 为什么会存在deque呢&#xff1f;在c标准库中deque是作为 stack和queue的底层容器就是deque&#xff0c;我们要是了解过list和vector就会知道这两种容器各有优劣&#xff0c;vector的优点是支持随机访问&#xff0c;进而可以支持排序和二分查找等算法&#xff0c;它的缺点…

鼠标事件 获取鼠标坐标及点击事件

运行效果&#xff1a; 头文件 #ifndef MOUSEEVENT_H #define MOUSEEVENT_H #include #include #include #include class MouseEvent : public QMainWindow { Q_OBJECT public: MouseEvent(QWidget *parent 0); ~MouseEvent(); protected: void mousePressEvent(QMouse…

Linux:一键搭建ftp服务(vsftpd)

《TRO-23614-VSFTPD》 如果csdn收费 可以和我si liao 我会免费发给你 我发的这个是一个tar归档包&#xff0c;脚本就在其中 Linux&#xff1a;《tar》归档命令_鲍海超-GNUBHCkalitarro的博客-CSDN博客 tar xfz tarro_vsftpd.tar.gz -C /root/ # tar xfz tar包路径 -…

SpringBoot第27讲:SpringBoot集成MySQL - MyBatis 多个数据源

SpringBoot第27讲&#xff1a;SpringBoot集成MySQL - MyBatis 多个数据源 本文是SpringBoot第27讲&#xff0c;在某些场景下&#xff0c;Springboot需要使用多个数据源&#xff0c;以及某些场景会需要多个数据源的动态切换。本文主要介绍上述场景及 SpringBootMyBatis实现多个数…

【期末满分作业】C语言程序设计 实训1——奖学金评定系统的设计与实现(附带实验报告、源码以及解释)

大家好&#xff0c;各位努力奋斗的大学生小伙伴们&#xff01;今天&#xff0c;我将带你们领略一项令人惊叹的程序设计奇迹——《奖学金评定系统》&#xff01;是不是感到激动呢&#xff1f;别急&#xff0c;让我为你们揭开这个能让你在C语言程序设计中拿满分的秘密武器&#x…

ASP.NET Core MVC 从入门到精通之Identity入门

随着技术的发展&#xff0c;ASP.NET Core MVC也推出了好长时间&#xff0c;经过不断的版本更新迭代&#xff0c;已经越来越完善&#xff0c;本系列文章主要讲解ASP.NET Core MVC开发B/S系统过程中所涉及到的相关内容&#xff0c;适用于初学者&#xff0c;在校毕业生&#xff0c…

pikache靶场通关——XSS漏洞

文章目录 前言环境第一关、反射型xss(get)Step.1、输入特殊字符测试Step.2、输入js语句Step.3、在URL中输入js语句 第二关、反射性xss(post)Step.1、输入获取cookie的js语句 第三关、存储型xssStep.1、输入获取cookie的js语句Step.2、查看页面源码Step.3、感受危害性 第四关、D…

1 君正IPC芯片方案介绍

专栏特色 1、所有源码严格遵守统一的编码规范。 2、手把手教学&#xff0c;让你从零开始&#xff0c;深入了解君正方案IPC库的方方面面。 3、纯C接口&#xff0c;接口封装严谨&#xff0c;接口功能丰富&#xff0c;应用层调用简单便捷。 4、近二十年行业经验和技术积累打造的高…

风电光伏iEEE33节点蒙特卡洛概率潮流计算

基于蒙特卡洛法的概率潮流 以IEEE33节点的电网为研究对象 建立了光伏和风电的概率出力模型 采用蒙特卡洛法进行随机抽样 之后基于抽样序列进行概率潮流计算 最后得到电网的电压概率出力曲线

使用数字钥匙技术的车辆有多安全?

首发微信公众号网络研究院&#xff0c;关注获取更多。 虽然有几种不同的方法来实现汽车使用的数字钥匙&#xff0c;但安全的数字钥匙标准应该利用近场通信 (NFC) 和超宽带 (UWB) 结合蓝牙低功耗 (BLE) 来访问车辆&#xff0c;开始引擎&#xff0c;固定车辆&#xff0c;或授权各…

云原生之使用Docker部署Dashy个人导航页

云原生之使用Docker部署Dashy个人导航页 一、Dashy介绍1.1 Dashy简介1.2 Dashy特点 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、部署前准备工作4.1下载Dashy源码包4.2 查看D…

vue基础-ref (!)

&#xff01;1、ref 引用 在父组件中直接去调 子组件中的方法&#xff0c;使用ref 很简单&#xff0c;比父子传值 简单很多 1、使用ref引用DOM元素 第一步&#xff1a;给标签里 写 ref“xxx” 第二步&#xff1a;就可以用this.$refs.xxx 来拿到这个元素 使用 ! 2、使用ref引…

Spring - Bean的6种作用域

1、Bean作用域问题2、作用域定义2.1、Bean的6种作用域singleton 单例模式prototype 原型作用域request 请求作用域session 会话作用域application 全局作用域&#xff08;了解&#xff09;websocket 单例作用域 vs 全局作用域 2.设置作用域 1、Bean作用域问题 通过一个案例来看…

[工业互联-10]:PLC入门简介

目录 前言 PLC的用途 PLC的特点 PLC的分类 1、按PLC的控制规模分类 2、按PLC的控制性能分类 3、按PLC的结构分类 PLC的技术指标 1、硬件指标 2、软件指标 3、主要性能指标介绍 1) 存储容量 2) 输入/输出&#xff08;I/O&#xff09;点数 3) 扫描速度 4) 指令的功…

【Redis】五种数据结构

在内存种种存储形式如下&#xff1a;

练习2:逻辑回归

练习2&#xff1a;逻辑回归 介绍 在本练习中&#xff0c;您将实现逻辑回归并将其应用于两个不同的数据集。还将通过将正则化加入训练算法&#xff0c;来提高算法的鲁棒性&#xff0c;并用更复杂的情形来测试模型算法。 在开始练习前&#xff0c;需要下载如下的文件进行数据上…

90后程序员回家卖羊粪,月销售额120万!

不得不说&#xff0c;程序员是一个勤奋而又善于思考的群体。他们不只是代码写得好&#xff0c;善于逻辑思维&#xff0c;即使有一天不做程序员&#xff0c;转行其他岗位了&#xff0c;也能在新的岗位上面玩出花样。 早在2013年的时候&#xff0c;就有一位新浪的PHP程序员转行卖…

单点登录:CAS使用springboot main方法启动cas-server

1.下载demo git clone https://gitee.com/pelin0963/cas-server.git2.使用eclipse导入maven项目。此次我是用的spring tool suite 4导入的。 导入时会用较长时间&#xff0c;10分钟吧。需要下载很多资源。 3.报错&#xff0c;提示缺少jar包 Missing artifact net.shibbolet…