math

math

 


Time Limit:1sMemory limit:32M
Accepted Submit:80Total Submit:513

Problem Description

我们知道求两个数最大公约数的一种方法叫辗转相除法。并且当两个数的最大公约数为1时,我们就称这两个数互质。cxw喜欢数学,现在他遇到一个问题正准备向数学大牛daxia请教:“给定一个正整数n,在所有小于n的正整数中,求与n的最大公约数为d的所有的数的和.”,你能帮他解决这个问题吗?

Input

有多组输入数据,每组数据有两个正整数n,d. 其中1< n <=10000000, 1 <= d < n, 数据保证n能被d整除.

Output

对于每组数据,输出相应的结果

Sample Input

4 2
9 1

Sample Output

2
27

Hint:

N = 9, d = 1
Answer: 1 + 2 + 4 + 5 + 7 + 8 = 27;

http://acm.fzu.edu.cn/problem.php?pid=1701

 

这一题很容易就超时,我用的是辗转相除法,如果就直接这样,会超时,还从中筛选了一些数据,勉强地过了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值