第十一届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组
第十一届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组
文章目录
- 第十一届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组
- 1、字串排序
- 2、门牌制作
- 3、既约分数
- 4、蛇形填数
- 5、跑步锻炼
- 6、七段码
- 7、成绩统计
- 8、回文日期
- 9、子串分值和
- 10、平面切分
1、字串排序
// 转载博客链接
https://blog.csdn.net/weixin_46266058/article/details/123469287
2、门牌制作
#include<iostream>#define ll long long
using namespace std;
int ans;
void getsi(int x){while(x){int t=x%10;if(t==2)ans++;x/=10;}
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);for(int i=1;i<=2020;i++){getsi(i);}cout<<ans;return 0;
}
3、既约分数
读懂题意,不然写完了才发现是错的。
#include<iostream>
#include<set>
#define ll long long
using namespace std;
int gcd(int a,int b){if(a%b==0)return b;return gcd(b,a%b);
}
int ans;
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);for(int i=1;i<=2020;i++)for(int j=1;j<=2020;j++){//if(i==j)continue;if(gcd(i,j)==1)ans++;}cout<<ans;return 0;
}
4、蛇形填数
#include<iostream>
using namespace std;
const int N = 40;
int arr[N][N];
int main(){int r = 1;for(int i=1;i<=N;i++){if(i&1){for(int x=i,y=1;x>=1&&y<=i;x--,y++){arr[x][y]=r++;} }else{for(int y=i,x=1;y>=1&&x<=i;y--,x++){arr[x][y]=r++;}}}cout<<arr[20][20]; return 0;
}
5、跑步锻炼
#include<iostream>
using namespace std;
int ans;
int main(){int month[] = {0,31,29,31,30,31,30,31,31,30,31,30,31};int num = 0;//总共过了多少天,%7求周一for(int i=2000;i<=2020;i++){if(i%100==0||(i%4==0&&i%100!=0))month[2]=29;else month[2]=28;for(int j=1;j<=12;j++){for(int k=1;k<=month[j];k++){// num%7 对应 0~6所以等于2的时候就是周一,k==1 表示初一 if(k==1||num%7==2){ans+=2;}else{ans+=1;}num++;if(i==2020&&j==10&&k==1){cout<<ans;return 0;}}}}return 0;
}
6、七段码
图的建立,并查集,搜索。
#include<bits/stdc++.h>
using namespace std;
const int N = 10;
int use[N], ans, e[N][N], fa[N];
void init(){/* 连边建图,e[i][j] == 1表示第i段和第j段灯管相邻a b c d e f g1 2 3 4 5 6 7*/e[1][2]=e[1][6]=1;e[2][1]=e[2][3]=e[2][7]=1;e[3][2]=e[3][7]=e[3][4]=1;e[4][3]=e[4][5]=1;e[5][4]=e[5][7]=e[5][6]=1;e[6][1]=e[6][5]=e[6][7]=1;e[7][2]=e[7][3]=e[7][5]=e[7][6]=1;
}
int find(int x){return x==fa[x] ? x : (fa[x]=find(fa[x]));
}
void dfs(int d){if(d > 7){/* 并查集判是否在同一集合 */for(int i = 1;i <= 7;i++)fa[i] = i;//初始化父亲集合for(int i = 1;i <= 7;i++)for(int j = 1;j <= 7;j++)if(e[i][j] && use[i] && use[j]){//i和j相邻并且都亮着int fx = find(i),fy = find(j);if(fx != fy)fa[fx] = fy;//如果不在同一集合,合并}int k = 0;for(int i = 1;i <= 7;i++)if(use[i] && fa[i] == i)k++;if(k == 1)ans++;//如果所有亮灯都属于同一个集合return;}use[d] = 1;//打开d这个灯,继续开关下一个灯dfs(d + 1);use[d] = 0;//关闭d这个灯,继续开关下一个灯dfs(d + 1);
}
int main(){init();dfs(1);cout << ans;
}
7、成绩统计
#include<iostream>
#include<stdio.h>
#define ll long long
using namespace std;
const int N = 1e5+10;
int n,a[N];
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>n;for(int i=1;i<=n;i++)cin>>a[i];int x=0,b=0;for(int i=1;i<=n;i++){if(a[i]>=60)x++;if(a[i]>=85)b++;}int a1=x*1000/n;int t1=a1%10;if(t1>=5)a1=a1/10+1;else a1=a1/10;int a2=b*1000/n;int t2=a2%10;if(t2>=5)a2=a2/10+1;else a2=a2/10;printf("%d%\n%d%\n",a1,a2);return 0;
}
8、回文日期
题这么长吓我一跳,没想到挺简单的。。。。
#include<iostream>
#define ll long long
using namespace std;
int t1,t2,y1,y2,m1,m2,d1,d2,ans;
int d[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool isy(int x){return x%400==0||(x%4==0&&x%100!=0);
}
bool isRve(int y,int m,int d){int a[]={y/1000,y/100%10,y/10%10,y%10,m/10,m%10,d/10,d%10};for(int i=0;i<4;i++){if(a[i]!=a[7-i])return false;}return true;
}
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>t1>>t2;y1=t1/10000,y2=t2/10000;m1=t1%10000/100,m2=t2%10000/100;d1=t1-y1*10000-m1*100,d2=t2-y2*10000-m2*100;
// cout<<y1<<" "<<m1<<" "<<d1<<endl;
// cout<<y2<<" "<<m2<<" "<<d2;for(int year=y1;year<=y2;year++){for(int mon=(year==y1?m1:1);mon<=(year==y2?m2:12);mon++){int maxday=(mon==2&&isy(year))?29:d[mon];for(int day=(year==y1&&mon==m1?d1:1);day<=(year==y2&&mon==m2?d2:maxday);day++){if(isRve(year,mon,day)){ans++;}}}}cout<<ans;return 0;
}
9、子串分值和
直接暴力枚举,只能过40%。。。。
#include<iostream>
#include<set>
#define ll long long
using namespace std;
string s;
int main(){ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);cin>>s;int n=s.size();set<char> st;int ans=0;for(int i=0;i<n;i++){for(int j=i;j<n;j++){for(int k=i;k<=j;k++){st.insert(s[k]); } ans+=st.size();st.clear();}}cout<<ans;return 0;
}
10、平面切分
骗了10%。。。。
#include<iostream>
using namespace std;
int main(){int n;cin>>n;int a,b;for(int i=0;i<n;i++)cin>>a>>b;int ans=0;switch(n){case 0:ans=1;break;case 1:ans=2;break;case 2:ans=4;break;case 3:ans=7;break;case 4:ans=11;break;}cout<<ans;return 0;
}
相关文章:

第十一届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组
第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组 文章目录 第十一届蓝桥杯大赛软件赛省赛C/C 大学 B 组1、字串排序2、门牌制作3、既约分数4、蛇形填数5、跑步锻炼6、七段码7、成绩统计8、回文日期9、子串分值和10、平面切分 1、字串排序 // 转载博客链接 https://blog.csdn.net/we…...
Lua语法(三)——元表与元方法
参考链接: 系列链接: Lua语法(一) 系列链接: Lua语法(二)——闭包/日期和时间 系列链接: Lua语法(三)——元表与元方法 系列链接: Lua语法(四)——协程 系列链接: Lua语法(五)——垃圾回收 系列链接: Lua语法(六)——面相对象编程 元表与元方法目录 简介正文元表元方法表相关常…...
Lua语法(五)——垃圾回收
参考链接: 系列链接: Lua语法(一) 系列链接: Lua语法(二)——闭包/日期和时间 系列链接: Lua语法(三)——元表与元方法 系列链接: Lua语法(四)——协程 系列链接: Lua语法(五)——垃圾回收 系列链接: Lua语法(六)——面相对象编程 Lua语法 五——垃圾回收 垃圾回收弱引用表__m…...
已解决java.net.NoRouteToHostException: 无法到达主机异常的正确解决方法,亲测有效!!!
已解决java.net.NoRouteToHostException: 无法到达主机异常的正确解决方法,亲测有效!!! 目录 问题分析 报错原因 解决思路 解决方法 检查网络连接 核实目标地址 检查防火墙和路由器规则 验证VPN/代理设置 修正网络配置 …...
代码随想录算法训练营第三十八天| 509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯
题目与题解 参考资料:动态规划基础 动态规划五步曲 确定dp数组(dp table)以及下标的含义确定递推公式dp数组如何初始化确定遍历顺序举例推导dp数组 509. 斐波那契数 题目链接:509. 斐波那契数 代码随想录题解&am…...

视频中会动的进度条
视频中会动的进度条 1.成果展示:2.步骤: 1.成果展示: 2.步骤:...

C++高级特性:柯里化过程与std::bind(六)
1、柯里化过程 1.1、operator()的引入 现在需要完成这样一个需求:有一个函数每次调用返回的结果不一样。例如:两次调用的返回值都不一样那么就可以达到这种目的 1.1.1、简单点的写法 可以给一个全局的变量(静态变量)ÿ…...

vmware虚拟机补救
更新了虚拟机里面工具和资料,进行了磁盘整理和压缩,虚拟机运行进不去系统了。 网站找的修复方法均不可行。补救措施:利用DiskGenius.exe(要用高版本不然复制的时候就知道了) DG1342.rar - 蓝奏云 加载虚拟硬盘 2008x…...

数据结构(算法)
总结,建议看EXCEL的《算法》页签,不然感觉有点乱 备注原理/步骤时间复杂度空间复杂度串的应用模式匹配简单/暴力O(mn) KMP O(mn) 树的应用树哈夫曼树1、带权路径长度WPL 2、外部排序-最佳归并树1、哈夫曼树的度,只有0和m(m叉…...

SpringCloud集成SkyWalking链路追踪并收集日志2
博主介绍:✌全网粉丝5W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…...

纯小白蓝桥杯备赛笔记--DAY4(数学数据结构图论)
文章目录 数学质因数分解辗转相除法求最大公约数最小公倍数:快速幂乘法逆元费马小定理 逆元乘法逆元素数判定与埃式筛法朴素素数判定法埃式筛法 图论并查集T3:真题--合根植物DijkstraFloyd 基础算法递归,循环,前缀和,差分STL 数学…...
python 最简单的网页爬虫
import requests url"https://news.ifeng.com/c/8OZc7eV01sM" rrequests.get(url) print(r.status_code) print(r.iter_lines()) # 获取响应的内容 content r.text# 打印网页内容 print(content) # responser.json() # print(response) 爬虫知识讲解: …...

二叉树-数据结构
二叉树-数据结构 二叉树是属性结构的一个重要类型。 如下图二叉树形状 二叉树特征如下: 1.二叉树由 n(n > 0) 个节点组成 2.如果 n 为 0,则为空树 3.如果 n 1,则只有一个节点称为根节点(root) 4.每个节点最多有两个节点,节…...
ansible使用shell模块的环境变量问题
在本机写了一个shell脚本,关于操作mysql的,在本机执行脚本可以正常操作数据库,脚本运行正常。 但是使用ansible ansible -i ./hosts test_teledb -m copy -a "src/etc/ansible/scripts/check.sh dest/tmp"ansible -i ./hosts test…...
ChatGPT论文写作指南:写出引人注目的论文
ChatGPT无限次数:点击直达 ChatGPT论文写作指南:写出引人注目的论文 作为一名有着10年经验的专业CSDN网站原创文章优质创作者,在当今的信息爆炸时代,论文写作的重要性愈发显现。如何能够写出引人注目的论文,吸引读者的眼球并获得…...

ARM64架构栈帧回溯
文章目录 前言一、栈帧简介二、demo演示 前言 请参考:ARM64架构栈帧以及帧指针FP 一、栈帧简介 假设下列函数调用: funb() {func() }funa() {funb() }main() {funa() }main函数,funa函数,funb函数都不是叶子函数,其…...
LangChain:大型语言模型(LLMs)-- 基础知识
1、LangChain的调用大型语言模型模块的介绍 LangChain是一个强大的框架,旨在通过调用大型语言模型(LLM)来开发各种语言驱动的应用程序。在LangChain中,LLM不仅仅是一个简单的模型调用,而是一个复杂链条中的关键部分。…...

总分410+专业130+国防科技大学831信号与系统考研经验国防科大电子信息与通信工程,真题,大纲,参考书。
好几个学弟催着,总结一下我自己的复习经历,希望大家复习少走弯路,投入的复习正比换回分数。我专业课831信号与系统130(感觉比估分要低,后面找Jenny老师讨论了自己拿不准的地方也没有错误,心里最近也这经常回…...
chatgpt Team 4.0共享合租账号的新方式
为了更好地满足工作需求,我订阅了GPT PLUS会员,但我发现,4.0每三小时问答40次经常吃灰,而且每月近200元的费用让我感到有点肉痛。 于是,我开始寻找有没有什么替代品。在逛某论坛的时候,发现了一个共享Team…...

类和对象二
一、运算符重载 为了使自定义类型可以使用加减等运算符,CPP提供了一个功能叫运算符重载。 关键字:operator操作符 运算符重载最好定义在类对象里,这也可以避免访问不到私有成员的问题。 代码演示: 在类里定义之后,…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?
在建筑行业,项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升,传统的管理模式已经难以满足现代工程的需求。过去,许多企业依赖手工记录、口头沟通和分散的信息管理,导致效率低下、成本失控、风险频发。例如&#…...

2.Vue编写一个app
1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
Java编程之桥接模式
定义 桥接模式(Bridge Pattern)属于结构型设计模式,它的核心意图是将抽象部分与实现部分分离,使它们可以独立地变化。这种模式通过组合关系来替代继承关系,从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

GO协程(Goroutine)问题总结
在使用Go语言来编写代码时,遇到的一些问题总结一下 [参考文档]:https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现: 今天在看到这个教程的时候,在自己的电…...

C++实现分布式网络通信框架RPC(2)——rpc发布端
有了上篇文章的项目的基本知识的了解,现在我们就开始构建项目。 目录 一、构建工程目录 二、本地服务发布成RPC服务 2.1理解RPC发布 2.2实现 三、Mprpc框架的基础类设计 3.1框架的初始化类 MprpcApplication 代码实现 3.2读取配置文件类 MprpcConfig 代码实现…...
加密通信 + 行为分析:运营商行业安全防御体系重构
在数字经济蓬勃发展的时代,运营商作为信息通信网络的核心枢纽,承载着海量用户数据与关键业务传输,其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级,传统安全防护体系逐渐暴露出局限性&a…...