A25788. 给定两个整数a,b,请统计a到b之间(包含a和b)有多少个包含数字7的回文数。例如:a=6,b=80,6到80之间的回文数有6、7、8、 9、11、22、33、44、55、66、77,其中有2个回文数包含7(7和77)。输入描述一行输入两个整数a和b(1≤a≤b≤100000),整数之间以一个空格隔开输出描述输出一个整数,表示a到b之间(包含a和b)包含数字7的回文数的个数样例输入6 80样例输…
填空题
中等
知识点
题目描述
给定两个整数a,b,请统计a到b之间(包含a和b)有多少个包含数字7的回文数。
例如:a=6,b=80,6到80之间的回文数有6、7、8、 9、11、22、33、44、55、66、77,其中有2个回文数包含7(7和77)。
输入描述
一行输入两个整数a和b(1≤a≤b≤100000),整数之间以一个空格隔开
输出描述
输出一个整数,表示a到b之间(包含a和b)包含数字7的回文数的个数
样例输入
6 80样例输出
2参考答案
#include <bits/stdc++.h>
using namespace std;
bool is_hw_in7(int x) {
int y = x, t = 0;
bool sign = true;
while (y) {
t = t * 10 + y % 10;
if (y % 10 == 7)
sign = false;
y /= 10;
}
if (!sign && t == x)
return true;
else
return false;
}
int main() {
int n, m, ans = 0;
cin >> n >> m;
for (int i = n; i <= m; i++) {
if (is_hw_in7(i))
ans++;
}
cout << ans;
return 0;
}
上一题
下一题