幸运的数字

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

一、题目描述

题目来源:洛谷

如果把一个数字十进制表示的奇数位和偶数位分别相加得到的和相同,小小就认为它是一个幸运的数字。对于给定的 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 分钟前
多态:从虚函数语法到虚表寻址,一次讲透动态绑定
开发语言·c++·多态
Navigator_Z5 分钟前
LeetCode //C - 1311. Get Watched Videos by Your Friends
c语言·算法·leetcode
云析赢指标公式网420 分钟前
通达信ATAN均线角度公式源码笔记:四周期角度计算与DRAWBAND色带实现
笔记·算法
01二进制代码漫游日记24 分钟前
[C++]之内存管理(一)
jvm·c++·学习
21岁被迫秃头31 分钟前
SVT-AV1 Mini-Gop决策算法详解+源码分析.md
算法·av1·svt-av1·源码详解·mini-gop决策
Kobebryant-Manba31 分钟前
IEKT向量矩阵流程&评估
人工智能·算法·矩阵
codebolt41 分钟前
C++程序crash分析和内存检测
开发语言·c++
Js.Tx1 小时前
【具体数学 Concrete Mathematics】2.1.7 无限和式
算法·具体数学
ShineWinsu1 小时前
对于Qt:QLabel常见属性的解析
c++·qt·面试·笔试·gui·标签·qlabel
FPGA信号处理1 小时前
【 凸优化】第六讲:求解器与支持向量机
算法·机器学习·支持向量机