newcoder Tachibana Kanade Loves Probability(小数点后第k位)题解
题意:
题目链接
立华奏在学习初中数学的时候遇到了这样一道大水题:
“设箱子内有 n 个球,其中给 m 个球打上标记,设一次摸球摸到每一个球的概率均等,求一次摸球摸到打标记的球的概率”
“emmm...语言入门题”
但是她改了一下询问方式:设最终的答案为 p ,请输出 p 小数点后 K1K1 到 K2K2 位的所有数字(若不足则用 0 补齐)
思路:上次好像蓝桥杯看到过,暴力骗了80分没做了。还是自己菜啊,显然我们模拟除法的过程是 m * 10 % n * 10 % n * 10 % n......,那不就是m * (10 ^ k1-1 % n) % n吗,直接快速幂不就好了吗
代码:
#include<cmath> #include<cstdio> #include<vector> #include<cstring> #include <iostream> #include<algorithm> using namespace std; typedef long long ll; const int maxn = 5000 + 10; const double INF = 0x3f3f3f3f; ll ppow(ll a, ll b, ll c){ll ret = 1;while(b){if(b & 1) ret = ret * a % c;b >>= 1;a = a * a % c;}return ret; } int main(){ll t, n, m, k1, k2;cin >> t;while(t--){cin >> m >> n >> k1 >> k2;ll tmp = ppow(10, k1 - 1, n);m = m * tmp % n;for(int i = k1; i <= k2; i++){m *= 10;printf("%d", m / n);m %= n;}cout << endl;}return 0; }
转载于:https://www.cnblogs.com/KirinSB/p/10661350.html
newcoder Tachibana Kanade Loves Probability(小数点后第k位)题解相关推荐
- 牛客练习赛43 Tachibana Kanade Loves Probability(快速幂)
链接:https://ac.nowcoder.com/acm/contest/548/B 来源:牛客网 题目描述 立华奏在学习初中数学的时候遇到了这样一道大水题: "设箱子内有 n 个球,其 ...
- Tachibana Kanade Loves Review(克鲁斯卡尔 最小生成树)
链接:https://ac.nowcoder.com/acm/contest/548/C 来源:牛客网 Tachibana Kanade Loves Review 时间限制:C/C++ 2秒,其他语言 ...
- 【js】小数点后保留两位小数
小数点后保留两位小数 dicountPrice.toFixed(2)
- SQL Server 数值四舍五入,小数点后保留2位
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位. 2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后 ...
- 枚举算法:概率计算。在标注编号分别为1,2,...,n的n张牌中抽取3张,试求抽出3张牌编号之和为素数的概率。输入整数n(3<n<=3000),输出对应的概率(四舍五入到小数点后第3位)。
概率计算.在标注编号分别为1,2,-,n的n张牌中抽取3张,试求抽出3张牌编号之和为素数的概率.输入整数n(3<n<=3000),输出对应的概率(四舍五入到小数点后第3位). 思路: 组合 ...
- js小数运算出现多为小数问题_js小数计算小数点后显示多位小数的实现方法
首先写一个demo 重现问题,我使用的是一个js在线测试环境[打开] 改写displaynum()函数 function displaynum(){var num = 22.77;alert(num ...
- C# 小数点后保留两位小数
C# 小数点后保留两位小数,四舍五入的函数及使用方法 1 Math.Round(45.367,2) //Returns 45.37 2 Math.Round(45.365,2) //Returns 4 ...
- python中小数点后取2位(四舍五入)以及取2位(四舍五不入)的方法总结
在很多场景的计算中,最终得到的数值例如123.45678,要截取2位小数得到123.45,而不是默认的四舍五入方法得到123.46,如何实现呢? 文章目录 一.小数点后取2位(四舍五入)的方法 方法一 ...
- 输出小数点后第n位数字
分数a/b化为小数后,小数点后第n位的数字是多少?[输入]三个正整数a.b.n,0<a<b<100,1[表情]n[表情]10000,相邻两个数之间用单个空格隔开. #include& ...
最新文章
- 深度丨AI 与区块链:两大热门技术,会碰撞出什么样的火花?
- html标签默认属性值之margin;padding值
- php 动态参数,php怎么实现动态传参数?
- 在BizTalk Server 2006 R2 中调用 WCF Services – Part 3
- 洛谷oj---1036 选数
- 《网上图书销售系统》功能需求
- H5手写板电子签名开发
- Note: further occurrences of HTTP request parsing errors will be logged at DEBUG level. java.lang.Il
- PostGIS Raster 空间查询
- PIX for Windows使用
- 在线登录注册功能(android客户端+javaweb服务端+腾讯云服务器+腾讯云数据库)
- 4.9 黑名单数据库的界面展示
- nonebot,cqhttp 机器人学习1
- 分号与逗号的区别及举例_怎样区别顿号、逗号和分号
- idea中service启动类是灰色,而且启动类经常自动消失解决方法
- 企业基本财务指标计算
- 单页应用的优缺点_单页和多页应用程序之间的优缺点
- NAS信令学习笔记 ——TAU(2)
- 百度地图导航路线起点、终点、途经点删除的方法
- Linux内核的framebuffer相关的内核代码注释
热门文章
- zcmu-1182(大数相减)
- 【译】Build Knowledge Graph from unstructured corpus using Machine Learning
- AOP面向切面编程在Android中的使用
- 反调试检测之一TracerPid
- android retrofit入门,Android开发 retrofit入门讲解
- java二维矩阵怎么进行转置_矩阵求导的本质与分子布局、分母布局的本质(矩阵求导——本质篇)...
- python组成三位无重复数字_Python生成十万个无序且唯一的数字
- php 自动签到源码,我也来发个自动签到脚本,PHP版
- 2017年9月16日普级组 在食人百货绽放的蓝蔷薇
- AtCoder AGC030C Coloring Torus (构造)