CC++刷题练习

蓝桥杯[错误的票据]

题目

某涉密单位下发了某种票据,并要在年终全部收回每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个 ID断号,另外一个ID 重号。你的任务是通过编程,找出断号的ID和重号的ID假设断号不可能发生在最大和最小号


输入描述

要求程序首先输入一个整数N(N<100)表示后面数据行数。

接着读入N行数据。

每行数据长度不等,是用空格分开的若干个(不大于100个)正整数(不大于10^5)


输出描述

要求程序输出1行,含两个整数 m,n,用空格分隔。

其中,m 表示断号ID,n 表示重号ID


输入输出样例示

输入#

2
5 6 8 11 9
10 12 9

输出#

7 9

解法一:C++的解法 #

#include<bits/stdc++.h>
using namespace std;
int main()
{vector<int> arr;                      //开辟动态数组int N;                                //设置变量N表示后面数据函数cin >> N;for (int i = 0; i < N; i++){int k = 0;while (cin >> k){arr.push_back(k);             //vector的尾插if (cin.get() == '\n')        //当接受到回车键时,就退出当前循环{break;}}}sort(arr.begin(), arr.end());         //快速排序int m, n;for (int i = 0; i < arr.size(); i++){if ((arr[i + 1] - arr[i]) > 1)    //如果前后两个数据>1则出现断号{m = arr[i + 1] - 1;         }if(arr[i+1] == arr[i]){n = arr[i];}}cout << m << " " << n;return 0;
}

解法二:C的解法#

#include<stdio.h>
#include<stdlib.h>
int main()
{int N, arr[20000] = { 0 }, m, n, i = 0;scanf("%d", &N);while (N--){while (scanf("%d", &arr[i])>0){i++;if(getchar() == '\n'){break;}}}int PaiXu(const void* p1, const void* p2){return (*(int*)p1 - *(int*)p2);}int rs =  sizeof(arr) / sizeof(arr[0]);qsort(arr,rs, sizeof(int), PaiXu);//快速排序for (int i = 1; i < rs; i++){if((arr[i]-arr[i-1])>1){m = arr[i]-1;}else if((arr[i]-arr[i-1]) == 0){n = arr[i];}}printf("%d %d", m, n);return 0;
}

蓝桥杯[X图形]

题目

给定一个字母矩阵。一个X图形由中心点和由中心点向四个 45 度斜线方向引出的直线段组成,四条线段的长度相同,而且四条线段上的字母和中心点的字母相同。


一个X图形可以使用三个整数 r,c,L来描述,其中 r,c 表示中心点位于第r行第c列,正整数L表示引出的直线段的长度。对于1到L之间的每个整数i,X图形满足:第 r-i 行第 c-i 列与第r行第c列相同,第 r-i 行第 c+i 列与第r行第c列相同,第 r+i 行第 c-i 列与第r行第c列相同,第 r+i 行第 c+i 列与第r 行第c列相同。


例如:对于下面的字母矩阵中,所有的字母组成一个X图形,中间的5个L也组成一个X图形。所有字母Q组成了一个X图形。

给定一个字母矩阵,请求其中有多少个X图形 ?


输入格式:

输入第一行包含两个整数n,m,分别表示字母矩阵的行数和列数。

接下来n行,每行m个大写字母,为给定的矩阵。
输出格式:
输出一行,包含一个整数,表示答案。


样例输入#
5 6
LAAALA
ALQLQA
AALQAA
ALQLQA
LAAALA
样例输出#
3
#include<bits/stdc++.h>
using namespace std;
int main()
{int n = 0,m = 0,count = 0;cin>>n>>m;char arr[101][101] = {0};for(int i = 0;i<n;i++){for(int j = 0;j<m;j++){cin>>arr[i][j];}}for(int i = 1;i<n-1;i++){for(int j = 1;j<m-1;j++){char k = arr[i][j];int l = 1;while((k == arr[i-l][j-l])&&(k == arr[i-l][j+l])&&(k == arr[i+l][j-l])&&(k == arr[i+l][j+l])){count++;l++;}}}cout<<count;return 0;
}

蓝桥杯[核桃的数量] 

题目:

小张是软件项目经理,他带领3个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据传言能补脑)。他的要求是:
1各组的核桃数量必须相同
2.各组内必须能平分核桃(当然是不能打碎的)
3尽量提供满足12条件的最小数量(节约闹革命嘛)


输入描述:

输入一行a,b,c,都是正整数,表示每个组正在加班的人数,用空格分开(a,b,c < 30)。

输出描述:

输出一个正整数,表示每袋核桃的数量。 

输入输出样例

输入#

2 4 5

输出#

20

解法一:C++的解法#

#include<bits/stdc++.h>
using namespace std;
int main()
{int a[3] = { 0 },num = 0;for (int i = 1; i <= 3; i++){cin >> a[i];}int max =  *max_element(a, a + 3);//求出三组中的最大值for (int i = 1;; i++)             //因为我们也不知道要进行多少次,所以不设置循环条件{num = max * i;                //求最大组的倍数//判断是否满足平分的条件if ((num % a[1] == 0) && (num % a[2] == 0) && (num % a[3] == 0)) {break;}}cout << num;return 0;
}

解法二:C的解法#

#include <stdio.h>
int main()
{int a[3] = { 0 },num = 0,max = 0;for (int i = 1; i <= 3; i++){scanf("%d",&a[i]);if(a[i]>max){max = a[i];}}for (int i = 1;; i++)            {num = max * i;                if ((num % a[1] == 0) && (num % a[2] == 0) && (num % a[3] == 0)) {break;}}printf("%d",num);return 0;
}

蓝桥杯[最大距离]

题目描述:

在数列a1,a2,···,an中,定义两个元素ai和aj的距离为| i - j |+| ai - aj |,即元素下标的距离加上元素值的差的绝对值,其中| x |表示x的绝对值。
给定一个数列,请问找出元素之间最大的元素距离。


输入描述:

输入的第一行包含一个整数n。
第二行包含n个整数a1,a2,···,an,相邻的整数间用空格分隔,表示给定的数列。
其中,2<=n<=1000,0<=数列中的数 <=10^4。


输出描述:

输出一行包含一个整数,表示答案


输入输出样例:

输入#

5
9 4 2 4 7

输出#

9
#include<bits/stdc++.h>
using namespace std;
int main()
{int n,str[1000] = {0},max = 0;cin>>n;for(int i = 1;i<=n;i++){cin>>str[i];}for(int i=1;i<n;i++){for(int j=i+1;j<=n;j++){if(abs(i-j)+abs(str[i]-str[j])>max)      //abs绝对值的函数max=abs(i-j)+abs(str[i]-str[j]);}}cout<<max;return 0;
}

蓝桥杯[特殊年份]

问题描述:

今年是2021年,2021这个数字非常特殊它的千位和十位相等,个位比百位大1,我们称满足这样条件的年份为特殊年份。

输入5个年份请计算这里面有多少个特殊年份。


输入格式:

输入 5 行,每行一个4位十进制数(数值范围为1000至9999),表示一个年份。


输出格式:

输出一个整数表示输入的5个年份中有多少个特殊年份。


样例输入#

20192021192021209899

样例输出#

2

样例说明:

2021 和 9899 是特殊年份,其它不是特殊年份。

解法一:C++的解法# 

#include<bits/stdc++.h>
using namespace std;
int main()
{vector<int> str;int count = 0;for(int i = 0;i<5;i++){int b = 0;cin>>b;str.push_back(b);}for(int i = 0;i<5;i++){int g=str[i]%10;int s=str[i]/10%10;int b=str[i]/100%10;int q=str[i]/1000;if((g == b+1)&&(q == s)){count++;}}cout<<count;return 0;
}

 解法二:C的解法#

#include <stdio.h>
int main()
{int str[5] = {0};int count = 0;for(int i = 0;i<5;i++){scanf("%d",&str[i]);}for(int i = 0;i<5;i++){int g=str[i]%10;int s=str[i]/10%10;int b=str[i]/100%10;int q=str[i]/1000;if((g == b+1)&&(q == s)){count++;}}printf("%d",count);return 0;
}

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

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

相关文章

基于ssm+vue搭建的新闻网站论文

目 录 目 录 I 摘 要 III ABSTRACT IV 1 绪论 1 1.1 课题背景 1 1.2 研究现状 1 1.3 研究内容 2 2 系统开发环境 3 2.1 vue技术 3 2.2 JAVA技术 3 2.3 MYSQL数据库 3 2.4 B/S结构 4 2.5 SSM框架技术 4 3 系统分析 5 3.1 可行性分析 5 3.1.1 技术可行性 5 3.1.2 操作可行性 5 3…

百度Apollo:激光雷达检测技术深度解析

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏:《linux深造日志》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! ⛳️ 粉丝福利活动 ✅参与方式&#xff1a;通过连接报名观看课程&#xff0c;即可免费获取精美周边 ⛳️活动链接&#xf…

【Docker】docker部署conda并激活环境

原文作者&#xff1a;我辈李想 版权声明&#xff1a;文章原创&#xff0c;转载时请务必加上原文超链接、作者信息和本声明。 文章目录 前言一、新建dockerfile文件二、使用build创建镜像1.报错&#xff1a;Your shell has not been properly configured to use conda activate.…

快速学习SpringBoot

SpringBoot springboot传统方式构建spring应用程序使用springboot子项目构建起步依赖自动配置其它特性 SpringBoot项目部署Spring项目部署属性配置方式命令行参数方式配置环境变量方式外部配置文件方式 多环境开发-Pofiles多环境开发分组 springboot 传统方式构建spring应用程…

【数据结构】数组实现队列(详细版)

目录 队列的定义 普通顺序队列的劣势——与链队列相比 顺序队列实现方法&#xff1a; 一、动态增长队列 1、初始化队列 2、元素入队 3、判断队列是否为空 4、元素出队 5、获取队首元素 6、获取队尾元素 7、获取队列元素个数 8、销毁队列 总结&#xff1a; 动态增长队列…

whistle+SwitchyOmega前端api代理调试

1、whistle介绍 whistle官网whistle githubwhistle主要用于查看、修改HTTP、HTTPS、Websocket的请求、响应&#xff0c;也可以作为HTTP代理服务器&#xff0c;功能很强大 2、安装教程 官方安装文档 // 全局安装whistle npm install -g whistle// 安装whistle的inspect插件&a…

2024.1.3 关于 Redis 渐进式遍历 和 数据库管理命令

目录 引言 渐进式遍历 SCAN 命令 数据库管理命令 切换数据库 获取数据库 key 个数 删除数据库所有 key 同步删除 SYNC 异步删除 ASYNC 阅读下述文章之前建议点击下方链接熟悉 keys 命令的用法和特点 Redis 全局通用命令 ​​​渐进式遍历 keys * 命令一次性将 Redi…

安全狗入选“2023年福建省信息技术应用创新解决方案”名单

近日&#xff0c;福建省数字福建建设领导小组办公室公布了2023年福建省信息技术应用创新解决方案入选项目评选结果。 作为国内云原生安全领导厂商&#xff0c;安全狗凭借综合且具备突出创新水平的方案入选。 厦门服云信息科技有限公司&#xff08;品牌名&#xff1a;安全狗&…

栈和队列oj题——232. 用栈实现队列

. 个人主页&#xff1a;晓风飞 专栏&#xff1a;LeetCode刷题|数据结构|Linux|C语言 路漫漫其修远兮&#xff0c;吾将上下而求索 文章目录 题目要求&#xff1a;实现 MyStack 类&#xff1a;注意&#xff1a;示例&#xff1a;解释&#xff1a;提示&#xff1a; 解题核心概念数据…

LeetCode刷题---矩阵置零

解题思路&#xff1a; 本题要求原地置换元素 对矩阵进行第一轮遍历&#xff0c;使用第一行第一列来充当该行该列是否要置换为0的标记位&#xff0c;如果第一行或第一列本身就含有零元素&#xff0c;我们使用colZero和rowZero变量来对其标记。如果第i行第j列的那个元素为0&#…

how2heap-2.23-02-fastbin_dup_into_stack

fastbin_dup_into_stack和fastbin_dup没啥区别 https://blog.csdn.net/u014679440/article/details/135383465 仅仅是欲修改的位置&#xff0c;在栈中 #include <stdio.h> #include <stdlib.h>int main() {fprintf(stderr, "This file extends on fastbin_du…

leetcode13 罗马数字转整数

题目描述&#xff1a;罗马数字由七种字符组成&#xff0c;分别为 I、V、X、L、C、D 和 M&#xff0c;对应的数值分别为 1、5、10、50、100、500 和 1000。在一般情况下&#xff0c;小的数字位于大的数字右边&#xff0c;但有特殊情况&#xff0c;如 IV 表示 4&#xff0c;IX 表…

单线圈无刷直流电机驱动芯片选型分析,可应用于笔记本,显卡风散热风扇,变频冷却风扇,打印机风扇等产品上

单线圈无刷直流电机的电机驱动器。 GC1298R/S&#xff0c;GC1262E/S&#xff0c;GC1298R/S&#xff0c;GC1262R/S具有高效的直接PWM控制方式&#xff0c;它可以控制无刷直流电机转速。它集成了最低速度限制模式、可调速度斜率控制模式、软启动模式、风扇转速计、锁保护、自动重…

《剑指offer》数学第一题:数值的整数次方

题目描述&#xff1a; 给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。 思路&#xff1a; 给定一个浮点数求它的整数次方。要考虑到所有的情况&#xff0c;关于指数&#xff0c;如果是0&#xff0c;则结果是1&#xff1b; 指数是1&#xff0c…

CNN——AlexNet

1.AlexNet概述 论文原文&#xff1a;ImageNet Classification with Deep Convolutional Neural Networks 在LeNet提出后&#xff0c;卷积神经网络在计算机视觉和机器学习领域中很有名气。但卷积神经网络并没有主导这些领域。这是因为虽然LeNet在小数据集上取得了很好的效果&am…

C#: Label、TextBox 鼠标停留时显示提示信息

说明&#xff1a;记录在 Label、TextBox 控件上 鼠标停留时显示提示信息的方法。 1.效果图 2.具体实现步骤 1. 在Form 窗口中先创建 Label 并取名&#xff1a;KEY_label &#xff0c;或 TextBox 取名&#xff1a;KEY_textBox 在 Form1 函数中添加初始化代码&#xff0c;如下&…

ssm基于web的素材网的设计与实现+vue论文

基于web的素材网站的设计与实现 摘要 当下&#xff0c;正处于信息化的时代&#xff0c;许多行业顺应时代的变化&#xff0c;结合使用计算机技术向数字化、信息化建设迈进。传统的素材信息管理模式&#xff0c;采用人工登记的方式保存相关数据&#xff0c;这种以人力为主的管理…

C#中使用 async await TaskCompletionSource<T>实现异步逻辑同步写

Task、async 和 await 是 C# 中用于处理异步编程的关键概念。它们一起构成了异步编程的基础。 Task Task 是表示异步操作的抽象&#xff0c;它属于 System.Threading.Tasks 命名空间。Task 可以表示已经完成的任务、正在运行的任务或者尚未开始的任务。通过 Task&#xff0c;…

你的第一个C/S程序

目录 socket服务端代码客户端代码执行结果 socket socket基础知识 服务端代码 import socket import threading import timeMSG_LENGTH 64 DISCONNECTED !CONNECTION CLOSED connections 0#定义服务器地址 server_ip socket.gethostbyname(socket.gethostname()) server…

【设计模式之美】面向对象分析方法论与实现(二):需求到接口实现的方法论

文章目录 一. 进行面向对象设计1. 划分职责>需要有哪些类2. 定义类及其属性和方法3. 定义类与类之间的交互关系4. 将类组装起来并提供执行入口 二. 如何进行面向对象编程&#xff1f;1. 接口实现2. 辩证思考与灵活应用 【设计模式之美】面向对象分析方法论与实现&#xff08…