容斥原理 A-1e9个兵临城下

上星期六做了nowcoder西北大学的程序设计竞赛,A题:1e9个兵临城下 https://ac.nowcoder.com/acm/contest/321/A

刚开始的思路是计数,碰到能整除的加一,直到累积到给定值为止

但是后来觉得好像步骤还是太多,而且重复的还要删除。。然后没思路了

结束之后看了题解,发现要用到容斥原理 查了下百度大概就是先计算出所有情况,然后把重复的删去(貌似跟我前面的思路差不多。。

 

这道题的话给定三个数,从1e9里面找出能被这三个整除的所有数然后删掉,我想来想去都是用循环算法啊,然后就觉得各种超时

看了代码我才发现!!!原来可以除的!!  u/a就能表示u中所有能被a整除的数的个数!

我可真是长见识了……

那么这道题就好做了。

后面还要注意的一点就是,要先减去每两个数的公倍数,再加上三个数的公倍数

然后我感觉都没问题了啊?还是WA了一次

原来是数据类型没对。。全都要用long long的。。

好啦  终于过啦   我感觉我的写题之路慢慢步入正轨了、

今后也要继续努力啊!

 

转载于:https://www.cnblogs.com/Lyrixblogs/p/10187685.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值