标题: 小数第n位

我们知道,整数做除法时,有时得到有限小数,有时得到无限循环小数。
如果我们把有限小数的末尾加上无限多个0,它们就有了统一的形式。

本题的任务是:在上面的约定下,求整数除法小数点后的第n位开始的3位数。

输入:
一行三个整数:a b n,用空格分开。a是被除数,b是除数,n是所求的小数后位置(0<a,b,n<1000000000)
输出:
一行3位数字,表示:a除以b,小数后第n位开始的3位数字。

比如:
输入:
1 8 1

程序应该输出:
125

再比如:
输入:
1 8 3

程序应该输出:
500

再比如:
输入:
282866 999000 6

程序应该输出:
914

资源约定:
峰值内存消耗 < 256M
CPU消耗 < 1000ms

请严格按要求输出,不要画蛇添足地打印类似:“请您输入…” 的多余内容。

所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。

注意: main函数需要返回0
注意: 只使用ANSI C/ANSI C++ 标准,不要调用依赖于编译环境或操作系统的特殊函数。
注意: 所有依赖的函数必须明确地在源文件中 #include <xxx>, 不能通过工程设置而省略常用头文件。

提交时,注意选择所期望的编译器类型。


笨笨有话说:
这个除法小学就会算啊,模拟手算除法的过程就可以了吧。
只是数有点大啊…
管它呢,能算多远算多远…

歪歪有话说:
如果我能确定循环节从哪里开始到哪里结束,再大的数不过就是与它取模的余数等价啊

数论

题目要求第n位的后三位,很显然只要我们把它变成整数,再%1000就可以了;其实也不一定非要全部变成整数,并且对于循环小数也是不可能变成整数的。所以我们只需要把第n+2位之前变成整数,%1000就可以了。

a/b∗10n+2%1000a/b*10^{n+2}\%1000a/b∗10n+2%1000

公式:x / d % m = x % (d * m) / d

a∗10n+2%(b∗1000)/ba*10^{n+2}\%(b*1000)/ba∗10n+2%(b∗1000)/b

最后通过快速幂求解。

Code

def Qpow(a, b, mod):res = 1while b:if b & 1:res = res * a % moda = a * a % modb >>= 1return resa, b, n = list(map(int, input().split()))
mod = b * 1000
res = Qpow(10, n + 2, mod)
tem = (a % mod * res % mod) % mod
print(str(int(tem / b)).ljust(3, '0'))

2017\National _C_C++_C\4.小数第n位相关推荐

  1. 2017\National _C_C++_C\1.哥德巴赫分解

    标题:哥德巴赫分解 哥德巴赫猜想认为:不小于4的偶数都可以表示为两个素数的和. 你不需要去证明这个定理,但可以通过计算机对有限数量的偶数进行分解,验证是否可行. 实际上,一般一个偶数会有多种不同的分解 ...

  2. 2019\National _C_C++_C\试题 C: 平方拆分

    [问题描述] 将 2019 拆分为若干个两两不同的完全平方数之和,一共有多少种不同的方法? 注意交换顺序视为同一种方法,例如 132 + 252 + 352 = 2019 与 132 + 352 + ...

  3. 2019\National _C_C++_C\试题 B: 递增序列

    [问题描述] 对于一个字母矩阵,我们称矩阵中的一个递增序列是指在矩阵中找到两个字母,它们在同一行,同一列,或者在同一 45 度的斜线上,这两个字母从左向右看.或者从上向下看是递增的. 例如,如下矩阵中 ...

  4. 2013\National _C_C++_C\1.好好学习

    汤姆跟爷爷来中国旅游.一天,他帮助中国的小朋友贴标语. 他负责贴的标语是分别写在四块红纸上的四个大字:"好.好.学.习". 但是汤姆不认识汉字,他就想胡乱地贴成一行. 请你替小汤姆 ...

  5. 2017/National _C_C++_B/2/磁砖样式

    标题:磁砖样式 小明家的一面装饰墙原来是 3*10 的小方格. 现在手头有一批刚好能盖住2个小方格的长方形瓷砖. 瓷砖只有两种颜色:黄色和橙色. 小明想知道,对于这么简陋的原料,可以贴出多少种不同的花 ...

  6. [蓝桥杯][2017年第八届真题]小数第n位(数学)

    题目描述 我们知道,整数做除法时,有时得到有限小数,有时得到无限循环小数. 如果我们把有限小数的末尾加上无限多个0,它们就有了统一的形式. 本题的任务是:在上面的约定下,求整数除法小数点后的第n位开始 ...

  7. 2017年第八届蓝桥杯C/C++ C组国赛 —— 第四题:小数第n位

    标题: 小数第n位 我们知道,整数做除法时,有时得到有限小数,有时得到无限循环小数. 如果我们把有限小数的末尾加上无限多个0,它们就有了统一的形式. 本题的任务是:在上面的约定下,求整数除法小数点后的 ...

  8. c++输出的值精确到小数点后5位_c/c++linux 2019最新阿里研发类面试题及答案分享...

    问题点总结: 1.1.1 问题:如何实现一个高效的单向链表逆序输出? 1.1.2 题目:已知 sqrt (2)约等于 1.414,要求不用数学库,求 sqrt (2)精确到小数点后 10 位. 1.1 ...

  9. c语言double型小数点后几位_c语言float类型小数点后有几位有效数字?_后端开发...

    #define和printf是不是c语句?_后端开发 #define和printf都不是c语句,因为C语言的语句用来向计算机系统发出操作指令,一个语句经编译后产生若干条机器指令,C语句都是用来完成一定 ...

最新文章

  1. 开放平台架构_三步画出产品业务架构图
  2. smarty模板引擎原理解析
  3. Teams的MessageExtension最新功能:Initiate actions
  4. Hadoop入门进阶步步高(四)-测试Hadoop
  5. AI 工程师的崩溃是在哪一瞬间
  6. php fastdfs扩展,php如何安装fastdfs扩展
  7. 管理赚得多还是程序员多_程序员如何为自己开辟出更多的收入渠道
  8. informix 计算 日期之差
  9. 【JSP进阶】JSP九大内置对象,这你也不知道?
  10. 诚龙网刻PXE网刻出错解决
  11. sublime text3和package control
  12. linux打开pkg文件怎么打开,linux中怎么打开tar.rar.gz文件
  13. 算法交易:华尔街怪兽的核武器
  14. python selenium某里国际站网站注册登录验证问题
  15. 学信网学位认证报告在哪
  16. windows命令行中 启动应用程序
  17. 商业智能BI企业管理决策之经营管理会议
  18. PyQt5 界面显示无响应
  19. mysql数据库是的缩写_MYSQL数据库命名与其设计规范
  20. python编程代码画画_python编程:创意抽象画

热门文章

  1. Jmeter4.0----CSV Data Set Config_对输入参数进行参数化(13)
  2. SyncNavigator数据库同步软件8.4.1 中文版
  3. JSON在PHP中的基本应用
  4. 在ubuntu上mysql出现ERROR 1045(28000):Access denied for user ‘young‘@’localhost‘(using password:NO)...
  5. 【★★★★★模板专区★★★★★】
  6. ASIHTTP 框架,同步、 异步请求、 上传 、 下载
  7. 01Spring的helloworld程序
  8. oracle11g 隐藏参数_oracle隐含参数的查看与修改
  9. 郑州军办计算机学校,郑州市国防科技学校2019级新生开启军训模式
  10. Java黑皮书课后题第5章:**5.28(显示每月第一天是周几)编写程序,提示用户输入年份和代表概念第一天是周几的数字,然后在控制台显示该年各个月份的第一天是周几