题目链接

这题在学长讲完之后和看完题解之后才明白函数怎么构造。

这题构造一个$f(n)$

$f(n)$ $=$ $n$除以 $2^{a}$ $*$ $5^{b}$ ,$a$ , $b$ 分别是 $n$ 质因数分解后$2,5$的个数。

然后就暴力算一算就好了。

#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
//处理出来n的质因子中,x的个数。
int prime(int n,int x)
{
int res=;
while(n) res+=n/x,n/=x;
return res;
}
//f(1)到f(n)中不以5结尾的奇数的个数
int expect_5_end_odd(int n,int x)
{
if(!n) return ;
return n/+(n%>=x)+expect_5_end_odd(n/,x);
}
//以5结尾的数的个数。
int expect_5_end(int n,int x)
{
if(!n) return ;
return expect_5_end(n/,x)+expect_5_end_odd(n,x);
} int t[][]={
,,,,//2^4 2 2^2 2^3 的最后一位
,,,,//3^4 3 3^2 3^3 的最后一位
,,,,//4……
,,,//5……
}; signed main()
{
int n,m;
while(~scanf("%d%d",&n,&m))
{
m=n-m;
int prime_2=prime(n,)-prime(m,);
int prime_3=expect_5_end(n,)-expect_5_end(m,);
int prime_5=prime(n,)-prime(m,);
int prime_7=expect_5_end(n,)-expect_5_end(m,);
int prime_9=expect_5_end(n,)-expect_5_end(m,); if(prime_2<prime_5){puts("");continue;} int res=;
if(prime_2>prime_5) res*=t[][(prime_2-prime_5)%];
res=res*t[][prime_3%]*t[][prime_7%]*t[][prime_9%]%;
printf("%lld\n",res);
}
return ;
}

最新文章

  1. 【代码笔记】iOS-UILable电子表显示
  2. 有吧友需要PDF的下载站点,好吧,我这边汇总一下
  3. [ACM_几何] Wall
  4. 定位absolute使内联支持宽高(块属性变为内联,内容默认撑开)margin auto 失效
  5. hdu 4631Sad Love Story&lt;计算几何&gt;
  6. oc对象的内存管理
  7. Android 5.0(棒棒糖))十大新特性
  8. React服务器渲染最佳实践
  9. win10 uwp MVVM入门
  10. hive 分组排序,topN
  11. 如果redis没有设置expire,他是否默认永不过期?
  12. Hadoop生态圈-Ranger数据安全管理框架
  13. bootbox.js官方文档中文版
  14. maven默认本地仓库目录
  15. sencha touch在华为emotion ui 2.0自带浏览器中圆角溢出的bug
  16. 开源WebGIS实施方案(六):空间数据(PostGIS)与GeoServer服务迁移
  17. css单位长度
  18. Oracle中的dbms_metadata.get_ddl的用法
  19. OrhtoMCL 使用方法
  20. 指定jdk编译或运行

热门文章

  1. ll | wc -l的陷阱
  2. Android 从本地图库或拍照后裁剪图片并设置头像
  3. rtmp发送H264及aac的音视频 (转)
  4. oracle xe远程访问
  5. PHP屏蔽关键字实现方法
  6. 【codevs2495】水叮当的舞步
  7. php格式化时间戳显示友好的时间
  8. Angular26 ng-content和ng-container、投影的使用
  9. SpringBoot20 集成SpringSecurity02 -&gt; 利用SpringSecurity进行前后端分离的登录验证
  10. 打印vector内容