zoukankan      html  css  js  c++  java
  • poj1664_简单dp

    题目链接:http://poj.org/problem?id=1664

    Description

    把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。

    Input

    第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整数M和N,以空格分开。1<=M,N<=10。

    Output

    对输入的每组数据M和N,用一行输出相应的K。

    Sample Input

    1
    7 3
    

    Sample Output

    8
     1 #include <cstdio>
     2 #include <cstring>
     3 #include <iostream>
     4 #include <algorithm>
     5 using namespace std;
     6 
     7 int dp[12][12];
     8 void find()
     9 {
    10     for(int i = 1; i <= 10; i++)
    11         dp[1][i] = 1;
    12     for(int i = 2; i <= 10; i++)
    13     {
    14         for(int j = i; j <= 10; j++)
    15         {
    16             if(i == j)
    17                 dp[i][j] = 1;
    18             for(int k = 1; k <= j - i; k++)
    19                 dp[i][j] += dp[k][j - i];
    20         }
    21     }
    22 }
    23 int main()
    24 {
    25     int t, n, m;
    26     scanf("%d", &t);
    27     find();
    28     while(t--)
    29     {
    30         int sum = 0;
    31         scanf("%d %d", &m, &n);
    32         for(int i = 1; i <= n; i++)
    33             sum += dp[i][m];
    34         printf("%d
    ", sum);
    35     }
    36     return 0;
    37 }
  • 相关阅读:
    win7下设置smtp的方法
    win7下怎么安装IIS
    python语法笔记(二)
    python语法笔记(一)
    python 的类变量和对象变量
    mysql使用笔记(四)
    mysql使用笔记(三)
    mysql使用笔记(二)
    windows下重新安装TCP/IP协议栈
    c++程序编码
  • 原文地址:https://www.cnblogs.com/luomi/p/5544055.html
Copyright © 2011-2022 走看看