题解 -- 第六届蓝桥杯大赛软件赛决赛C/C++ 大学 C 组
https://www.lanqiao.cn/paper/
1 . 分机号
模拟就行 :
inline void solve(){int n = 0 ;for(int a=1;a<=9;a++){for(int b=0;b<=9;b++){for(int c=0;c<=9;c++){if(a>b && b>c){n ++ ;}}}}cout << n << endl ;
}
2 . 五星填数
直接调用全排列的库函数 , 然后求可能情况 ;
#include <iostream>
#include <algorithm>
using namespace std;int main() {int sum = 0;int v[10] = {1,2,3,4,5,6,8,9,10,12};do {int t = v[0]+v[2]+v[5]+v[8];if(t == v[0]+v[3]+v[6]+v[9] && t == v[1]+v[2]+v[3]+v[4]&& t == v[1]+v[5]+v[7]+v[9]&& t == v[4]+v[6]+v[7]+v[8])sum++;} while(next_permutation(v, v+10)); //全排列求所有组合 cout << sum/10; return 0;
}
3 . 机器人繁殖
推公式,找规律 :
// 第0年 : t = x ; p = x ;
// 第一年 : t = x + 2 * x - 1 ; p = 2 * x - 1 ;
// 第二年 : t = t + 2 * p - 1 ; p = 2 * p - 1 ;
#include <iostream>
#include <cmath>
using namespace std;int main()
{double n, s;cin >> n >> s;cout << (s - 2 - n + pow(2, n + 1)) / (pow(2, n + 1) - 1) << endl;return 0;
}
4 . 穿越雷区
DFS
#include <bits/stdc++.h>
#define MAX 100
using namespace std;int n; //代表方阵的大小
int ans; //记录最优解的步数,初始化一个很大的值
char arr[MAX][MAX]; //代表方阵中的每一个元素
int step[MAX][MAX]; //记录从起点到xy点最少走了几步//x,y代表坐标,刚开始x,y应该代表A的坐标;cnt代表目前移动了几步
void DFS(int x,int y,int cnt){//如果当前步数大于最优解的步数if(cnt>ans) return;//如果当前步数大于到该点的最少步数if(cnt>step[x][y]) return;//判断移动的合理性if(x<1 ||x>n ||y<1 ||y>n) return;//判断是否到达终点if(arr[x][y]=='B'){//到达终点后,ans记录当前情况下移动的步数,在后面的递归中跟其他情况的移动步数作比较ans = cnt;return;}step[x][y]=cnt;int x1,y1;x1 = x+1;y1 = y; //右移一格if(arr[x1][y1]!=arr[x][y]) DFS(x1,y1,cnt+1);x1 = x-1;y1 = y; //左移一格if(arr[x1][y1]!=arr[x][y]) DFS(x1,y1,cnt+1);x1 = x;y1 = y+1; //上移一格if(arr[x1][y1]!=arr[x][y]) DFS(x1,y1,cnt+1);x1 = x;y1 = y-1; //下移一格if(arr[x1][y1]!=arr[x][y]) DFS(x1,y1,cnt+1);
}int main(){int x,y;ans=INT_MAX;cin>>n;for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) step[i][j]=INT_MAX;for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) cin>>arr[i][j];//在方阵中找到A的位置for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(arr[i][j]=='A'){x=i;y=j;break;}}}DFS(x,y,0);if(ans==INT_MAX) cout<<-1<<endl;else cout<<ans<<endl;
}
5 . 切开字符串
只能过40% ;
#include<bits/stdc++.h>
#define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define endl '\n'
typedef long long LL;
const int mod = 1e9+7;
const int N = 2e5+10;
using namespace std;bool pd(string s){int i = 0 , j = s.size() - 1 ;while(i < j){if(s[i++] != s[j--]) return false ; }return true ;
}inline void solve(){int n ; cin >> n ;string s ; cin >> s ;set<string> e , f ;vector<int> a(n) , b(n) ;a[0] = 1 ;for(int i=0;i<n;i++){for(int j=i;j>=0;j-=2){int len = i-j+1 ;string str = s.substr(j,len) ;if(pd(str)) e.insert(str) ;}a[i] = e.size() ;}b[n-1] = 0 ;for(int i=n-1;i>=0;i--){for(int j=i;j<n;j++){int len = j-i+1;string str = s.substr(i,len) ;if(len%2==0 || !pd(str)) f.insert(str) ; }b[i] = f.size() ;}int ans = 0 ;for(int i=1;i<n;i++){ans = max(ans,a[i-1]*b[i]) ;}cout << ans << endl ;
}signed main()
{IOSint _ = 1;while(_ --) solve();return 0;
}
相关文章:
题解 -- 第六届蓝桥杯大赛软件赛决赛C/C++ 大学 C 组
https://www.lanqiao.cn/paper/ 1 . 分机号 模拟就行 : inline void solve(){int n 0 ;for(int a1;a<9;a){for(int b0;b<9;b){for(int c0;c<9;c){if(a>b && b>c){n ;}}}}cout << n << endl ; } 2 . 五星填数 直接调用全排列的库函数…...
Lua脚本的使用
一、使用lua脚本扣减单个商品的库存 SpringBootTest class LuaTests {AutowiredStringRedisTemplate stringRedisTemplate;Testvoid test3() {for (int i 1; i < 5; i) {stringRedisTemplate.opsForValue().set("product."i,String.valueOf(i));}}Testvoid test…...
hcia datacom课程学习(5):MAC地址与arp协议
1.MAC地址 1.1 含义与作用 (1)含义: mac地址也称物理地址,是网卡设备在数据链路层的地址,全世界每一块网卡的mac地址都是唯一的,出厂时烧录在网卡上不可更改 (2)作用:…...
unbuntu mysql8.0新建用户及开启远程连接
MySQL更新到8.0以上版本后,在创建连接远程的用户的时候和之前5.x的版本有了很大的不同,不能使用原来同时创建用户和授权的命令。 以下是记录的MySQL8.0创建用户并授权的命令: 查看用户表: user mysql; select host,user,authen…...
Intel FPGA (1):线性序列机
Intel FPGA (1):线性序列机 前提摘要 个人说明: 限于时间紧迫以及作者水平有限,本文错误、疏漏之处恐不在少数,恳请读者批评指正。意见请留言或者发送邮件至:“Email:noahpanzzzgmail.com”。本博客的工程文件均存放在…...
翻译: 硅谷软件工程师面试:准备所需的一切
没有人有时间去做成百上千道LeetCode题目,好消息是你实际上并不需要做那么多题目就能够在FAANG公司找到工作! 我曾经在Grab工作,这是东南亚的一家共享出行公司,但我对工作感到沮丧,想要进入FAANG公司,但我…...
视频推拉流EasyDSS点播平台云端录像播放异常的问题排查与解决
视频推拉流EasyDSS视频直播点播平台可提供一站式的视频转码、点播、直播、视频推拉流、播放H.265视频等服务,搭配RTMP高清摄像头使用,可将无人机设备的实时流推送到平台上,实现无人机视频推流直播、巡检等应用。 有用户反馈,项目现…...
kubuntu23.10安装sdl2及附加库和 sfml2.5.1
2024年3月28号,四,晚上kubuntu23.10下安装了sdl2的如下,没有安装gfx。 sudo apt install libsdl2-dev sudo apt install libsdl2-image-dev sudo apt install libsdl2-ttf-dev sudo apt install libsdl2-mixer-dev sudo apt install libsdl2…...
Centos JDK1.8 下载安装
https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html 一 RPM包安装 rpm -ivh jdk-8u391-linux-x64.rpm /etc/profile export JAVA_HOME/usr/java/jdk1.8.0-x64 export PATH$JAVA_HOME/bin:$PATHsource /etc/profile二 tar.gz 包手动…...
iOS开发进阶(十四):xcodebuild 命令应用详解
文章目录 一、前言二、xcodebuild 命令汇总三、xcodebuild 可选命令四、exportOptionsPlist文件内容配置说明五、项目实操六、拓展阅读 一、前言 关于iOS组包,详参博文《ReactNative进阶(三十四):Jenkins 流水线 组包 iOS 应用包…...
uniapp 开发之原生Android插件
开发须知 在您阅读此文档时,我们假定您已经具备了相应Android应用开发经验,使用Android Studio开发过Android原生。也应该对HTML,JavaScript,CSS等有一定的了解, 并且熟悉在JavaScript和JAVA环境下的JSON格式数据操作等。 为了插件开发者更方便快捷的开…...
构建第一个JS应用(FA模型)
创建JS工程 若首次打开DevEco Studio,请点击Create Project创建工程。如果已经打开了一个工程,请在菜单栏选择File > New > Create Project来创建一个新工程。选择Application应用开发(本文以应用开发为例,Atomic Service对…...
物联网学习2、MQTT 发布/订阅模式介绍
MQTT 发布/订阅模式 发布订阅模式(Publish-Subscribe Pattern)是一种消息传递模式,它将发送消息的客户端(发布者)与接收消息的客户端(订阅者)解耦,使得两者不需要建立直接的联系也不…...
docker--部署 (超详版) (五)
环境准备:docker,mysql,redis,镜像,nginx 把虚拟机打开,连接xshell,参考博客: https://blog.csdn.net/m0_74229802/article/details/136965820?spm1001.2014.3001.5501 一&#x…...
谷粒商城——通过接口幂等性防止重复提交订单
如果用户向后端服务提交多次相同订单的提交服务,那么后端应该只生成一条订单记录。 有一些操作天然是幂等的,如查询操作和删除操作等。 幂等性实现 1.token机制(仅这个方法适用于订单的重复提交) 后端先生成1个令牌将其记录在R…...
谈谈MVCC机制
在MySQL中,MVCC(多版本并发控制)是InnoDB存储引擎使用的并发控制机制。它提供对数据的并发访问,并确保多用户环境中数据的一致性和隔离性。 InnoDB通过“Undo log”存储每条记录的多个版本,提供历史记录供读取&#x…...
Linux之用户账号、用户组和与账号有关的系统文件
目录 一、基本介绍 1.用户和用户组 2.UID和GID 二、 账户管理 1.查看用户的UID和GID 2.添加账户 3.删除账号 4.修改账号 5.账户口令 三、分组管理 1.新增用户组 2.删除用户组 3.修改用户组 4.用户组切换 四、与账号有关的系统文件 1./etc/passwd 2./etc/shado…...
mac 安装 pip,如果你的电脑已经有 python3
文章目录 如果没装 如果你的电脑已经有 python3. 安装 pip 执行以下命令, 输入 python3 -m ensurepip --upgrade ,按下Enter就大功告成了! 安装后查看版本: pip3 -V 如果没装 先安装 python,建议使用 homebrew。 …...
java 枚举
枚举的格式 枚举是一种特殊的类 枚举类的最开始必须罗列所有类型 枚举类提供了一些父类的方法 values() :获取所有的的枚举对象,是一个数组 public enum A {A1, A2, A3;String name;A() {this.name "default";}String getName() {return name;}void setName(Strin…...
Java学习之类和对象、内存底层
目录 表格结构和类结构 表格的动作和类的方法 与面向过程的区别 具体实现 对象和类的详解 类的定义 属性(field 成员变量) 方法 示例--编写简单的学生类 简单内存分析(理解面向对象) 构造方法(构造器 constructor) 声明格式: 四…...
静态前端项目实战:从营销页到现代化门户的架构与实现
1. 项目概述:一个纯粹的静态前端项目最近在GitHub上看到了一个名为“Vibe Code”的项目,它的README写得非常漂亮,充满了各种炫酷的特性介绍,比如支持Claude Code、OpenAI Codex等AI编程助手,还有深色/亮色主题切换、多…...
收藏!AI时代程序员的“避坑指南“与“财富密码“,小白也能轻松逆袭大模型开发!
文章反驳了AI将取代程序员的论调,指出程序员面临的是结构性冲击,初级岗位收缩但中高端岗位爆发式增长。AI将替代重复劳动,促使程序员向上迁移至系统架构设计等高价值岗位。AI岗位薪资远超行业平均水平,程序员通过拥抱AI技术&#…...
基于OpenAI API与社交平台集成的智能聊天机器人构建指南
1. 项目概述:一个整合社交与AI的自动化工具箱最近在GitHub上看到一个挺有意思的项目,叫“Whatsapp_Instagram_Messanger_ChatGPT_OpenAI”。光看这个标题,你大概就能猜到它的野心不小——它试图把WhatsApp、Instagram、Messenger这几个主流社…...
基于GPT-4与Neo4j构建智能推荐聊天机器人:从原理到实践
1. 项目概述:一个能“读懂”并“修改”数据库的智能聊天机器人 最近在捣鼓一个挺有意思的开源项目,叫 NeoGPT-Recommender 。简单来说,它不是一个普通的聊天机器人,而是一个能真正理解你、并基于你的喜好动态更新知识库的智能助…...
两级宽带反馈放大器设计与优化方法
1. 两级宽带反馈放大器设计概述在当今高速通信和信号处理系统中,宽带放大器作为关键模拟模块,其性能直接影响整个系统的信号完整性。传统的手工设计方法在面对现代SoC日益复杂的性能需求时显得力不从心,特别是在需要同时满足增益、带宽、噪声…...
【数字孪生实战案例】怎样设置数据筛选条件,精准控制电子地图飞线的呈现效果?~山海鲸可视化
在数据可视化大屏应用里,电子地图飞线是展示跨地域关联数据的重要载体。当飞线数据量大、维度繁杂时,通过配置数据条件对地图飞线做精准筛选,能够过滤冗余信息、聚焦核心数据,让地图呈现更简洁直观,有效提升整体可视化…...
macOS Unlocker V3.0:在Windows/Linux电脑上运行macOS虚拟机的终极指南
macOS Unlocker V3.0:在Windows/Linux电脑上运行macOS虚拟机的终极指南 【免费下载链接】unlocker VMware Workstation macOS 项目地址: https://gitcode.com/gh_mirrors/unlo/unlocker macOS Unlocker V3.0是一款革命性的开源工具,专为VMware W…...
汽车电子系统如何重构价值:从马力到算力的产业变革
1. 从马力到算力:汽车价值创造的核心迁移十年前,如果你问一个车迷,一辆好车的灵魂是什么,答案多半会指向引擎盖下的那台机器——它的排量、气缸数,以及最终输出的马力。那个时代,机械性能是绝对的王者&…...
UWB-IMU、UWB定位对比研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Pega Helm Charts:Kubernetes上自动化部署Pega平台的完整指南
1. 项目概述与核心价值如果你正在或即将在Kubernetes上部署Pega Platform,那么pegasystems/pega-helm-charts这个项目绝对是你绕不开的“官方说明书”和“自动化工具箱”。简单来说,这是Pega官方维护的一套Helm Chart,专门用于将Pega Platfor…...
