【hdu3709】平衡数

这是一篇关于计算平衡数的博客。平衡数是指在整数中找到一个支点,使得所有数字的力矩之和为0。文章介绍了如何在给定区间[L, R]内找出所有平衡数的方法,并提供了样例输入和输出,以及解决问题的代码思路,强调了在处理边界条件时的注意事项,特别是当L=0时需要排除额外的0的计数。" 100548136,7382620,寻找字符串数组的最长公共前缀,"['字符串处理', 'C++编程', '算法挑战']
摘要由CSDN通过智能技术生成

时间限制 : 1000 MS 空间限制 : 65536 KB

问题描述

平衡数:对于整数n,以数n中的某一位为支点,第i位上的数的力矩=X[i]*(Pos[i]-Point)其中X[i]为数字n第i位上的数字,Pos[i]为第i位数字的位置编号i,Point为支点的位置编号。如果在数n里能找到一个支点使得所有数的力矩之和为0那么它就是平衡数。
比如4139,以3为支点,左边 = 4 * (4 - 2) + 1 * (3 - 2) = 9,右边 = 9 * (1 - 2) =-9,左边加右边为0,所以4139是平衡数。 现在给出一个区间[l,r],问区间内平衡数有多少个?

输入格式

一行两个整数,L和R。

输出格式

一个整数,表示区间[L,R]中平衡数的个数。

样例输入 1

0 9

样例输出 1

10

样例输入 2

7604 24324

样例输出 2

897

提示

20%的数据:0 ≤L ≤ R ≤ 10^3
100%的数据:0 ≤L ≤ R ≤ 10^18

题解

比较水

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值