第一题:
问题描述
以下是一个 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

3022

被折叠的 条评论
为什么被折叠?



