【刷题】2023年第十四届蓝桥杯大赛软件类省赛C/C++大学A组真题

news2024/12/28 2:54:00

蓝桥杯2023年第十四届省赛真题-平方差 - C语言网 (dotcpp.com)

 初步想法,x = y2 − z2=(y+z)(y-z)

即x=a*b,a=y+z,b=y-z

2y=a+b

即a+b是2的倍数就好了。

即x存在两个因数之和为偶数就能满足条件。

但时间是(r-l)*x,数据1e9,直接T了

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
map<int,int> mp;
int cnt;

bool judge(int  x)
{
	for(int i=1;i<=x;i++)//找两个因数 
	{
		if(x%i!=0) continue;
		int d=x/i+i;
		if(d%2==0||x==1)//说明是整数 
		{
			return true; 
		} 
	}
	return false;
}
signed main()
{
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	
	int l,r;
	cin>>l>>r; 
	
	for(int i=l;i<=r;i++)
	{
		if(judge(i)) cnt++; 
	}
	cout<<cnt;
    return 0;
}

运行结果:

进一步分析:

根据题意多写几个,不难发现奇数似乎都能拆成y2 − z2的形式?因此,我们从奇偶的角度来找规律。

(这个地方写错了,是\left ( k+1 \right )^{^{2}}-\left ( k \right )^{^{2}}

那么,在这里就可以得出结论辣。想要数字能表示成y2-z2的形式,只有两种可能:

1.奇数   2.4的倍数

代码:

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int cnt;

signed main()
{
	int l,r;
	cin>>l>>r; 
	
	for(int i=l;i<=r;i++)
	{
		if(i%2) cnt++;
		if(i%4==0) cnt++;
	}
	cout<<cnt;
    return 0;
}

 (这一步还不能过属实有点钻牛角尖了。。。。。

但是好在,已知一个数x,对应的奇数、4的倍数的数的个数是可以算出来的。

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+10;
int cnt;
signed main()
{
	int l,r;
	cin>>l>>r; 
	
	int d=(l-1)/2;
	if((l-1)%2==0) d--;
	
	int p=l/4;
	if((l%4)==0) p--;
	
	cnt=(r-1)/2-d+r/4-p;
	cout<<cnt;
    return 0;
}

蓝桥杯2023年第十四届省赛真题-更小的数 - C语言网 (dotcpp.com)

 暴力

思路:

任取子串起点为i,终点为j。

然后运用双指针算法对子串进行判断。如果两边相等就往中间走。如果左边大了,说明这个子串反转后会变小;如果右边大了,说明这个子串反转后会变大。

#include<bits/stdc++.h>
using namespace std;
const int N=5e3+10;
string x;
int cnt;

signed main()
{
	cin>>x;
	for(int i=0;i<x.length();i++)
	{
		for(int j=i+1;j<x.length();j++)
		{
			int l=i,r=j;
			while(l<=r)
			{
				if(x[l]<x[r]) break;
				if(x[l]>x[r])
				{
					cnt++;
					break;
				}else l++,r--;
			}
		}
	}
	cout<<cnt;
	return 0;
}

 暴力做法没想到在这个平台上直接过了,于是换了个平台P2070 - [蓝桥杯2023初赛] 更小的数 - New Online Judge (ecustacm.cn)

果然时间超限。。 

 

DP

上面是三重循环,能想到的就是优化最后那一层while循环。

如果左边大了,说明这个子串反转后会变小;如果右边大了,说明这个子串反转后会变大。如果两边相等就l++,r--,这就意味着这种情况下当前这个字串的状态可以由较小的那一层决定。我们就可以想到DP。

稍微画一下就可以理解,dp[i][j]由dp[i+1][j-1]得到,因此最外面一层循环我们要从大到小,里面一层顺序无所谓,因为先得到dp[i+1][j]还是dp[i+1][j-1]对dp[i][j]没有任何影响。

#include<bits/stdc++.h>
using namespace std;
const int N=5e3+10;
string x;
int cnt;
int dp[N][N];

signed main()
{
	cin>>x;
	for(int i=x.length()-1;i>=0;i--)
	{
		for(int j=i+1;j<x.length();j++)
		{
			if(i>=j) continue;
			if(x[i]>x[j]) dp[i][j]=1;
			else if(x[i]==x[j]) dp[i][j]=dp[i+1][j-1];
			cnt+=dp[i][j];
		}
	}
	cout<<cnt;
	return 0;
}

 蓝桥杯2023年第十四届省赛真题-颜色平衡树 - C语言网 (dotcpp.com)

暂时能力达不到。。。。

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

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

相关文章

C语言回调函数与注册函数的使用

概述 在项目中&#xff0c;经常见到此写法&#xff0c;在此写个demo&#xff0c;方便其他工程师参阅。 开发环境&#xff1a;Visual Studio Community 2022 1、代码 #include <stdio.h>//封装库代码 typedef struct {bool status;void (*setStatus)(int status); }T_…

动手吧,vue单选框

单选框到处可见&#xff0c;组件库不方便自定义样式&#xff0c;还是自己写吧。 效果图&#xff1a; 1、template部分 <template><labelclass"v-radio flex":class"[{ disable: disabled }]":aria-disabled"disabled"><spancla…

如何搭建专属的物联网私有云?需要考虑哪些因素?

随着物联网技术的快速发展&#xff0c;越来越多的企业开始意识到搭建专属的物联网私有云的重要性。私有云是指企业自主建设和管理的云服务环境&#xff0c;其中企业可以实现对数据和服务的全面控制&#xff0c;同时也可以享受云服务的高效性和灵活性。 一、企业做专属物联网私…

基于jenkins+k8s实现devops

1、背景 由于jenkins运行在k8s上能够更好的利用动态agent进行构建。所以写了个部署教程&#xff0c;亲测无坑 2、部署 1、创建ns kubectl create namespace devops 2、kubectl apply -f jenkins.yml apiVersion: v1 kind: ServiceAccount metadata:name: jenkinsnamespace…

用于图像分类的预训练模型(PyTorch实现)

用于图像分类的预训练模型&#xff08;PyTorch实现&#xff09; 在本文中&#xff0c;我们将介绍一些使用 TorchVision 模块中存在的预训练网络的实践示例——用于图像分类的预训练模型。 1. 基于预训练模型进行图像分类 预训练模型是在 ImageNet 等大型基准数据集上训练的神…

力扣刷题-链表-移除链表元素

203.移除链表元素 题意&#xff1a;删除链表中等于给定值 val 的所有节点。 示例 1&#xff1a; 输入&#xff1a;head [1,2,6,3,4,5,6], val 6 输出&#xff1a;[1,2,3,4,5] 示例 2&#xff1a; 输入&#xff1a;head [], val 1 输出&#xff1a;[] 示例 3&#xff1a; 输…

arduino u8g2 表情字库制作

U8G2 下载原代码 &#xff1a; GitHub - olikraus/u8g2: U8glib library for monochrome displays, version 2 1.制作图片 使用FLASH 或任何可以画图的软件制作动态图片PNG格式 大小最好先设定好如40x80 ,最好不要太大 128X64,60X60 将制作好的图片放入 下载好的 u8g2-master…

【每日一题】1539. 第 k 个缺失的正整数

1539. 第 k 个缺失的正整数 - 力扣&#xff08;LeetCode&#xff09; 给你一个 严格升序排列 的正整数数组 arr 和一个整数 k 。 请你找到这个数组里第 k 个缺失的正整数。 示例 1&#xff1a; 输入&#xff1a;arr [2,3,4,7,11], k 5 输出&#xff1a;9 解释&#xff1a;缺失…

国科大体系结构习题 | 第二章 计算机系统结构基础

第二章 习题汇总 Q1. 在3台不同指令系统的计算机上运行同一程序P时&#xff0c;A机需要执行 1.0 1 0 8 1.010^8 1.0108条指令&#xff0c;B机需要执行 2.0 1 0 8 2.0 10^8 2.0108条指令&#xff0c;C机需要执行 4.0 1 0 8 4.010^8 4.0108条指令&#xff0c;但实际执行时间…

Linux 操作技巧

目录 一、shell-命令解释器 二、Linux中的特殊符号 三、命令历史--history 一、shell-命令解释器 shell——壳&#xff0c;命令解释器&#xff0c;负责解析用户输入的命令 ——内置命令&#xff08;shell内置&#xff09; ——外置命令&#xff0c;在文件系统的某个目录下&…

Redis Insight 版本 2.32 翻译中文

使用教程 链接&#xff1a;https://pan.baidu.com/s/11pWBZ3uQSRZbuMS8POkLCw?pwd2ke5 一、下载renderer.js 1.打开安装好的软件 2、在这里添加我们指定的文件夹&#xff0c;这个文件夹是你随便创建的&#xff0c;你可以指定任何目录 3.选择renderer.js右键保存覆盖 4.在r…

Flask数据库之SQLAlchemy--介绍--链接数据库

目录 SQLAlchemy介绍 SQLAlchemy连接数据库 SQLAlchemy介绍 数据库是一个网站的基础&#xff01;&#xff01;&#xff01; 比如MySQL、MongoDB、SQLite、PostgreSQL等&#xff0c;这里我们以MySQL为例进行讲解。 SQLAlchemy是一个ORM框架 对象关系映射&#xff08;英语&…

chrome浏览器 调试鼠标悬停后出现的元素样式

鼠标悬停后出现的样式&#xff0c;我们遇见的有两种情况&#xff0c;一种是用css设置的hover时的样式&#xff0c;第二种就像el-tooltip组件&#xff0c;鼠标悬停时出现提示文字的样式。 一、css设置的hover时的样式 1、按【F12】键&#xff08;或右键点击【检查】&#xff09…

星闪空口技术初探

星闪技术设计目标 在星闪技术的应用场景中&#xff0c;最低的时延要求达到了20us量级&#xff0c;比如智能座舱的主动降噪。最高的可靠性要求达到了99.9999%&#xff0c;比如智能制造的传感器与执行器的消息收发。除了低时延和高可靠之外&#xff0c;高精度同步、多并发和信息…

Linux工具——gdb

目录 一&#xff0c;gdb简介 二&#xff0c;gdb的指令 1.查看gdb是否有下载 2.需要明确的知识点 3.调试指令 1.打开调试代码 2.以某行为起点显示代码 3.打断点&#xff0c;查看断点&#xff0c;删除断点&#xff0c;禁用断点&#xff0c;启用断点 4.逐过程&#xff0c;逐…

灵活运用OSI模型提升排错能力

1.OSI模型有什么实际价值&#xff1f; 2.二层和三层网络的区别和应用&#xff1b; 3.如何通过OSI模型提升组网排错能力&#xff1f; -- OSI - 开放式系统互联 - OSI参考模型 - 一个互联标准 -- 软件硬件 - 定义标准 数据通信的标准 -- 厂商 思科 华为 华三…

【Spring】Spring Security学习笔记

基本概念 概念定义认证判断一个用户身份是否合法的过程(登录过程)会话为了避免用户的每次操作都进行认证, 将用户的信息保存在会话中. 常见的会话有基于session的模式和基于token的模式授权校验用户是否有权限访问某个资源 认证是为了验证用户的身份; 授权是为了验证用户是否有…

生长刺激表达基因2蛋白(ST2)介绍

生长刺激表达基因2蛋白&#xff08;Growth stimulation expressed gene 2&#xff0c;ST2&#xff09;&#xff0c;也称为T1&#xff0c;IL1RL1或Fit1&#xff0c;编码基因定位于染色体2q12位点上&#xff0c;约40kb。属于白细胞介素-1&#xff08;interleukin-1&#xff0c;IL…

2023华为杯数学建模研赛E题全解析

2023华为杯数学建模研赛E题解析&#xff0c;完整版已出!!! 包含所有模型、代码、结果&#xff0c;39页技术文档&#xff0c;详细内容如下! 免费版链接已放在下面&#xff0c;需要的同学可以直接自取~ 【云顶数模】2023研究生数学建模免费链接&#xff1a; https://pan.baid…

Python爬虫教程:解析网页中的元素

前言&#xff1a; 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 在我们理解了网页中标签是如何嵌套&#xff0c;以及网页的构成之后&#xff0c; 我们就是可以开始学习使用python中的第三方库BeautifulSoup筛…