蓝桥杯刷题|01普及-真题

目录

 

[蓝桥杯 2013 省 B] 翻硬币 题解

题目背景

题目描述

输入格式

输出格式

输入输出样例

说明/提示

代码及思路

 [蓝桥杯 2015 省 B] 移动距离

题目描述

输入格式

输出格式

输入输出样例

说明/提示

代码及思路

 [蓝桥杯 2021 国 BC] 大写

题目描述

输入格式

输出格式

输入输出样例

说明/提示

代码及思路


[蓝桥杯 2013 省 B] 翻硬币 题解

题目背景

小明正在玩一个“翻硬币”的游戏。

题目描述

桌上放着排成一排的若干硬币。我们用 * 表示正面,用 o 表示反面(是小写字母,不是零),比如可能情形是 **oo***oooo,如果同时翻转左边的两个硬币,则变为 oooo***oooo。现在小明的问题是:如果已知了初始状态和要达到的目标状态,每次只能同时翻转相邻的两个硬币,那么对特定的局面,最少要翻动多少次呢?

输入格式

两行等长字符串,分别表示初始状态和要达到的目标状态,每行长度小于 10001000。

数据保证一定存在至少一种方案可以从初始状态和要达到的目标状态。

输出格式

一个整数,表示最小操作步数。

输入输出样例

输入 #1

**********
o****o****

输出 #1  5

输入 #2

*o**o***o***
*o***o**o***

输出 #2   1

说明/提示

source:蓝桥杯 2013 省 B 组 H 题

代码及思路

#include<iostream>
#include<string>
using namespace std;
int main()
{
	string a,b;
	cin>>a>>b;
	int num=0;
	for(int i=0;i<a.size();i++)
	{
		if(a[i]==b[i])continue;
		else{
			a[i]=(a[i]=='o')?'*':'o';
			a[i+1]=(a[i+1]=='o')?'*':'o';
			num++; 
		}
	}
	cout<<num;
	
	return 0;
} 

 [蓝桥杯 2015 省 B] 移动距离

题目描述

X 星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为 1,2,3,⋯。

当排满一行时,从下一行相邻的楼往反方向排号。

比如:当小区排号宽度为 6 时,开始情形如下:

1  2  3  4  5  6
12 11 10 9  8  7
13 14 15 .....

我们的问题是:已知了两个楼号 m 和 n,需要求出它们之间的最短移动距离。(不能斜线方向移动)

输入格式

输入为 33个整数 w,m,n,空格分开,都在 1 到 10000 范围内。

w 为排号宽度,m,n 为待计算的楼号。

输出格式

要求输出一个整数,表示 m 与 n 两楼间最短移动距离。

输入输出样例

输入 #1 6 8 2

输出 #1  4

输入 #2  4 7 20

输出 #2 5

说明/提示

时限 1 秒, 256M。

蓝桥杯 2015 年省赛 B 组 H 题。

代码及思路

#include<iostream>
using namespace std;
int main()
{
	int w,m,n;
	int num=0;
	cin>>w>>m>>n;
	//找到m和n 的倍数
	int tpm=0,tpn=0;
	//m和n的余数
	int rem=0,ren=0;
	if(m>n)
	{
		int temp=m;
		m=n;
		n=temp;
	}
	//倍数 
	tpm=m/w;tpn=n/w;
	//余数 
	rem=m%w;ren=n%w;
	int a=tpm,b=tpn;
	if(rem==0)a--;
	if(ren==0)b--; 
	//横着的距离 
    //距离记得取绝对值
	num=((b-a)>0)?(b-a):(a-b);
	//令倍数成为他的横坐标,余数的变换成为纵坐标
	if(tpn%2==1&&ren>0)ren=w-ren;
	if(tpm%2==1&&rem>0)rem=w-rem;
	if(tpn%2==0&&ren==0)ren=w-1;
	if(tpm%2==0&&rem==0)rem=w-1;
	if(tpn%2==0)ren=ren-1;
	if(tpm%2==0)rem=rem-1;
	//竖着的距离  
	num+=((ren-rem)>0)?(ren-rem):(rem-ren);
	cout<<num;
	return 0;
}

 [蓝桥杯 2021 国 BC] 大写

题目描述

给定一个只包含大写字母和小写字母的字符串,请将其中所有的小写字母转换成大写字母后将字符串输出。

输入格式

输入一行包含一个字符串。

输出格式

输出转换成大写后的字符串。

输入输出样例

输入 #1 LanQiao

输出 #1  LANQIAO

说明/提示

对于所有评测用例, 字符串的长度不超过 100100。

蓝桥杯 2021 国赛 B 组 E 题(C 组 E 题)。

代码及思路

 #include<stdio.h>
 #include<string.h>
 int main()
 {
 	char arr[1000];
 	gets(arr);
 	int n=strlen(arr);
 	
 	for(int i=0;i<n;i++)
 	{
 		if(arr[i]<='Z'&&arr[i]>='A')printf("%c",arr[i]);
        //大写字母和小写字母相差32,小写字母大
 		if(arr[i]<='z'&&arr[i]>='a')printf("%c",arr[i]-32);
	}
 	
 	return 0;
 }
 

相关推荐

  1. |01普及-

    2024-03-17 08:28:04       18 阅读
  2. |01入门

    2024-03-17 08:28:04       15 阅读
  3. |04入门

    2024-03-17 08:28:04       19 阅读
  4. 1.倍数

    2024-03-17 08:28:04       31 阅读
  5. (3.16

    2024-03-17 08:28:04       20 阅读
  6. (3.15

    2024-03-17 08:28:04       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-17 08:28:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-17 08:28:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-17 08:28:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-17 08:28:04       20 阅读

热门阅读

  1. P8780 [蓝桥杯 2022 省 B] 刷题统计 Python

    2024-03-17 08:28:04       23 阅读
  2. 跳出循环及数组部分方法

    2024-03-17 08:28:04       20 阅读
  3. Oracle常用DBA相关语句

    2024-03-17 08:28:04       20 阅读
  4. Jenkins: 配置自动化发布脚本

    2024-03-17 08:28:04       24 阅读
  5. ISP相关

    ISP相关

    2024-03-17 08:28:04      19 阅读
  6. 2024.3.13-408学习笔记-C-数据在内存中的存储

    2024-03-17 08:28:04       19 阅读
  7. 前端小白的学习之路(CSS3 二)

    2024-03-17 08:28:04       21 阅读
  8. Vue基本用法

    2024-03-17 08:28:04       23 阅读
  9. 2024届 C++ 刷题 笔试强训 Day 02

    2024-03-17 08:28:04       23 阅读
  10. 请求头content-type的类型有什么?

    2024-03-17 08:28:04       22 阅读
  11. 发现数据之美:探索数据可视化的艺术与技术

    2024-03-17 08:28:04       20 阅读