题解 -- 第六届蓝桥杯大赛软件赛决赛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) 声明格式: 四…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...
条件运算符
C中的三目运算符(也称条件运算符,英文:ternary operator)是一种简洁的条件选择语句,语法如下: 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true,则整个表达式的结果为“表达式1”…...
从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ 一、RabbitMQ概述 RabbitMQ RabbitMQ最初由LShift和CohesiveFT于2007年开发,后来由Pivotal Software Inc.(现为VMware子公司)接管。RabbitMQ 是一个开源的消息代理和队列服务器,用 Erlang 语言编写。广泛应用于各种分布…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
文件上传漏洞防御全攻略
要全面防范文件上传漏洞,需构建多层防御体系,结合技术验证、存储隔离与权限控制: 🔒 一、基础防护层 前端校验(仅辅助) 通过JavaScript限制文件后缀名(白名单)和大小,提…...
Xcode 16 集成 cocoapods 报错
基于 Xcode 16 新建工程项目,集成 cocoapods 执行 pod init 报错 ### Error RuntimeError - PBXGroup attempted to initialize an object with unknown ISA PBXFileSystemSynchronizedRootGroup from attributes: {"isa">"PBXFileSystemSynchro…...
GraphRAG优化新思路-开源的ROGRAG框架
目前的如微软开源的GraphRAG的工作流程都较为复杂,难以孤立地评估各个组件的贡献,传统的检索方法在处理复杂推理任务时可能不够有效,特别是在需要理解实体间关系或多跳知识的情况下。先说结论,看完后感觉这个框架性能上不会比Grap…...
