关闭

POJ 1837 Balance(01背包)

207人阅读 评论(0) 收藏 举报
分类:

Description
有一个天平,两个臂上有钩子,臂长15,给出所有钩子的位置,给出每个钩码的重量(各不相同),求必须使用所有钩码的前提下,有多少种平衡方法
Input
第一行为两个整数n和m分别表示钩子个数和钩码个数(2<=C,G<=20),第二行为钩子位置,第三行为钩码质量
Output
输出平衡方法种数
Sample Input
2 4
-2 3
3 4 5 8
Sample Output
2
Solution
a[i]表示钩子位置,b[i]表示钩子质量,dp[i][j]表示用前i个砝码到达力矩j的方法数
dp[i ][j+a[k]*b[i]]+=dp[i-1][j];
Code

#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
#define maxn 21
#define maxv 15000
typedef long long ll;
ll n,m;
ll a[maxn],b[maxn];
ll dp[maxn][maxv];
int main()
{
    while(scanf("%d%d",&n,&m)!=EOF)
    {
        memset(dp,0,sizeof(dp));
        dp[0][maxv/2]=1;//不挂钩码中心位置平衡 
        int i,j,k;
        for(i=1;i<=n;i++)
            scanf("%d",&a[i]);
        for(i=1;i<=m;i++)
            scanf("%d",&b[i]);
        for(i=1;i<=m;i++)//m个钩码 
            for(j=1;j<=maxv;j++)//一个钩码只能用一次 
                if(dp[i-1][j])//判断前一状态是否存在 
                    for(k=1;k<=n;k++)//将这个钩码分别钩在n个钩子上 
                        dp[i][j+a[k]*b[i]]+=dp[i-1][j];
        printf("%d\n",dp[m][maxv/2]);//令中心位置平衡的种类数 
    }
    return 0;
}
0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

POJ 1837 Balance(动态规划之背包问题)

Balance Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 11436   Accepted: 7130 ...
  • LYHVOYAGE
  • LYHVOYAGE
  • 2015-04-15 20:12
  • 1444

Poj 1837 Balance(经典分组背包)

题目大意: 有一个天平,天平左右两边各有若干个钩子,总共有C个钩子,有G个钩码,求将钩码全部挂到钩子上使天平平衡的方法的总数。 其中可以把天枰看做一个以x轴0点作为平衡点的横轴 看了...
  • ygqwan
  • ygqwan
  • 2013-05-06 23:34
  • 1035

POJ 2142The Balance(扩展欧几里得)

The Balance Description Ms. Iyo Kiffa-Australis has a balance and only two kinds of weights to measu...
  • wust_xhj
  • wust_xhj
  • 2015-07-17 13:47
  • 1031

POJ1837Balance(动态规划01背包)

Balance Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 14322   Accep...
  • qq_34826781
  • qq_34826781
  • 2017-03-31 22:14
  • 130

POJ 1837 Balance(01背包)

POJ 1837 Balance(01背包) http://poj.org/problem?id=1837 题意:        有一个天平,天平左右两边各有若干个钩子,总共有C个钩子(每个钩子...
  • u013480600
  • u013480600
  • 2014-10-19 15:15
  • 811

poj 1837 Balance -dp-01背包

Balance Gigel has a strange "balance" and he wants to poise it. Actually, the device is different fr...
  • ly59782
  • ly59782
  • 2016-10-22 16:44
  • 149

POJ 1837 Balance(01背包 动态规划)

Balance Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 12613   Accepted: 7903 ...
  • huatian5
  • huatian5
  • 2016-03-23 11:41
  • 336

POJ Balance 1837(01背包)

Balance Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 13585   Accep...
  • ky961221
  • ky961221
  • 2016-08-16 21:21
  • 95

(POJ1837)Balance <01背包变形经典题>

Balance DescriptionGigel has a strange “balance” and he wants to poise it. Actually, the device is ...
  • STILLxjy
  • STILLxjy
  • 2016-11-23 14:04
  • 212

解题报告:POJ 1837 Balance 01背包变形

Description Gigel has a strange "balance" and he wants to poise it. Actually, the device is diffe...
  • qq_32570675
  • qq_32570675
  • 2016-01-30 13:07
  • 202
    个人资料
    • 访问:487264次
    • 积分:23186
    • 等级:
    • 排名:第350名
    • 原创:1876篇
    • 转载:0篇
    • 译文:0篇
    • 评论:68条
    最新评论