状压DP【p1896】[SCOI2005]互不侵犯】的更多相关文章

Description 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上 左下右上右下八个方向上附近的各一个格子,共8个格子. Input 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) Output 方案数. Sample Input 3 2 Sample Output 16   简单的题目描述,往往蕴藏着巧妙的算法--X   这道题的数据范围十分清新,暗喻着这道题可以承受较高的复杂度. 由…
一.题目 Description 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上.下.左.右,以及左上.左下.右上.右下八个方向上附近的各一个格子,共8个格子. Input 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) Output 方案数 Sample Input 3 2 Sample Output 16 原题链接→_→bzoj1087: [SCOI2005]互不侵犯King 二.题目分析 其实我们可以…
洛谷 P1896 [SCOI2005]互不侵犯 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 注:数据有加强(2018/4/25) 输入输出格式 输入格式: 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) 输出格式: 所得的方案数 输入输出样例 输入样例:  3 2 输出样例:  16题解:听大佬们说是状压dp,但很巧的是!我不…
P1896 [SCOI2005]互不侵犯 状压DP入门题 状压DP一般需要与处理状态是否合法,节省时间 设定状态dp[i][j][k]表示第i行第j个状态选择国王数为k的方案数 $dp[i][j][num[j]+p]+=dp[i-1][k][p]$ 转移方程如上,表示第i行第j个状态国王数量为$num[j]+p$由上一行第k个状态的p个国王转移而来 状压DP的一般套路不就是将数的二进制表示成状态,如1010(10)10这个数就表示第一个位置放,第二个不放,以此类推 预处理:判断这一行的国王是否冲…
P1896 [SCOI2005]互不侵犯King 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 输入输出格式 输入格式: 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) 输出格式: 所得的方案数 输入输出样例 输入样例#1: 复制 3 2 输出样例#1: 复制 16 #include<iostream> #inclu…
洛谷P1896:https://www.luogu.org/problemnew/show/P1896 前言 这是一道状压DP的经典题 原来已经做过了 但是快要NOIP 复习一波 关于一些位运算的知识点参考: https://blog.csdn.net/fox64194167/article/details/20692645 思路 看数据识算法系列 我们用f[i][j][k]来表示第i行为状态j 并且前i行已经放了k个国王 对于状态我们可以先预处理出来 因为每个格子有放和不放两种选择 那么我们可…
正解:状压dp 解题报告: 看到是四川省选的时候我心里慌得一批TT然后看到难度之后放下心来觉得大概没有那么难 事实证明我还是too young too simple了QAQ难到爆炸TT我本来还想刚一道紫题搞完这个之后就佛了不做了TT 不扯淡了太太太浪费时间辣 好那直接港 首先我想到的就觉得大概是和那个奶牛玉米田的没有太大区别改一改就能ac! 然后我就先照着玉米田做完,发现过不了样例 于是改,改了半小时,好像差不多了,因为要存储放了几个国王巴拉巴拉的 还是没过样例,输出下过程,发现是上一种状态有很…
题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 输入输出格式 输入格式: 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) 输出格式: 所得的方案数 输入输出样例 输入样例#1: 3 2 输出样例#1: 16 题解:状态压缩dp,用一个整型的二进制表示来表示棋盘上一行的情况,放了棋子为1,没放为0:可以先预处理出所有可能的状态:用位…
题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 注:数据有加强(2018/4/25) 输入输出格式 输入格式: 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) 输出格式: 所得的方案数 输入输出样例 输入样例#1: 3 2 输出样例#1: 16 Solution: 本题状压dp水题. 预处理单行合法的状态和所放国王数,定义$f[i…
原题链接 [SCOI2005] 互不侵犯 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八个方向上附近的各一个格子,共8个格子. 注:数据有加强(2018/4/25) 输入格式 只有一行,包含两个数N,K ( 1 <=N <=9, 0 <= K <= N * N) 输出格式 所得的方案数 样例 #1 样例输入 #1 3 2 样例输出 #1 16 审题 由题目可得:棋盘上国王割据的过程是随着"阶段&q…