uva10943】的更多相关文章

递推  还是比较容易的 /************************************************************************* > Author: xlc2845 > Mail: xlc2845@gmail.com > Created Time: 2013年10月19日 星期六 08时22分48秒 ************************************************************************/…
很裸的隔板法. 引用一下维基上对隔板法的解释: 现在有10个球,要放进3个盒子里 ●●●●●●●●●● 隔2个板子,把10个球被隔开成3个部份 ●|●|●●●●●●●●.●|●●|●●●●●●●.●|●●●|●●●●●●.●|●●●●|●●●●●.●|●●●●●|●●●●.●|●●●●●●|●●●....... 如此类推,10个球放进3个盒子的方法总数为 n个球放进k个盒子的方法总数为 问题等价于求的可行解数,其中为正整数. **如果允许有空盒子**: 现在有10个球,要放进3个盒子里,并允许空…
题目大意 多组数据,每组数据给定两个整数 \(n,k\),求出用 \(k\) 个不超过 \(n\) 的数相加得到 \(n\) 的方案数(不同顺序不算同种). 分析 计数水题.令 \(f_{i,j}\) 表示用 \(j\) 个数相加得到 \(i\) 的方案数.则有 \(f_{i,j}=\sum_{k=0}^i f_{i-k,j-1}\).边界 \(f_{i,1}=1\) #include<bits/stdc++.h> using namespace std; const int mod = 10…
题意:      给你两个数字n,k,意思是用k个不大于n的数字组合(相加和)为n一共有多少种方法? 思路:       比较简单的递推题目,d[i][j]表示用了i个数字的和为j一共有多少种情况,则d[i][j]=d[i][j] + d[i-1][j] (0<=j<=i),可以降成一维则d[j] = d[j] + d[k](0<=k<j) #include<stdio.h> #include<string.h> int main () {     int…
uva 106 这题说的是 说计算 x^2 + y^2  =  z^2  xyz 互质 然后计算个数和 在 N内 不在 勾股数之内的数的个数 然后去找需要的 维基百科上 看到 另 n*m*2 =b     n*n+m*m=c  m*m-n*n = a  m>n 然后这样可以计算出 所有互质的 勾股数 然后进行枚举n和m 进行判断 还有一个问题他为什么不会遗漏 互质的勾股数呢   我自己想了一下 应该是这样的  也就是说 n^2 和 m^2  必须为整数 就是说 他们是分数已经不可能了 那现在来讨…
https://vjudge.net/problem/UVA-10943 题意: 把K个不超过N的非负整数加起来,使得它们的和为N,有多少种方法? 思路: d[i][j]表示用i个数加起来为j的方法数. #include<iostream> #include<cstdio> #include<cmath> #include<cstring> using namespace std; +; const int mod=1e6; int n,k; int d[m…