✍个人博客:https://blog.csdn.net/Newin2020?spm=1011.2415.3001.5343
📚专栏地址:蓝桥杯题解集合
📝原题地址:特殊年份
📣专栏定位:为想参加蓝桥杯的小伙伴整理常考算法题解,祝大家都能取得理想成绩!
❤️如果有收获的话,欢迎点赞👍收藏📁,您的支持就是我创作的最大动力💪
问题描述
今年是 2021 年,2021 这个数字非常特殊,它的千位和十位相等,个位比百位大 1,我们称满足这样条件的年份为特殊年份。
输入 5 个年份,请计算这里面有多少个特殊年份。输入格式
输入 5 行,每行一个 4 位十进制数(数值范围为 1000 至 9999),表示一个年份。
输出格式
输出一个整数,表示输入的 5 个年份中有多少个特殊年份。
输入样例:
2019 2021 1920 2120 9899
输出样例:
2
样例解释
2021 和 9899 是特殊年份,其它不是特殊年份。
思路
这道题有个小技巧就是可以利用 c++ string 容器的特性,直接访问字符串的下标来判断,就不用用整数除余得到每一位再来判断了。
代码
#include <bits/stdc++.h>
using namespace std;
int main() {
string s;
int res = 0;
for (int i = 0; i < 5; i ++ ) {
cin >> s;
if (s[0] == s[2] && s[1] == s[3] - 1)
res ++ ;
}
cout << res << endl;
return 0;
}