幸运的数字

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

一、题目描述

题目来源:洛谷

如果把一个数字十进制表示的奇数位和偶数位分别相加得到的和相同,小小就认为它是一个幸运的数字。对于给定的 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;
	 
}
相关推荐
牛客企业服务5 分钟前
2025年AI面试推荐榜单,数字化招聘转型优选
人工智能·python·算法·面试·职场和发展·金融·求职招聘
charlie11451419117 分钟前
深入理解Qt的SetWindowsFlags函数
开发语言·c++·qt·原理分析
呜喵王阿尔萨斯23 分钟前
编程中的英语
c语言·c++
糖葫芦君44 分钟前
Policy Gradient【强化学习的数学原理】
算法
whoarethenext1 小时前
使用 C++/Faiss 加速海量 MFCC 特征的相似性搜索
开发语言·c++·faiss
向阳@向远方2 小时前
第二章 简单程序设计
开发语言·c++·算法
Mr_Xuhhh3 小时前
信号与槽的总结
java·开发语言·数据库·c++·qt·系统架构
github_czy3 小时前
RRF (Reciprocal Rank Fusion) 排序算法详解
算法·排序算法
liulilittle3 小时前
VGW 虚拟网关用户手册 (PPP PRIVATE NETWORK 基础设施)
开发语言·网络·c++·网关·智能路由器·路由器·通信
许愿与你永世安宁4 小时前
力扣343 整数拆分
数据结构·算法·leetcode