HDU's ACM 1709 The Balance
来源:互联网 发布:java goto break 编辑:程序博客网 时间:2024/06/03 16:39
原题链接:HDU's ACM 1709 The Balance
分析:竟然有左物右码的制约,敢不敢告诉我们。不过还是母函数的方法,参见HDU's ACM 1028 Ignatius and the Princess III,不过因为有左物右码的规则,故有负指数,但考虑实际应将其看成正数,且因为结果只在于有无方法构造这种质量,故系数的具体数值不重要。
AC Code:
<span style="font-family:Microsoft YaHei;font-size:14px;">#include <stdio.h>#include <string.h>#define MAXN 10000#define NUM_MAX 105int coeff1[MAXN];int coeff2[MAXN];int p[NUM_MAX];int ans[MAXN];int main(){int n;int sum;int res;int i, j, k;while(scanf("%d", &n) == 1) {sum = 0;for(i=0;i<n;++i) {scanf("%d", p+i);sum += p[i];}memset(coeff1, 0, sizeof(coeff1));memset(coeff2, 0, sizeof(coeff2));coeff1[0] = coeff1[p[0]] = 1;for(i=1;i<n;++i){for(j=0;j<=sum;++j)for(k=-p[i];k<=p[i];k+=p[i]){coeff2[j+k>0?j+k:-j-k] += coeff1[j];}for(j=0;j<=sum;++j){coeff1[j] = coeff2[j]? 1:0;coeff2[j] = 0;}}res = 0;for(i=0;i<=sum;++i){if(!coeff1[i]){ans[res++] = i;}}if(!res)printf("0\n");else{printf("%d\n%d", res, ans[0]);for(i=1;i<res;++i)printf(" %d", ans[i]);printf("\n");}}return 0;}</span>
0 0
- HDU's ACM 1709 The Balance
- 杭电 HDU ACM 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance
- HDU 1709 The Balance
- hdu 1709-The Balance
- Hdu 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance
- HDU 1709 The Balance
- hdu 1709 The Balance
- HDU 1709 The Balance
- HDU 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance
- hdu 1709 The Balance (dp)
- poj 3641 Pseudoprime numbers 【快速幂】
- java HashMap在不发生冲突的情况下get(key)时间复杂度是o(1)
- java学习——类和对象
- 题目1073:杨辉三角形
- Openmp和MKL的一点兼容性问题:VS2010+MKL10.0+OpenMP2.0
- HDU's ACM 1709 The Balance
- 原创文章亲2
- Java中Socket上的Read操作阻塞问题
- 开发自定义组件
- 五一出游|五一劳动节淘宝活动主题_2012天猫51黄金周促销活动阿里百站联盟五一出游|五一劳动节淘宝活动主题_2012天猫51黄金周促销活动
- 光耦的使用
- 毕业小感
- 【信淘锦囊】“包上淘宝活动、先上活动再付费”之陷阱代上活动【信淘锦囊】“包上淘宝活动、先上活动再付费”之陷阱
- Oracle解锁,改密及删除Oracle操作