骰子算法 php,C++_C++实现N个骰子的点数算法,本文实例讲述了C++实现N个骰子 - phpStudy...
C++实现N个骰子的点数算法
本文实例讲述了C++实现N个骰子的点数算法,分享给大家供大家参考之用。具体方法如下:
题目要求:把n个骰子仍在地上,所有点数
实现代码如下:
#include
using namespace std;
const int g_maxValue = 6;
const int number = 6;
int array[(number - 1) * g_maxValue + 1];
void probility(int original, int current, int sum, int *array)
{
if (current == 0)
{
array[sum - original]++;
return;
}
for (int i = 1; i <= g_maxValue; i++)
{
probility(original, current - 1, sum + i, array);
}
}
void generateValue(int *array, int size)
{
if (array == NULL || size <= 0)
return;
for (int i = number; i <= number * g_maxValue; i++)
{
array[i - number] = 0;
}
probility(number, number, 0, array);
for (int i = 0; i < (number - 1) * g_maxValue + 1; i++)
{
cout << array[i] << " ";
}
}
void main()
{
generateValue(array, (number - 1) * g_maxValue + 1);
}
采用循环解法,和上述代码本质一样,但是略有不同。
具体实现代码如下:
#include
using namespace std;
void PrintProbability(int number)
{
const int g_maxValue = 6;
int *array[2];
for (int i = 0; i < 2; i++)
{
array[i] = new int[g_maxValue * number];
}
for (int i = 0; i < g_maxValue * number; i++)
{
array[0][i] = 0;
array[1][i] = 0;
}
int flag = 0;
for (int i = 0; i < g_maxValue; i++)
{
array[flag][i] = 1;
}
for (int i = 1; i < number; i++)
{
for (int j = 0; j < i; j++)
array[1 - flag][j] = 0;
for (int j = i; j < (i + 1) * g_maxValue; j++)
{
array[1 - flag][j] = 0;
for (int k = 1; k <= j && k <= g_maxValue; k++)
array[1 - flag][j] += array[flag][j - k];
}
flag = 1 - flag;
}
for (int i = number - 1; i < g_maxValue * number; i++)
{
cout << array[flag][i] << " ";
}
}
void main()
{
PrintProbability(2);
}
希望本文所述对大家C++程序算法设计的学习有所帮助。相关阅读:
js对列表中第一个值处理与jsp页面对列表中第一个值处理的区别详解
使用JQuery在线制作ppt并在线演示源码特效
探讨PHP删除文件夹的三种方法
win10正式版如何开启上帝模式?
PHP 双链表(SplDoublyLinkedList)简介和使用实例
jQuery实现简单的DIV拖动效果
SQL Server高级内容之case语法函数概述及使用
Android之带group指示器的ExpandableListView(自写)
深入浅析yii2-gii自定义模板的方法
JS实现仿QQ聊天窗口抖动特效
JavaScript中number转换成string介绍
ajax添加数据后如何在网页显示
Android视图控件架构分析之View、ViewGroup
yii框架配置默认controller和action示例
骰子算法 php,C++_C++实现N个骰子的点数算法,本文实例讲述了C++实现N个骰子 - phpStudy...相关推荐
- winform调用html,C#_C#通过html调用WinForm的方法,本文实例讲述了C#通过html调用W - phpStudy...
C#通过html调用WinForm的方法 本文实例讲述了C#通过html调用WinForm的方法.分享给大家供大家参考,具体如下: 完整测试代码: Form1.cs: using System; us ...
- 寻找某个数c语言,C++_C语言实现两个递减数列中寻找某一个数,本文实例讲述了C语言实现两个 - phpStudy...
C语言实现两个递减数列中寻找某一个数 本文实例讲述了C语言实现两个递减数列中寻找某一个数的方法,分享给大家供大家参考之用.具体方法如下: 通常来说这道题算二分查找法中非常有难度的一题了. 题目如下: ...
- php this指针的用法,C#_C#中this指针的用法示例,本文实例展示了C#中this指针的 - phpStudy...
C#中this指针的用法示例 本文实例展示了C#中this指针的用法,对于初学者进一步牢固掌握C#有很大帮助,具体内容如下: 一.this指针是什么: 这里有一些面向对象编程的概念需要说明:类(Cla ...
- php统计大写字母个数,C++_C++统计中英文大小写字母、数字、空格及其他字符个数的方法,本文实例讲述了C++统计中英文 - phpStudy...
C++统计中英文大小写字母.数字.空格及其他字符个数的方法 本文实例讲述了C++统计中英文大小写字母.数字.空格及其他字符个数的方法.分享给大家供大家参考,具体如下: /* * 作 者: 刘同宾 * ...
- java sqlite 多线程并发_C#_C#解决SQlite并发异常问题的方法(使用读写锁),本文实例讲述了C#解决SQlite并 - phpStudy...
C#解决SQlite并发异常问题的方法(使用读写锁) 本文实例讲述了C#解决SQlite并发异常问题的方法.分享给大家供大家参考,具体如下: 使用C#访问sqlite时,常会遇到多线程并发导致SQLI ...
- php两个字符串公共,C++_C语言求两个字符串的最长公共子串,本文实例讲述了C语言求两个字 - phpStudy...
C语言求两个字符串的最长公共子串 本文实例讲述了C语言求两个字符串的最长公共子串的方法.分享给大家供大家参考.具体实现方法如下: #include "stdio.h" #inclu ...
- 八皇后问题php,C++_C++实现八皇后问题的方法,本文实例展示了C++实现八皇后 - phpStudy...
C++实现八皇后问题的方法 本文实例展示了C++实现八皇后问题的方法,是数据结构与算法中非常经典的一个算法.分享给大家供大家参考之用.具体方法如下: 一般在八皇后问题中,我们要求解的是一个8*8的国际 ...
- 算法 c语言_C语言中10个经典的算法,学会它,利用它
C语言中有有许多经典的算法,这些算法都是许多人的智慧结晶,也是编程中常用的算法,这里面包含了众多算法思想,掌握这些算法,对于学习更高级的.更难的算法都会有很大的帮助,会为自己的算法学习打下坚实的基础. ...
- php 绘制圆角矩形,C#_C#画圆角矩形的方法,本文实例讲述了C#画圆角矩形 - phpStudy...
C#画圆角矩形的方法 本文实例讲述了C#画圆角矩形的方法.分享给大家供大家参考.具体实现方法如下: protected void Page_Load(object sender, EventArgs ...
最新文章
- Linux下日志文件过大解决方案
- Apache理论与实战
- TCP 协议面试灵魂 12 问 | 强势整理
- python 读下一行-Python:读取上一行并与当前行进行比较
- 程序员吐槽_某程序员吐槽一程序员大佬竟然放弃百度offer,回老家进烟草公司!是不是脑子有坑?网友:你才脑子有坑!...
- python线性回归分析看相关性_机器学习入门-相关分析之简单线性回归
- 十五、MySQL变量(系统变量、自定义变量)相关知识总结
- bootstrap思想总结_bootstrap学习心得总结-css样式设计分享
- Java 并发 —— yield/sleep、wait/notify、join
- 强大高可用的数据可视化神器plotly_express实践记录
- 按学号查找学生信息 用c语言表达,学生信息管理系统C语言编程.docx
- add a redfish schema
- C语言捕捉键盘,按键信息
- 1、Python3.9版本官网下载安装教程
- python 数据显示不完整 有省略号_python pandas之Dataframe的数据print输出显示为...省略号...
- microusb贴片 ad封装_diy从pcb到焊接,到程序调试,真正意思上的diy机械键盘pcb由ad绘制...
- codingdojo kata 之fizzbuzz
- 在电脑浏览器上怎样对一整个页面进行完整的截图?(整站截图)
- 用C语言对数据或文件内容进行加密
- (ACWing yxc讲解基础算法课程笔记)基础算法 整数二分