题目链接

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

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

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

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

  1. #include<iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. using namespace std;
  5. //处理出来n的质因子中,x的个数。
  6. int prime(int n,int x)
  7. {
  8. int res=;
  9. while(n) res+=n/x,n/=x;
  10. return res;
  11. }
  12. //f(1)到f(n)中不以5结尾的奇数的个数
  13. int expect_5_end_odd(int n,int x)
  14. {
  15. if(!n) return ;
  16. return n/+(n%>=x)+expect_5_end_odd(n/,x);
  17. }
  18. //以5结尾的数的个数。
  19. int expect_5_end(int n,int x)
  20. {
  21. if(!n) return ;
  22. return expect_5_end(n/,x)+expect_5_end_odd(n,x);
  23. }
  24.  
  25. int t[][]={
  26. ,,,,//2^4 2 2^2 2^3 的最后一位
  27. ,,,,//3^4 3 3^2 3^3 的最后一位
  28. ,,,,//4……
  29. ,,,//5……
  30. };
  31.  
  32. signed main()
  33. {
  34. int n,m;
  35. while(~scanf("%d%d",&n,&m))
  36. {
  37. m=n-m;
  38. int prime_2=prime(n,)-prime(m,);
  39. int prime_3=expect_5_end(n,)-expect_5_end(m,);
  40. int prime_5=prime(n,)-prime(m,);
  41. int prime_7=expect_5_end(n,)-expect_5_end(m,);
  42. int prime_9=expect_5_end(n,)-expect_5_end(m,);
  43.  
  44. if(prime_2<prime_5){puts("");continue;}
  45.  
  46. int res=;
  47. if(prime_2>prime_5) res*=t[][(prime_2-prime_5)%];
  48. res=res*t[][prime_3%]*t[][prime_7%]*t[][prime_9%]%;
  49. printf("%lld\n",res);
  50. }
  51. return ;
  52. }

题解 UVA10212 【The Last Non-zero Digit.】的更多相关文章

  1. 题解报告:hdu 1060 Leftmost Digit

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1060 问题描述 给定一个正整数N,你应该输出N ^ N的最左边的数字. 输入 输入包含多个测试用例. ...

  2. 题解报告:hdu 1061 Rightmost Digit(快速幂取模)

    Problem Description Given a positive integer N, you should output the most right digit of N^N. Input ...

  3. UVA10212 【The Last Non-zero Digit.】

    暴力可做!!!(十秒还不打暴力!!!)暴力算阶乘边算边取余上代码 #include<iostream> #define int long long //开long long using n ...

  4. LeetCode Next Greater Element III

    原题链接在这里:https://leetcode.com/problems/next-greater-element-iii/description/ 题目: Given a positive 32- ...

  5. 【题解】Digit Tree

    [题解]Digit Tree CodeForces - 716E 呵呵以为是数据结构题然后是淀粉质还行... 题目就是给你一颗有边权的树,问你有多少路径,把路径上的数字顺次写出来,是\(m\)的倍数. ...

  6. luoguP1118 [USACO06FEB]数字三角形`Backward Digit Su`… 题解

    一上午都在做有关搜索的题目,,, 看到这题之后就直接开始爆搜 结果只有70分, 其余的点硬生生的就是那么WA了. 我的天哪~ 70分代码: #include<iostream> #incl ...

  7. contesthunter暑假NOIP模拟赛第一场题解

    contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath& ...

  8. HD1060Leftmost Digit

      Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission( ...

  9. 233. Number of Digit One

    题目: Given an integer n, count the total number of digit 1 appearing in all non-negative integers les ...

随机推荐

  1. 分布式爬虫搭建系列 之四---scrapy分布式框架

    带录入SAFCDS 

  2. 12个有趣的c语言面试题&nbsp;

    1.gets()函数 问:请找出下面代码里的问题: #include int main(void) { char buff[10]; memset(buff,0,sizeof(buff)); gets ...

  3. 25-从零玩转JavaWeb-抽象类

    一.抽象类解决什么问题 求三角形,圆,矩形的面积 发现三个类都有共同的方法 ,所以我们可以抽出一个父类, 把他们相同的方法放到父类当中       二.什么是抽象方法 三.什么是抽象类 四.抽象类的特 ...

  4. PHP中file_exists()判断中文文件名无效的解决方法

    php中判断文件是否存在我们会使用file_exists函数或is_file函数,但在使用file_exists时如果你文件名或路径是中文在uft8编码文档时是无效.本文就来解决此问题,下面我们一起来 ...

  5. Logos

    [Logos] Logos is a component of the Theos development suite that allows method hooking code to be wr ...

  6. java Web 过滤器Filter详解

    简介 Filter也称之为过滤器,Web开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件或静态 html 文件等进行拦截,从而实现一些特殊 ...

  7. iOS与HTML5交互方法总结(修正)

    摘要 看了不少别人写的博客或者论坛,关于iOS与HTML5交互方法大概主要有5种方式: 1. 利用WKWebView进行交互(系统API) 2. 利用UIWebView进行交互(系统API) 3. 苹 ...

  8. 通明讲JDBC(一)–认识JDBC

    本章记录了jdbc的简单使用方式! 0,jdbc的作用 1,jdbc入门准备工作 2,jdbc注册驱动 3,使用jdbc对数据库CRUD 0,jdbc的作用 与数据库建立连接.发送操作数据库的语句并处 ...

  9. 推荐一款基于XNA的开源游戏引擎《Engine Nine》

    一.前沿导读 XNA是微软基于.Net部署的下一代3D/2D游戏开发框架,其实XNA严格来说类似下一代的DirectX,当然不是说XNA会取代DirectX,但是基于XNA我们对于面向XBOX360, ...

  10. Jmeter接口测试-基于nodejs的to do list项目说明

    一.了解测试项目 我们的测试项目叫做smile_task,简称sm_task.这是一个基于nodejs超简单的todo list. 它的主要流程就是:输入标题描述---点击创建一个任务---编辑修改任 ...