剑指Offer43 n个骰子点数概率】的更多相关文章

/************************************************************************* > File Name: 43_Dics.cpp > Author: Juntaran > Mail: JuntaranMail@gmail.com > Created Time: 2016年09月04日 星期日 16时46分00秒 ***************************************************…
骰子点数概率 时间限制:1 秒 内存限制:32 兆 题目描述: 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入n,打印出S的所有可能的值出现的概率. 输入: 输入包括一个整数N(1<=N<=1000),代表有N个骰子. 分析一个骰子的 1: 0.167 2: 0.167 3: 0.167 4: 0.167 5: 0.167 6: 0.167 如果有两个骰子,6*6->36个结果保存到 2~12的范围内对于3骰子,则 6*(2~12)的结果,保存在3~18的范围,有重复计算,则d…
题意 输入骰子个数n,打印出所有骰子朝上的点的点数之和,及对应的概率. 题解 循环. n个骰子,点数之和在n~6n范围内.计算n个骰子扔出和为m的情况数,等于n-1个骰子扔出m-1,m-2...m-6的情况数之和. 最终=m/6^n. 代码 #include <iostream> #include <math.h> #define MAX_N 10000 using namespace std; class Solution{ public: void printProbabili…
题目: 把n个骰子扔在地上,所有骰子朝上一面的点数之和为s.输入n,打印出s的所有可能的值出现的概率. 题解: 使用两个数组存每次投的点数 void theProbability(const int &num) { )return ; vector<vector<, vector< * num + , )); ; ; i <= ; ++i)theSum[flag][i] = ;//第一次投,每个数的概率相同 ; i <= num; ++i)//骰子数 { //for…
python版本代码 g_maxValue = 6 # 单个骰子最大的点数 def PrintProbability(number): ''' :param number: 骰子的个数 :return: 打印概率分布,返回表示概率分布的数组 ''' if number < 1: # 骰子个数小于1 return maxSum = number * g_maxValue pProbabilities = [0 for i in range(maxSum - number + 1)] Probabi…
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:316 解决:29 题目描述: 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入n,打印出S的所有可能的值出现的概率. 输入: 输入包括一个整数N(1<=N<=1000),代表有N个骰子. 输出: 可能有多组测试数据,对于每组数据, 按照Sample Output的格式输出每一个可能出现的和S的概率. 样例输入: 1 2 样例输出: 1: 0.167 2: 0.167 3: 0.167 4: 0.167 5: 0.167 6:…
最大子段和,最大能取所有 ---------------------------------------------------------------- 时间限制:1秒 空间限制:32768K 热度指数:211448 本题知识点: 数组 题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学.今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决.但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢…
题目: 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”.是不是很简单?OK,搞定它! 分析: 对一个字符串实现移位操作,在这里我们不使用拼接的方法来做,仅使用翻转来完成. 根据所给的左移位数K将字符串分成两部分,分别对两个部分进行翻转. 例如:S=”abcXYZdef”,K=3,分成s…
1 题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”.是不是很简单?OK,搞定它! 2 思路和方法 str=erase(pos,n);  //删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符. str1=s.substr(0,n);  //获得字符串s中 …
题目: 牛客最近来了一个新员工Fish,每天早晨总是会拿着一本英文杂志,写些句子在本子上.同事Cat对Fish写的内容颇感兴趣,有一天他向Fish借来翻看,但却读不懂它的意思.例如,“student. a am I”.后来才意识到,这家伙原来把句子单词的顺序翻转了,正确的句子应该是“I am a student.”.Cat对一一的翻转这些单词顺序可不在行,你能帮助他么? 分析: 这道题的原理和剑指Offer-43.左旋转字符串(C++/Java)类似,先将字符串整体翻转一次,然后根据空格划分单词…