第十二届蓝桥杯省赛真题(C/C++大学B组)
目录
#A 空间
#B 卡片
#C 直线
#D 货物摆放
#E 路径
#F 时间显示
#G 砝码称重
#H 杨辉三角形
#I 双向排序
#J 括号序列
#A 空间

#include <bits/stdc++.h>
using namespace std;int main()
{cout<<256 * 1024 * 1024 / 4<<endl;return 0;
}
#B 卡片

#include <bits/stdc++.h>
using namespace std;//存储0-9
int arr[10];bool merge(int n)
{//数字n能否被拼成while(n > 0){if(--arr[n%10] < 0) return false;n /= 10; } return true;
}int main()
{for(int i = 0;i < 10;i++)arr[i] = 2021;//遍历 for(int i = 1;i < 1000000;i++) if(!merge(i)) {cout<<i-1<<endl;break;}return 0;
}
#C 直线

#include <bits/stdc++.h>
using namespace std;const int X = 20, Y = 21;int link[X][Y][X][Y], ans;int main()
{for(int x1 = 0;x1 < X;x1++){for(int y1 = 0;y1 < Y;y1++){link[x1][y1][x1][y1] = 1;for(int x2 = 0;x2 < X;x2++){for(int y2 = 0;y2 < Y;y2++){// (x1,y1)->(x2,y2)if(!link[x1][y1][x2][y2]){int x = x1;int x_offset = x1 - x2;int y = y1;int y_offset = y1 - y2;while(x >= 0 && x < X && y >= 0 && y < Y){x -= x_offset;y -= y_offset;}//所有加上偏移量的点都会被访问,全部剔除for(x += x_offset,y += y_offset; x >= 0 && x < X && y >= 0 && y < Y;x += x_offset,y += y_offset){for(int xx = x,yy = y;xx >= 0 && xx < X && yy >= 0 && yy < Y;xx += x_offset,yy += y_offset){link[x][y][xx][yy] = link[xx][yy][x][y] = 1;}}ans++;}}}}}cout<<ans<<endl;return 0;
}
#D 货物摆放

#include <bits/stdc++.h>
using namespace std;typedef long long ll;
ll N = 2021041820210418;
ll ans = 0;
int main()
{set<ll> sets;//2021041820210418//求这个数字的全部因子for(ll i = 1;i * i <= N;i++){if(N % i == 0){sets.insert(i);sets.insert(N / i);}}//遍历因子for(set<ll>::iterator i = sets.begin(); i != sets.end();i++){for(set<ll>::iterator j = sets.begin(); j != sets.end();j++){for(set<ll>::iterator k = sets.begin(); k != sets.end();k++)if(*i * *j * *k == N) ans++;}}cout<<ans<<endl; return 0;
}
#E 路径

#include <bits/stdc++.h>
using namespace std;const int n = 2021;
int metric[n+1][n+1];int gcd(int a,int b)
{if(a % b == 0) return b;return gcd(b, a % b);
}
int lcm(int a,int b)
{return a * b / gcd(a,b);
}int main()
{//每条边都给最大值for(int i = 0;i <= n;i++)for(int j = 0;j <= n;j++)metric[i][j] = 99999999;//计算结点之间的长度for(int a = 1;a <= n;a++){for(int b = min(n,a+21);b > a;b--)metric[a][b] = metric[b][a] = lcm(a,b);}//弗洛伊德算法for(int k = 1;k <= n;k++)for(int i = 1;i <= n;i++)for(int j = 1;j <= n;j++)metric[i][j] = min(metric[i][j], metric[i][k] + metric[k][j]);cout<<metric[1][n]<<endl;return 0;
}
#F 时间显示

测试样例1
Input:
46800999Output:
13:00:00
测试样例2
Input:
1618708103123Output:
01:08:23
#include <bits/stdc++.h>
using namespace std;typedef long long ll;int main()
{ll n,second,minutes,hour;cin>>n;//时 分 秒n /= 1000;hour = (n / 60 / 60) % 24;minutes = (n / 60) % 60;second = n % 60;if(hour < 10) cout<<"0";cout<<hour<<":";if(minutes < 10) cout<<"0";cout<<minutes<<":";if(second < 10) cout<<"0";cout<<second;return 0;
}
#G 砝码称重

测试样例1
Input:
3
1 4 6Output:
10Explanation:
能称出的 10 种重量是:1、2、3、4、5、6、7、9、10、11。
1 = 1;
2 = 6 − 4 (天平一边放 6,另一边放 4);
3 = 4 − 1;
4 = 4;
5 = 6 − 1;
6 = 6;
7 = 1 + 6;
9 = 4 + 6 − 1;
10 = 4 + 6;
11 = 1 + 4 + 6。
#include <bits/stdc++.h>
using namespace std;typedef long long ll;
const int N = 100000+1;
/*定义一个二维数组,分为两行第一行用来存储可以被称出的重量,第j列表示的就是重量j第二行用来临时存放称出的重量,作为重量的中转站dp[i][j] == true时,表示重量j可以被称出dp[i][j] == false时,表示重量j不能被称出
*/
bool dp[2][N];int main()
{int n,w,sum = 0;cin>>n;for(int i = 0;i < n;i++){cin>>w;sum += w;//从重量1开始计算for(int j = 1;j <= sum;j++){if(dp[0][j]){dp[1][abs(w-j)] = true;dp[1][w+j] = true;}}//将第二行数据移动到第一行for(int j = 1;j <= sum;j++){if(dp[1][j]) dp[0][j] = true;}//当前砝码可以被称出 dp[0][w] = true;}int ans = 0;for(int i = 0;i <= sum;i++)if(dp[0][i]) ans++;cout<<ans<<endl;return 0;
}
#H 杨辉三角形


测试样例1
Input:
6Output:
13
#include <bits/stdc++.h>
using namespace std;typedef long long ll;
ll arr[45000];int main()
{ll n;cin>>n;if(n == 1) {cout<<1<<endl;return 0;}arr[0] = 1;ll count = 1;//从第二行开始for(int i = 1;i < 45000;i++){//从右向左移动 for(int j = i;j > 0;j--){arr[j] += arr[j-1];if(arr[j] == n){count += i - j + 1;cout<<count<<endl;return 0;}}count += (i + 1);} //如果某一行的第三列数值已经大于10亿了,说明在这之前都没有对应的数字,这个数字就只能出现在第二列中了 //递增数列求和即可 cout<<(1 + n)*n / 2 + 2<<endl;return 0;
}
#I 双向排序

测试样例1
Input:
3 3
0 3
1 2
0 2Output:
3 1 2Explanation:
原数列为 (1, 2, 3)。
第 1 步后为 (3, 2, 1)。
第 2 步后为 (3, 1, 2)。
第 3 步后为 (3, 1, 2)。与第 2 步操作后相同,因为前两个数已经是降序了。
#include <bits/stdc++.h>
using namespace std;const int N = 100000;
int arr[N];int main()
{int n,m,p,q;cin >>n>>m;for(int i = 0;i < n;i++)arr[i] = i + 1;for(int i = 0;i < m;i++){cin>>p>>q;if(p == 1){sort(arr+q-1,arr+n,less<int>());}else{sort(arr,arr+q,greater<int>());}}for(int i = 0;i < n;i++)cout<<arr[i]<<" ";return 0;
}
#J 括号序列

测试样例1
Input:
((()Output:
5
不会
相关文章:
第十二届蓝桥杯省赛真题(C/C++大学B组)
目录 #A 空间 #B 卡片 #C 直线 #D 货物摆放 #E 路径 #F 时间显示 #G 砝码称重 #H 杨辉三角形 #I 双向排序 #J 括号序列 #A 空间 #include <bits/stdc.h> using namespace std;int main() {cout<<256 * 1024 * 1024 / 4<<endl;return 0; } #B 卡片…...
DC40V降压恒压芯片H4120 40V转5V 3A 40V降压12V 车充降压恒压控制器
同步整流恒压芯片在现代电子设备中发挥着重要作用,为各种设备提供了稳定、高效的电源管理解决方案。 同步整流恒压芯片是一种电源管理芯片,它能够在不同电压输入条件下保持输出电压恒定。这种芯片广泛应用于各种电子设备中,如通讯设备、液晶…...
2、Qt UI控件 -- qucsdk项目使用
前言:上一篇文章讲了qucsdk的环境部署,可以在QDesigner和Qt Creator中看到qucsdk控件,这一篇来讲下在项目中使用qucsdk库中的控件。 一、准备材料 要想使用第三方库,需要三个先决条件, 1、控件的头文件 2、动/静态链…...
MATLAB算法实战应用案例精讲-【人工智能】AIGC概念三部曲(三)
目录 前言 算法原理 大模型 什么是AIGC? AIGC和Chat GPT的关系 常见的AIGC应用...
外汇110:外汇交易不同货币类别及交易注意事项!
外汇市场是一个庞大而复杂的市场,其中有各种各样的货币品种。对于外汇投资者来说,了解外汇品种的特性和走势是比较重要的。1. 货币种类 外汇市场中的货币品种可以分为主要货币、次要货币和外围货币。 主要货币:主要指美元、欧元、英镑、日元、…...
gerrit 拉取失败
在浏览器gerrit的设置界面设置的邮箱地址和在命令行使用git config --gloable user.email设置的邮箱地址必须保持一致吗 在浏览器gerrit的设置界面设置的邮箱地址和在命令行使用git config --global user.email设置的邮箱地址并不一定需要保持一致。这两个邮箱地址是独立的&am…...
大数据行业英语单词巩固20240410
20240410 Communication - 沟通 Example: Effective communication is essential for project success. 有效的沟通对于项目的成功至关重要。 Collaboration - 协作 Example: Team collaboration is crucial in achieving our goals. 团队协作对于实现我们的目标至关重要。 …...
天软特色因子看板 (2024.4 第3期)
该因子看板跟踪天软特色因子A05005(近一月单笔流出金额占比(%),该因子为近一月单笔流出金额占比(% 均值因子,用以刻画下跌时的 单成交中可能存在的抄底现象 今日为该因子跟踪第3期,跟踪其在SH000852 (中证1000) 中的表现,要点如下…...
使用QT 开发不规则窗体
使用QT 开发不规则窗体 不规则窗体贴图法的不规则窗体创建UI模板创建一个父类创建业务窗体main函数直接调用user_dialog创建QSS文件 完整的QT工程 不规则窗体 QT中开发不规则窗体有两种方法:(1)第一种方法,使用QWidget::setMask函…...
如何构建企业经营所需的商业智能(BI)能力
构建企业经营所需的商业智能(BI)能力是一项涉及诸多关键环节与细致考量的系统工程,通过科学的数据处理、分析与应用,赋能企业实现精准决策,提升运营效率,优化业务流程,并在竞争激烈的市场环境中…...
【vue】watch监听取不到this指向的数?
今天同事问我,watch里this指向的数值,别的地方却可以打印出来。工具也能看到数值,但打印出来却是undifined,先看看代码: 懒得打字了直接上截图吧 ps: 在Vue组件中,如果你在watch选项中访问this…...
Ubuntu-22.04安装VMware虚拟机并安装Windows10
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、VMware是什么?二、安装VMware1.注册VMware账号2.下载虚拟机3.编译vmmon&vmnet4.加载module5.安装bundle 三、安装Windows101.基础配置2.进阶…...
ELK企业日志分析系统介绍
前言 随着企业级应用系统日益复杂,随之产生的海量日志数据。传统的日志管理和分析手段,难以做到高效检索、实时监控以及深度挖掘潜在价值。在此背景下,ELK日志分析系统应运而生。本文将从ELK 日志分析系统的原理、架构及其在实践中的应用做相…...
在C#中读取写入字节流与读取写入二进制数据, 有何差异?
在C#中,读取和写入字节流与读取和写入二进制数据有些许不同,尽管它们在某些情况下可能会重叠使用。以下是它们之间的主要区别: 读取和写入字节流: 读取和写入字节流通常指的是处理文件或流中的原始字节数据。在C#中,可…...
数据库相关知识总结
一、数据库三级模式 三个抽象层次: 1. 视图层:最高层次的抽象,描述整个数据库的某个部分的数据 2. 逻辑层:描述数据库中存储的数据以及这些数据存在的关联 3. 物理层:最低层次的抽象,描述数据在存储器中时如…...
【汇编语言实战】输出数组中特定元素
C语言描述: #include <stdio.h> int main() {int a[]{1,2,3,4,5,6};printf("%d",a[3]); }汇编语言: include irvine32.inc .data arr dword 1,2,3,4,5,6 num dword 1 ;输出第二个元素 .code main proc mov esi,offset arr mov edx,nu…...
WordPress LayerSlider插件SQL注入漏洞复现(CVE-2024-2879)
0x01 产品简介 WordPress插件LayerSlider是一款可视化网页内容编辑器、图形设计软件和数字视觉效果应用程序,全球活跃安装量超过 1,000,000 次。 0x02 漏洞概述 WordPress LayerSlider插件版本7.9.11 – 7.10.0中,由于对用户提供的参数转义不充分以及缺少wpdb::prepare(),…...
MOS管的判别符号记忆与导通条件
参考链接 MOS管的判别与导通条件 (qq.com)https://mp.weixin.qq.com/s?__bizMzU3MDU1Mzg2OQ&mid2247520228&idx1&sn5996780179fbf01f66b5db0c71622ac3&chksmfcef6c86cb98e590e3d3734ee27797bdded17b6b648b3b0d3b1599e8a4496a1fa4e457be6516&mpshare1&…...
数据指标与经营智慧:构建有洞见的经营分析报告
经营分析报告不仅仅是数字的堆砌,它是企业运营状况的“晴雨表”,能够反映企业的健康状况和发展潜力。一个有洞见的经营分析报告能够帮助管理层识别问题、评估风险、发现机会,并据此制定相应的战略和行动计划。 关注【数据化运营圈】共同探讨…...
Spring 中类似 aBbb 单字母单词序列化与反序列问题
文章目录 前言代码准备问题排查lombok自定义生成 get、set 结合源码解析使用 lombok使用 lombok 自定义生成 user 对象 get、set 方法 如何解决使用注解 JsonProperty("aTest")自定义实现符合 Spring 规范的 get set 方法 个人简介 前言 最近在使用 spring boot mvc…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
使用分级同态加密防御梯度泄漏
抽象 联邦学习 (FL) 支持跨分布式客户端进行协作模型训练,而无需共享原始数据,这使其成为在互联和自动驾驶汽车 (CAV) 等领域保护隐私的机器学习的一种很有前途的方法。然而,最近的研究表明&…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
Mobile ALOHA全身模仿学习
一、题目 Mobile ALOHA:通过低成本全身远程操作学习双手移动操作 传统模仿学习(Imitation Learning)缺点:聚焦与桌面操作,缺乏通用任务所需的移动性和灵活性 本论文优点:(1)在ALOHA…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
