第十三届蓝桥杯省赛模拟赛C/C++

第一题:

问题描述

以下是一个 25 行 25 列的字母矩阵,全部由字母 A 和 B 组成。

AAAAAAABABBAABABABAAAAAAA

ABBBBBABBAABBBBBABABBBBBA

ABAAABABBBABAABBBBABAAABA

ABAAABABBBBBAABAABABAAABA

ABAAABABBABABBABABABAAABA

ABBBBBABBBABAABBBBABBBBBA

AAAAAAABABABABABABAAAAAAA

BBBBBBBBABAABABBBBBBBBBBB

AABAABABBAAABBAAABABBBBBA

ABBABABBBABBAAAABBBBAAAAB

BBBBAAABABAABABAABBBAABBA

BBAABABABAAAABBBAABBAAAAA

ABABBBABAABAABABABABBBBBA

AAAABBBBBABBBBAAABBBABBAB

AABAABAAABAAABAABABABAAAA

ABBBBBBBBABABBBBABAABBABA

ABBBAAABAAABBBAAAAAAABAAB

BBBBBBBBABBAAABAABBBABBAB

AAAAAAABBAAABBBBABABAABBA

ABBBBBABBAABABAAABBBABBAA

ABAAABABABBBAAAAAAAAAABAA

ABAAABABABABBBABBAABBABAA

ABAAABABBABBABABAABAABAAA

ABBBBBABABBBBBABBAAAABAAA

AAAAAAABAABBBAABABABBABBA

请问在这个矩阵中有多少个字母A?

#include<bits/stdc++.h>
#define ll long long
using namespace std;
char s[625];
void solve() {
	cin >> s;
	ll ans = 0;
	for (int i = 0; i < 625; i++) {
		if (s[i] == 'A') ans++;
	}
	cout << ans;
}
int main() {
	solve();
    return 0;
}

打开txt文本将题目中的回车全删了读取一下输出答案

如果一个整数的某个数位包含 2 ,则称这个数为一个“最2数字”。例如:102、2021 都是最2数字。

请问在 1(含) 到 2021(含) 中,有多少个最2数字。

#include<bits/stdc++.h>
#define ll long long
using namespace std;
bool zui2(int a) {
	while(a) {
		int t = a % 10;
		a /= 10;
		if (t == 2) return true;
	}
	return false;
}
void solve() {
	int ans = 0;
	for (int i = 1; i <= 2021; i++) {
		if (zui2(i)) ans++;
	} 
	cout << ans;
}
int main() {
	solve();
    return 0;
}

第三题:

问题描述

有一个整数 A=2021,每一次,可以将这个数加 1 、减 1 或除以 2,其中除以 2 必须在数是偶数的时候才允许。

例如,2021 经过一次操作可以变成 2020、2022。

再如,2022 经过一次操作可以变成 2021、2023 或 1011。

请问,2021 最少经过多少次操作可以变成 1。

是偶数就除2,奇数就-1.

#include<bits/stdc++.h>
#define ll long long
using namespace std;
void solve() {
	int a 
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值