求个算法 一个桶里面有10条鱼 有10个桶 每个桶一次捞鱼数量为0-10问捞够90条鱼的有几种可能?用c#编程实现! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 穷举法吧- -!可以把10桶鱼看成10×10的二维数组a[9][9],有鱼的为1,没鱼的为0,0的个数在数组中为10,1的个数为90,然后a[0][0]=0,a[0][1]=0,...每次赋值是都计算一下0和1的个数,当0的个数为10或1的个数为90就是一种,好像很麻烦,或许用哈希表能简单点,我不会备注:新手,写错了的话,不带骂人的啊 {y:一共几个桶z: 一共几条鱼}function TMainForm.P(y,z:integer):integer;var i : integer;begin if (y <= 1) or (z = 0) then result := 1 else for i := 0 to z do result := result + P(y - 1, z - i);end;手头没有.NET工具,怕记事本写的语法有问题。这个是delphi版本的 每次从每个桶里取鱼,第一个桶 A条 第二个桶 B条 第三个桶 C条。。第10个桶 J 条。就是说90=A+B+C+D+E+F+G+H+I+J,有多少种组合方式,如果要打印出来的 确实多高中数学中的排列组合 呵呵 class Program { static void Main(string[] args) { Fish(10, 0); Console.WriteLine(count); } static int count = 0; static void Fish(int bucket, int result) { for (int i = 10; i >= 0; --i) { if (bucket == 1) { if (result + i == 90) { ++count; } } else { Fish(bucket - 1, result + i); } } } }要运行10^10次,计算时间很长,打印结果是92378,比预想的小,可能不正确。 求教一个关于proteceted字段访问性的问题,有点看不懂 高手救命!!!! 连接服务器数据库问题 jquery easyUI 包含checkbox的表格如何初始化checkbox 如何用Button控制部分组件不可见? 100分求解关于datagridview删除行的问题 C#如何往Excel文件中写入数据 百分请教..磕头拜谢 C#取ini文件中的所有section和key的名字的问题!求助各位! 如何设置Panel的DoubleBuffer??? 在桌面程序中有没有办法是用sdf文件做数据源 c#写程序导入数据的问题
备注:新手,写错了的话,不带骂人的啊
y:一共几个桶
z: 一共几条鱼
}
function TMainForm.P(y,z:integer):integer;
var
i : integer;
begin
if (y <= 1) or (z = 0) then
result := 1
else
for i := 0 to z do
result := result + P(y - 1, z - i);
end;
手头没有.NET工具,怕记事本写的语法有问题。
这个是delphi版本的
高中数学中的排列组合 呵呵
{
static void Main(string[] args)
{
Fish(10, 0);
Console.WriteLine(count);
} static int count = 0; static void Fish(int bucket, int result)
{
for (int i = 10; i >= 0; --i)
{
if (bucket == 1)
{
if (result + i == 90)
{
++count;
}
}
else
{
Fish(bucket - 1, result + i);
}
}
}
}要运行10^10次,计算时间很长,打印结果是92378,比预想的小,可能不正确。