幸运的数字

每日一道算法题之幸运数字

一、题目描述

题目来源:洛谷

如果把一个数字十进制表示的奇数位和偶数位分别相加得到的和相同,小小就认为它是一个幸运的数字。对于给定的 a 和 b,小小希望你求出 a,a+1,a+2,...,b 中幸运数字的数量。

C++程序要求输入输出示例如下:

cpp 复制代码
输入: 1   100            输出:9

二、思路

用for循环去枚举每一个数,然后通过取余和除法操作得到每一位上的数,奇数位相加,偶数位相加,最后进行比较。

三、C++代码

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

//幸运数字


int main(){
	
	
	int a,b;
	cin>>a>>b;
	int temp;
	int flag;
	int number=0;
	int odd,even;
	for(int i=a;i<=b;i++){  //从a到b枚举每一个数
		
		temp=i,odd=0,even=0,flag=0;
		while(temp>0){
			
			if(flag==0){  //取出这个数的奇数位 ,用flag实现奇偶位的交替  
				odd+=temp%10;
				flag=1;
			}else{           //取出这个数的偶数位
				even+=temp%10;
				flag=0;
			}
			temp/=10;
		}
		
		if(odd==even){
			number++;
		}
		
	} 
	cout<<number;
	 
}
相关推荐
我是谁??23 分钟前
C/C++使用AddressSanitizer检测内存错误
c语言·c++
小码农<^_^>25 分钟前
优选算法精品课--滑动窗口算法(一)
算法
羊小猪~~27 分钟前
神经网络基础--什么是正向传播??什么是方向传播??
人工智能·pytorch·python·深度学习·神经网络·算法·机器学习
软工菜鸡1 小时前
预训练语言模型BERT——PaddleNLP中的预训练模型
大数据·人工智能·深度学习·算法·语言模型·自然语言处理·bert
南宫生1 小时前
贪心算法习题其三【力扣】【算法学习day.20】
java·数据结构·学习·算法·leetcode·贪心算法
发霉的闲鱼1 小时前
MFC 重写了listControl类(类名为A),并把双击事件的处理函数定义在A中,主窗口如何接收表格是否被双击
c++·mfc
小c君tt1 小时前
MFC中Excel的导入以及使用步骤
c++·excel·mfc
xiaoxiao涛1 小时前
协程6 --- HOOK
c++·协程
AI视觉网奇1 小时前
sklearn 安装使用笔记
人工智能·算法·sklearn
JingHongB2 小时前
代码随想录算法训练营Day55 | 图论理论基础、深度优先搜索理论基础、卡玛网 98.所有可达路径、797. 所有可能的路径、广度优先搜索理论基础
算法·深度优先·图论