欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1088 题意概括 扫雷.只有2行.第2行没有雷,第一行有雷.告诉你第二行显示的数组,问有几种摆放方式. 题解 动态规划. 用dp[i][0][0]表示当前位置为0,前一位置为0的方案总数, 用dp[i][0][1]表示当前位置为1,前一位置为0的方案总数, 用dp[i][1][0]表示当前位置为0,前一位置为1的方案总数, 用dp[i][1][1]表示当前位置为1,前一位置为1的方案总数, 然后分…
bzoj1088,懒得复制,戳我戳我 Solution: 其实这个有个结论,答案只会有\(0\),\(1\),\(2\)三种(我真的是个弱鸡,这个都想不到) 然后我们假设第一个就可以推出所有的状态(显然) 没了,and 我真的菜 Code: //It is coded by Ning_Mew on 5.6 #include<bits/stdc++.h> using namespace std; const int maxn=1e4+7; int n,a[maxn]; int ans=0; in…
这道题A的好莫名其妙啊2333 传送门 状压DP,枚举上一个雷的分布情况(1<<3)-1,然后和当前的分布相结合,推出下一状态. //BZOJ 1088 //by Cydiater //2016.8.26 #include <iostream> #include <cstring> #include <string> #include <algorithm> #include <cmath> #include <ctime>…
考虑右侧的一个格子是否放雷,只可能对其左侧的三个格子造成影响. 也就是说,若左侧一个格子旁的两个格子已经放了雷,对第三个格子也就唯一确定了. 因此只枚举前两个格子是否放雷,剩下的暴力判断是否合法即可. 但是再想想,左侧第一个格子只受右侧前两个格子的影响.所以只枚举右侧第一个格子是否放雷,剩下的判断是否合法即可. #include<cstdio> #include<cstring> using namespace std; ],t[],ans; ]; int main() { sca…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1088 记录下每一个格子对应左边格子放的雷的情况,然后dp转移就好了. #include<cstdio> #include<cstring> #include<algorithm> using namespace std; typedef long long ll; int inline readint(){ int Num;char ch; '; +ch-';…
Bzoj 1088: [SCOI2005]扫雷Mine 怒写一发,算不上DP的游戏题 知道了前\(i-1\)项,第\(i\)项会被第二列的第\(i-1\)得知 设\(f[i]\)为第一列的第\(i\)行位置是否有雷,有雷的话,\(f[i] = 1\),无雷\(f[i] = 0\) \(a[i]\)就是题目读入的东西. 那么转移方程就是\(f[i] = a[i - 1] - f[i - 1] - f[i - 2]\) 不满足限制的时候就是\(f[i] < 0\) 或者$ f[i] > 1$ 第一…
1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2275  Solved: 1328[Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×…
1088: [SCOI2005]扫雷Mine Description 相 信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏 规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有 雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二列的信息确定第一列雷有多少种摆放方案. Input 第…
题目链接 1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2525  Solved: 1495[Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在…
1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1635  Solved: 979[Submit][Status] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×2的,第一列里面某些…
1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 3791  Solved: 2234[Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它8连通的格子里面雷的数目.现在棋盘是…
1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2028  Solved: 1187[Submit][Status][Discuss] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×…
NC20241 [SCOI2005]扫雷MINE 题目 题目描述 相信大家都玩过扫雷的游戏.那是在一个 \(n \times m\) 的矩阵里面有一些雷,要你根据一些信息找出雷来. 万圣节到了 ,"余"人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它 \(8\)连通的格子里面雷的数目. 现在棋盘是 \(n \times 2\)的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的…
点此看题面 大致题意: 给你一个\(2*n\)的扫雷棋盘,现让你根据第二列的信息确定第一列有多少种摆法. 扫雷性质 听说这是一道动态规划+数学题. 其实,根据扫雷游戏的某个性质,只要确定了第一个格子是否有雷,就可以确定整列雷的分布情况! 因此,最多只可能有两种摆法. 这样一来,只要对第一个格子是否有雷分类讨论即可,遇到合法的情况就将\(ans\)加\(1\). 如何确定整列雷的分布情况 我们再来说一下应如何根据第一个格子是否有雷来确定整列雷的分布情况. 我们可以用\(a_i\)来存储第二列的信息…
调LCT奔溃,刷水调节一下. #include <iostream> #include <cstdio> #include <cstring> using namespace std; ],n,m,f[],ans; bool cal() { ;i<=n;i++) {f[i+]=a[i]-f[i]-f[i-];} ]) ; ; } int main() { scanf("%d",&n); ;i<=n;i++) scanf("…
Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二列的信息确定第一列雷有多少种摆放方案. Input 第一行为N,第二行有N个数,依次为第二列的格子中的数.…
Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了 ,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字 表示和它8连通的格子里面雷的数目.现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二列的信息确定第一列雷有多少种摆放 方案. Input 第一行为N,第二行有N个数,依次为第二列的格子中…
http://www.lydsy.com/JudgeOnline/problem.php?id=1088 脑残去想递推去了... 对于每一个第二列的格子,考虑多种情况,然后转移.....QAQ 空间可以降到O(1)...我就不优化了.. 至于题解说的枚举第一行...orz完全想不到. 做法就是:(好麻烦,不说了...就是对应三个格子的状态然后转移 #include <cstdio> #include <cstring> #include <cmath> #include…
题解: 首先枚举第一个有木有雷 然后第二个可以通过第一个推,第三个也是 以此类推 最后判断是否合法 代码: #include<bits/stdc++.h> using namespace std; ],b[],n; int pd(int x) { memset(b,,sizeof b); b[]=x; b[]=a[]-x; ;i<=n;i++)b[i]=a[i-]-b[i-]-b[i-]; ;i<=n;i++) ||b[i]<); ]==a[n]; } int main()…
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1088 简单的状压dp(话说本题的编号减1,即1087,也是一道状压dp),不解释. #include <cstdio> const int maxn = 10005; int n, b[maxn]; long long f[maxn][8]; int main(void) { scanf("%d", &n); for (int i = 1; i <= n…
1088: [SCOI2005]扫雷Mine Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一些信息找出雷来.万圣节到了,“余”人国流行起了一种简单的扫雷游戏,这个游戏规则和扫雷一样,如果某个格子没有雷,那么它里面的数字表示和它8连通的格子里面雷的数目.现在棋盘是n×2的,第一列里面某些格子是雷,而第二列没有雷,如下图: 由于第一列的雷可能有多种方案满足第二列的数的限制,你的任务即根据第二列的信息确定第一列雷有多少种摆放方案. Input 第一行为…
今天做了几道BZOJ的题,发现统观题目时还是很多很多都不会的,不过还是有几道时可以作的,以后要慢慢加强,争取多做题 BZOJ 1088 扫雷 其实本人平常不大玩扫雷的,就算玩也不是很好,不过看n*2的扫雷,也是微醺啊QAQ 1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec Memory Limit: 162 MB Submit: 2299 Solved: 1345 [Submit][Status][Discuss] Description 相信大家都玩过扫雷的游…
// 此博文为迁移而来,写于2015年2月6日,不代表本人现在的观点与看法.原始地址:http://blog.sina.com.cn/s/blog_6022c4720102vrft.html 1088: [SCOI2005]扫雷Mine Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1730  Solved: 1028[Submit][Status] Description 相信大家都玩过扫雷的游戏.那是在一个n*m的矩阵里面有一些雷,要你根据一…
P2327 [SCOI2005]扫雷 emmmmm.....这题真可以用状压写 因为每个数字只对3个格子有影响,相当于只有2^3=8种状态,所以可以用状压瞎搞 我们用8个数字代表二进制下的8种状态 0 000 ; 1 001 ; 2 010 ; 3 011 ; 4 100 ; 5 101 ; 6 110 ; 7 111 ; 0/1表示无/有雷 设 f[ i ][ j ]表示在第 i-2 ~ i 个格子的状态为 j 的方案数 状态转移时(设当前状态为 i)相当于 f[ i+1 ][ j ]=f[…
题目链接:传送门 题目: 题目描述 这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大.注意:选出的k个子矩阵不能相互重叠. 输入输出格式 输入格式: 第一行为n,m,k(≤n≤,≤m≤,≤k≤),接下来n行描述矩阵每行中的每个元素的分值(每个元素的分值的绝对值不超过32767). 输出格式: 只有一行为k个子矩阵分值之和最大为多少. 输入输出样例 输入样例#: 复制 - - 输出样例#: 复制 PS:好像有很多类似的题目,上次的那道中国象棋(放炮的)也是,都是分类讨…
P2327 [SCOI2005]扫雷 https://www.luogu.org/problem/show?pid=2327 题目描述 输入输出格式 输入格式: 第一行为N,第二行有N个数,依次为第二列的格子中的数.(1<= N <= 10000) 输出格式: 一个数,即第一列中雷的摆放方案数. 输入输出样例 输入样例#1: 2 1 1 输出样例#1: 2 算法1: 枚举左边每个位置是否有雷,复杂度O(2^n*n). 算法2: 我们发现,当前两个位置确定时,后面的位置也就可以推出来了. 于是我…
题意:从区间[L,R]中选取不多于k个数,使这些数异或和尽量小,输出最小异或和以及选取的那些数. 解法:分类讨论. 设选取k个数. 1. k=4的时候如果区间长度>=4且L是偶数,那么可以构造四个数(L,L+1,L+2,L+3),这样的话(L^(L+1)) ^ ((L+2)^(L+3)) = 0,最优 如果L不是偶数,那么看从L+1到R有没有四个数,如果有则取该四个数,否则最小异或和达不到0,也达不到1了,不再考虑k=4,k=3时还有可能等于0,所以转到k=3 2. k=3时,要使异或和为0,那…
这道B题,刚的不行,各种碎点及其容易忽略,受不鸟了直接 1067: [SCOI2007]降雨量 Time Limit: 1 Sec Memory Limit: 162 MB Submit: 2859 Solved: 735 [Submit][Status][Discuss] Description 我们常常会说这样的话:"X年是自Y年以来降雨量最多的".它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X年.例如2002,2003,2004和200…
题意:给定一个n和m,问你x^j + y^j = z^j 的数量有多少个,其中0 <= x <= y <= z <= m, j = 2, 3, 4, ... n. 析:是一个数学题加分类讨论.首先对 x进行分类讨论. 当 0 = x 时,只要 y = z,就行,那么就有(m+1) *  (n-1) 个,因为 y 可能从0取到m ,j 可以从2取到 n. 当 0 != x 时,那么只要一个勾股定理能构成,只要幂大于2,就一下没解,所以我们把第一种中拿出j = 2时,的特殊情况,特殊考…
1177: [Apio2009]Oil Time Limit: 15 Sec  Memory Limit: 162 MBSubmit: 1477  Solved: 589[Submit] Description 采 油区域 Siruseri政府决定将石油资源丰富的Navalur省的土地拍卖给私人承包商以建立油井.被拍卖的整块土地为一个矩形区域,被划分为M×N个小块. Siruseri地质调查局有关于Navalur土地石油储量的估测数据.这些数据表示为M×N个非负整数,即对每一小块土地石油储量的估…