[Luogu2915] [USACO08Nov,Gold] Mixed Up Cows [状态压缩][dp]
如果这道题目的K≤9那就是一道数位dp了
不过它的K≤3400,N≤16。
水状压。
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstdlib>
#include<cctype>
#include<cmath>
#include<ctime>
#include<cstring>
using namespace std;
int n, K, s[25005];
long long F[20][65565];
int limit;
int main() {scanf("%d%d", &n, &K);for (int i = 1; i <= n; ++i) {scanf("%d", &s[i]);}limit = (1<<n) - 1;for (int i = 1; i <= n; ++i) F[i][1<<i-1] = 1;for (int i = 1; i < limit; ++i) {for (int j = 1; j <= n; ++j) {if (!(i&1<<j-1)) continue;if (!F[j][i]) continue;for (int k = 1; k <= n; ++k) {if (i&1<<k-1) continue;if (abs(s[k] - s[j]) <= K) continue;F[k][i|1<<k-1] += F[j][i];}}}long long ans = 0;for (int i = 1; i <= n; ++i) ans += F[i][limit];printf("%lld", ans);return 0;
}
[Luogu2915] [USACO08Nov,Gold] Mixed Up Cows [状态压缩][dp]相关推荐
- BZOJ1688|二进制枚举子集| 状态压缩DP
Disease Manangement 疾病管理 Description Alas! A set of D (1 <= D <= 15) diseases (numbered 1..D) ...
- 状态压缩dp入门 第一题 POJ 3254 Corn Fields
Corn Fields Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 6460 Accepted: 3436 Descr ...
- 【BZOJ3049】Island Travels,SPFA预处理+状态压缩DP
传送门(权限题) 3049: [Usaco2013 Jan]Island Travels Time Limit: 10 Sec Memory Limit: 128 MB Submit: 84 Solv ...
- 动态规划-状态压缩DP
[SCOI2005] 互不侵犯 题目描述 https://www.luogu.com.cn/problem/P1896 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它 ...
- 0x56. 动态规划 - 状态压缩DP(习题详解 × 7)
目录 Problem A. 最短Hamilton路径 ProblemB. 蒙德里安的梦想 Problem C. Corn Fields Problem D. 小国王 Problem E. 炮兵阵地 P ...
- POJ 2411 Mondriaan‘s Dream(最清楚好懂的状压DP讲解)(连通性状态压缩DP)
poj 2411 Mondriaan's Dream(最清晰的状压DP解析) 闫氏DP大法好 我们这里是一列一列地来,因为是一个棋盘性的状态压缩DP,从哪个方向都一样 摆放的小方格总方案数 等价于 横 ...
- hdu1074 状态压缩dp+记录方案
题意: 给你一些作业,每个作业有自己的结束时间和花费时间,如果超过结束时间完成,一天扣一分,问你把n个作业完成最少的扣分,要求输出方案. 思路: 状态压缩dp,记录方案数的地方 ...
- FZU-2218 Simple String Problem(状态压缩DP)
原题地址: 题意: 给你一个串和两个整数n和k,n表示串的长度,k表示串只有前k个小写字母,问你两个不含相同元素的连续子串的长度的最大乘积. 思路: 状态压缩DP最多16位,第i位的状态表示第i位字母 ...
- 《算法竞赛进阶指南》打卡-基本算法-AcWing 91. 最短Hamilton路径:位运算、状态压缩dp、dp
文章目录 题目解答 题目链接 题目解答 分析: 状态压缩dp是用二进制数来表示状态. 数据范围n = 20, 那么状态总量就是2202^{20}220个状态. 可以按照以下思路去思考: 哪些点被用过 ...
最新文章
- SAP WM 采购订单收货后LT06报错-No bin types have been assigned to storage unit type IP-
- SpringCloud Zuul初体验
- 谈谈InnoDB下的记录锁,间隙锁,next-key锁
- ASP.NET Core 基础教程 - ASP.NET Core 基础教程 - 简单教程,简单编程
- PL/SQL 结构与实例
- 金融统计分析与挖掘实战5.1-5.2
- OSCache操作详解+标签使用
- 【Java开发工具】Generator:Java代码生成工具
- 机器学习-对线性回归、逻辑回归、各种回归的概念学习
- 谷歌浏览器百度网盘在线倍速播放
- 第九届全国大学生机械设计创新大赛基于STM32F407的HMI USART串口屏智能药箱设计
- 苹果mac电脑的end 键和home键在哪
- 影评系统的机遇和挑战
- 八字易经算法之用JAVA实现硬币卜卦辅助工具
- excel熵值法计算权重_SPSS主成分分析 | 权重计算amp;极差法标准化超详细教程!(下)...
- python将不同类型文件分开
- 惠普软件技术总监赵大平:IT与业务的结合
- 将英文kali改成中文kali
- springboot集成mongoDB高级聚合查询,关联查询
- MSN协议分析以及Java实现MSN登陆