poj 1745 Divisibility(01背包)
来源:互联网 发布:世界地图制作软件 编辑:程序博客网 时间:2024/06/01 20:54
我看的那背包专辑把这个放01背包里了,感觉并不像啊。
(a+b)%mod=(a%mod+b%mod)%mod
dp[i][j]==true表示表示前i个数字经过加加减减的操作后,%K=j,dp[i][j]==false,那就是%K!=j。然后对下一个数字num计算(j+num)%K和(j-num)%K,然后标记,最后如果dp[N][0]==true,则说明前边那些数字经过++–的操作后能被K整除。
#include <stdio.h>#include <string.h>int num[10010];bool dp[10010][110];int N,K;int mod(int n){ return (n%K+K)%K;}int main(){ scanf("%d %d",&N,&K); for(int i = 0; i < N; ++i) scanf("%d",&num[i]); dp[1][mod(num[0])] = true; for(int i = 1; i < N; ++i) { for(int j = 0; j < K; ++j) { if(dp[i][j]) { dp[i+1][mod(j+num[i])] = true; dp[i+1][mod(j-num[i])] = true; } } } if(dp[N][0]) printf("Divisible\n"); else printf("Not divisible\n"); return 0;}
阅读全文
0 0
- poj 1745 Divisibility(01背包)
- poj 1745 Divisibility(01背包应用)
- POJ 1745 Divisibility(01背包变种)
- POJ 1745 Divisibility 类似0-1背包DP
- POJ 1745 Divisibility(0,1背包)(好题)
- poj 1745 Divisibility
- POJ 1745 Divisibility
- POJ 1745 Divisibility
- POJ 1745 Divisibility
- POJ 1745 Divisibility
- poj 1745 Divisibility
- poj 1745 Divisibility
- poj 1745 Divisibility dp
- POJ 1745 Divisibility DP
- poj 1745 Divisibility
- poj 1745-Divisibility
- POJ 1745 Divisibility
- poj 1745 Divisibility (dp)
- 密度聚类
- 定义脚本执行顺序
- JavaScript 常用代码段
- 虚拟机网络连接的桥接(bridge),NAT,Host Only模式浅析
- 组播
- poj 1745 Divisibility(01背包)
- js+rem动态计算font-size的大小,适配各种手机设备
- scu 1952
- win创建软连接
- 阿里云ECS服务器CentOS CPU莫名跑高,出现大量rcuob进程
- 线段树模板
- HDU 1198 Farm Irrigation
- JavaScript中的变量类型以及变量作用域
- Python基础语法之字符串