第十四届蓝桥杯c++研究生组

A
在这里插入图片描述
关键思路是求每个十进制数的数字以及怎么在一个数组中让判断所有的数字次数相等。
求每个十进制的数字

while(n!=0){int x = n%10;//x获取了n的每一个位数字n/=10;}

扩展:求二进制的每位数字 (注意:进制转换、1的个数、位运算)

x >> k & 1//k代表第几个位置

判断几个数中的数字次数相等
下面是判断3个数中的数字次数相等

bool swap(int n,int i,int j){int a[]={0,0,0,0,0,0,0,0,0,0};while(n!=0){int x = n%10;a[x]++;n/=10;}while(i!=0){int x = i%10;a[x]--;i/=10;}while(j!=0){int x = j%10;a[x]--;j/=10;}for(int i=0;i<=9;i++){if(a[i]!=0){return false;}}return true;
}

完整代码:

#include <iostream>
#include <cmath>
using namespace std;bool swap(int n,int i,int j){int a[]={0,0,0,0,0,0,0,0,0,0};while(n!=0){int x = n%10;a[x]++;n/=10;}while(i!=0){int x = i%10;a[x]--;i/=10;}while(j!=0){int x = j%10;a[x]--;j/=10;}for(int i=0;i<=9;i++){if(a[i]!=0){return false;}}return true;
}bool is(int n){for(int i=2;i<=sqrt(n)+1;i++){if(n%i==0){int j = n/i;if(swap(n,i,j)){return true;}} }return false;
}  int main(){int sum=0;for(int i=1;i<=1000000;i++){if(is(i)){sum++;}}cout << sum << endl;return 0;
}

B
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
爆搜

#include <bits/stdc++.h>
using namespace std;int a[][20]={{1,1,0,1,0,1,1,1,1,1},{1,1,1,0,0,1,1,1,1,0},{1,1,0,0,1,0,1,1,1,1},{1,0,1,1,0,1,1,1,1,0},{1,0,1,0,1,1,1,1,0,0},{1,0,0,1,0,1,0,1,0,1},{1,1,1,1,1,1,1,1,1,0},{0,1,1,1,1,1,1,1,1,0},{0,1,1,0,1,0,1,1,1,1},{1,0,1,0,0,1,0,1,0,0},
};
map<int, int> mp;
int ans;int main(){for(int i=0;i<10;i++){for(int j=0;j<10;j++){if(a[i][j]==0){continue;}for(int k=i+1;k<10;k++){for(int p=0;p<=j;p++){if(a[k][p]==0){continue;}if (a[k + j - p][p + k - i] == 1 && a[i + j - p][j + k - i] == 1){int len = (j - p) * (j - p) + (k - i) * (k - i);if (mp[len] == 0) {ans++; mp[len] = 1;}}}}}}cout << ans; return 0;
} 

扩展map的用法
map容器是一个键值对key—value的映射,其内部实现是一颗以key为关键吗的红黑树。mapkeyvalue可以是任意类型,其中key必须定义小于号运算符。
map的声明

map<key_type,value_type> name;
//列子
map<int int> mp;
map<string,int> mp;

方法
size/empty/clear/begin/end/insert/erase/find/[]
C
在这里插入图片描述
求每个数的位的数字。详细见A题。注意数据范围

#include <iostream>
#include <algorithm>using namespace std;long long n,sum;int main(){cin >> n;while(n>0){long long x=n;while(x!=0){int aa=x%10;n-=aa;x/=10;}sum++; }cout << sum <<endl;return 0;
}

D
在这里插入图片描述
**最初思路:**遍历从L到R,但是如果随机遍历每个L到R中的每个数,最后得到的最小移动数是不一样。即行不通。
解题思路:
分三种情况:

  1. n<l时。不用移动,输出0.
  2. n>=l&&n<=r时。即考虑移动l-1的步数和移动到r右边的符合条件之间的最小数。
  3. n>r时。即往左右移动找符合最小移动的步数。
    完整代码
#include <bits/stdc++.h>using namespace std;long long n,l,r;
long long ans;bool check(int x){for(int i=1;i<=sqrt(x);i++){if(x%i==0){int t = x/i;if(i>=l && i<=r){return true;}if(t>=l && t<=r){return true;}}}return  false;
}int main(){cin >> n >> l >> r;if(n<l){cout << 0 << endl;return 0;}if(n>=l&&n<=r){ans = n-(l-1);for(int i=1;i<=2000;i++){if(!check(r+i)){ans = min(r+i-n,ans);break;}}cout << ans <<endl;return 0;}for(int i=1;i<=2000;i++){if(!check(n+i) || !check(n-i)){cout << i << endl;return 0;}}return 0;
}

//5/29完工

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

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

相关文章

主干网络篇 | YOLOv8更换主干网络之MobileNeXt | 新一代移动端模型MobileNeXt来了!

前言:Hello大家好,我是小哥谈。MobileNeXt是由微软研究院提出的一种高效的卷积神经网络结构,它在保持模型轻量级的同时,能够获得较高的性能。MobileNeXt采用了一种称为Inverted Residuals with Linear Bottlenecks(IRL)的结构,通过深度可分离卷积和快捷连接来减少模型的…

[Android]将私钥(.pk8)和公钥证书(.pem/.crt)合并成一个PKCS#12格式的密钥库文件

如下&#xff0c;我们有一个platform.pk8和platform.x509.pem。为了打包&#xff0c;需要将私钥&#xff08;.pk8&#xff09;和公钥证书&#xff08;可能是.pem或.crt文件&#xff09;合并成一个PKCS#12 格式的密钥库文件 1.准备你的私钥和证书文件 确保你有以下两个文件&…

设计模型-系统架构师(三)

1、按照《中华人民共和国著作权法》的权利保护期&#xff0c;署名权和修改权 是永久保护的。 发表权、使用权和获取报酬权 保护期限 作者终生和死后的50年。 2、&#xff08;重要&#xff09;面向对象的分析模型主要由 顶层架构图、用例与用例图和&#xff08;&#xff09;构成…

Python面试宝典:Python中与多进程编程相关的面试笔试题(1000加面试笔试题助你轻松捕获大厂Offer)

Python面试宝典:1000加python面试题助你轻松捕获大厂Offer【第二部分:Python高级特性:第十三章:并发编程:第二节:多进程编程】 第十三章:并发编程第一节:多进程编程python中的多进程python中多线程和多进程有那些区别和联系区别1. 全局解释器锁(GIL)2. 内存共享3. 创…

2024年物理化学与工程技术发展国际会议(ICPCETD 2024)

全称&#xff1a;2024年物理化学与工程技术发展国际会议&#xff08;ICPCETD 2024&#xff09; 会议网址:http://www.icpcetd.com 会议时间: 2024.06.30 截稿时间&#xff1a;2024.06.21 会议地点: 上海 投稿邮箱&#xff1a;icpcetd_info163.com 投稿标题&#xff1a;ArticleT…

前端开发框架Angular

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl Angular概述 Angular是由Google开发并维护的一款开源前端开发框架。它最初被设计为用于构建单页面应用&#xff08;SPA&#xff09;&#xff0c;但随着版本的更新和发展&am…

【大数据篇】Spark:大数据处理的璀璨之星

【大数据篇】Spark&#xff1a;大数据处理的璀璨之星 文章目录 【大数据篇】Spark&#xff1a;大数据处理的璀璨之星一、什么是Spark?二、Scala的入门学习使用2.1 为什么要学习Scala?2.2 Scala基础语法 三、Spark 安装与环境配置四、Spark的核心组件五、Spark的优势六、spark…

刚接触抖店并开通了个体店,怎么快速起店呢?运营思路参考如下

我是王路飞。 如果你刚接触抖店&#xff0c;并且开通了个体店&#xff0c;但不知道如何做店的话。 其实很简单&#xff0c;抖店的流程并没有这么复杂。 电商的核心无非就是产品&#xff0c;抖店的运营也都是围绕产品展开的。 我给你们说下抖店的运营思路你们可以作为参考&a…

【Real】[Flask]SSTI

文章目录 前言一、题目解读二、解题过程三、知识点Flask是什么SSTI是什么SSTI是如何形成的易于利用的类payload是什么 探索类型和类层次结构和方法 前言 温馨提示&#xff1a;看到哪里不懂直接跳到知识点部分&#xff0c;理解完再回到解题过程。 一、题目解读 题目是[Flask]S…

如何使用Docker快速运行Firefox并实现远程访问本地火狐浏览器

文章目录 1. 部署Firefox2. 本地访问Firefox3. Linux安装Cpolar4. 配置Firefox公网地址5. 远程访问Firefox6. 固定Firefox公网地址7. 固定地址访问Firefox Firefox是一款免费开源的网页浏览器&#xff0c;由Mozilla基金会开发和维护。它是第一个成功挑战微软Internet Explorer浏…

如何给鸿蒙 APP 签名

生成签名证书指纹 在DevEco Studio工具侧生成密钥&#xff08;.p12&#xff09;和证书请求文件&#xff08;.csr&#xff09;。请根据以下使用场景&#xff0c;在AppGallery Connect侧申请应用证书&#xff08;.cer&#xff09;、Profile&#xff08;.p7b&#xff09;文件等。…

【Linux学习】进程间通信 (3) —— System V (1)

下面是有关进程通信中 System V 的相关介绍&#xff0c;希望对你有所帮助&#xff01; 小海编程心语录-CSDN博客 目录 1. System V IPC 1. 消息队列 msg 消息队列的使用方法 1.1 消息队列的创建 1.2 向消息队列发送消息 1.3 从消息队列接收消息 1.4 使用msgctl函数显式地…

计算机笔记12(续20个)

190.指令寄存器&#xff1a;存放当前的指令 程序计数器&#xff1a;下一条要执行的指令内存地址 191.IEEE802标准中&#xff1a;802.3规定了CSMA/CD访问控制方法和物理层技术规范 802.2规定了逻辑链路控制LLC 802.1B规定了寻址、网间互连和网络管理 802.1A规定了体系结构 19…

南京移动为“2024横山徒步大会”公共安全保驾护航

近年来&#xff0c;公共安全事件因伤害性大、波及人数多而引起公众的高度重视。江苏移动南京分公司充分履行企业社会责任&#xff0c;积极发挥移动5G、低空网络技术优势&#xff0c;为“2024横山徒步大会”提供网络保障、安全巡检及应急物资运输服务&#xff0c;建立起一道公共…

科技查新是什么?一文了解!

本文主要解答 1、什么是科技查新&#xff1f; 2、科技查新有哪些作用&#xff1f; 3、科技查新一般应用于什么地方&#xff1f; 4、在哪能出具正规查新报告&#xff1f; 5、科技查新流程是怎样的&#xff1f; 带着这些问题阅读这篇文章相信一定会有收获&#xff01;干活内…

【启程Golang之旅】运算符与流程控制讲解

欢迎来到Golang的世界&#xff01;在当今快节奏的软件开发领域&#xff0c;选择一种高效、简洁的编程语言至关重要。而在这方面&#xff0c;Golang&#xff08;又称Go&#xff09;无疑是一个备受瞩目的选择。在本文中&#xff0c;带领您探索Golang的世界&#xff0c;一步步地了…

实验题目:克鲁斯卡尔(Kruskal)算法生成最小生成树(MST)原理及算法实现

一、实验目的 本实验旨在理解和掌握克鲁斯卡尔(Kruskal)算法的基本原理,并通过编程实现该算法,以求解给定无向加权图的最小生成树。通过本实验,能够加深对最小生成树概念的理解,并提升编程能力。 二、实验原理 克鲁斯卡尔算法是一种求解最小生成树的贪心算法。其基本原理…

如何让UE4.26使用VS2022【Windows,源码下载】

使用UE5一直用的是VS2022&#xff0c;都是因为团队需要&#xff0c;只能用UE4&#xff0c;而我电脑中拥有的UE4的版本是UE4.26以及VS2022&#xff0c;我不可能去下载VS2019来为这么一个项目&#xff0c;所以就研究了一下是哪里阻止了UE4.26不让我使用VS2022. 首先下载UE4.26源码…

记一次安卓“Low on memory“崩溃问题

前言 最近再调人脸识别算法相关demo,发现调试期间总是偶发性崩溃&#xff0c;捕获不到异常的那种&#xff0c;看日志发现原因是Low on memory&#xff0c;一开始还疑惑 App内存不够应该是OOM啊,怎么会出现这种问题&#xff0c;百思不得其解&#xff0c;直到我打开了 Android s…

Vue2常用的组件通信方式有几种

Vue2 组件通信方式详解 父子组件通信&#xff08;Props&#xff09; 子父组件通信&#xff08;$emit&#xff09; 兄弟组件通信&#xff08;Event Bus&#xff09; Vuex 状态管理 Provide / Inject 1. 父子组件通信&#xff08;Props&#xff09; 定义&#xff1a; 通过在父组件…