【题解】NOIP2018 填数游戏】的更多相关文章

题目戳我 \(\text{Solution:}\) 题目标签是\(dp,\)但是纯暴力打表找规律可以有\(65\)分. 首先是对于\(O(2^{nm}*nm)\)的暴力搜索,显然都会. 考虑几条性质: 每一条由左下到右上的对角线需要非严格单调递减. 若\(a[i][j-1]=a[i-1][j]\)则以\(a[i][j]\)为左上角的矩阵填的数必须相等. 证明: 对于第一条,若不满足这条性质,则必然存在一个路径,\(R\to 1,D\to 0\)使得其不满足题意. 对于第二条,首先满足\(R\to…
传送门 Description 耳熟能详,就不多说了 Solution 对于一个不会推式子的蒟蒻,如何在考场优雅地通过此题 手玩样例,发现对于 \(n=1\) , \(ans=2^m\) .对于 \(n=2\) , \(ans=4\times 3^{m-1}\) .或者干脆打出 \(n,m\le 3\) 的表 肉眼观察法,发现似乎有 \(f(n,m+1)=3f(n,m)\),但这并不是正确的,但如果你仅仅是这么认为了,你仍然能够获得很多分数 想结论,都是特别特别显然的那种: \(f(n,m)=f…
LOJ 感觉这个题十分好玩于是诈尸更博.一年之前的做题心得只有这道题还记得清楚-- 设输入为\(n,m\)时的答案为\(f(n,m)\),首先\(f(n,m)=f(m,n)\)所以接下来默认\(n \leq m\).一件重要的事情是打表得到当\(m>n+1\)时\(f(n,m) = f(n,m-1)*3\),证明不会. 所以最后的问题是快速得到\(f(8,9)\).\(n,m\)不大考虑搜索. 首先考虑一些没用的剪枝: 1.同一条对角线上填入的数字自底向上不增.这个不难反证得到. 2.如果存在\…
打表找规律.... #include<bits/stdc++.h> #define ui unsigned int #define ll long long #define db double #define ld long double #define ull unsigned long long #define ft first #define sd second #define pb(a) push_back(a) #define mp(a,b) std::make_pair(a,b)…
目录 @题目描述@ @题解@ @代码@ @题目描述@ 小 D 特别喜欢玩游戏.这一天,他在玩一款填数游戏. 这个填数游戏的棋盘是一个 n×m 的矩形表格.玩家需要在表格的每个格子中填入一个数字(数字 0 或者数字 1 ),填数时需要满足一些限制. 下面我们来具体描述这些限制. 为了方便描述,我们先给出一些定义: 我们用每个格子的行列坐标来表示一个格子,即(行坐标,列坐标).(注意: 行列坐标均从 0 开始编号) 一条路径是合法的当且仅当: (1)这条路径从矩形表格的左上角的格子(0,0)出发,到…
2017年全国大学生信息安全竞赛 Reverse 填数游戏 起因是吾爱破解大手发的解题思路,觉得题挺有意思的,就找来学习学习 这是i春秋的下载链接 http://static2.ichunqiu.com/icq/resources/fileupload/CTF/echunqiu/qgdxs/numgame_8808BCE6D17A3EF92461A50079264767.zip 以防万一呢,我在网盘也放了一份名字叫numgame_8808BCE6D17A3EF92461A50079264767.…
luogu loj 被这道题送退役了 题是挺有趣的,然而可能讨论比较麻烦,肝了2h 又自闭了,鉴于CSP在即,就只能先写个打表题解了 下面令\(n<m\),首先\(n=1\)时答案为\(2^m\),然后打表可以发现,\(\forall i>n+1\ ans_{n,i}=3^{m-(n+1)}ans_{n,n+1}\),现在考虑怎么快速打表 下面记从上往下行编号从\(1\)到\(n\),从左往右列编号从\(1\)到\(m\).要发掘两个性质,第一个是对于一条左下到右上的对角线,填的数一定是先一段…
原文链接www.cnblogs.com/zhouzhendong/p/UOJ440.html 前言 菜鸡选手到省选了才做联赛题. 题解 首先我们分析一下性质: 1. 假如一个格子是 0,那么它的右上角一定是 0 . 2. 假如一个格子的左边和上面两个格子一样,那么从这个格子到终点的任何两条路径相同. 不难发现,对于第 3 个斜列,我们发现这个斜列至少有一对相邻的相同格子. 也就是说,从第 3 行第 3 列这个格子到达终点的所有路径都相同. 设 $dp[c][i][j][k]$ 表示前 $c$ 列…
题目大意:$NOIP2018\;TG\;D2T2$ 题解:在skip2004的博客基础上修改的,也是暴搜. 说明一下把vector改成数组并不可以通过此题,记录. 结论:在$m>n+1$时答案为$3(n,m)$($(n,m)$表示长$m$高$n$的矩形的答案) 发现其中判断右下角矩阵斜线全相等的部分可以优化,因为对于一条斜线,每次都搜右下角的矩阵,有很多部分都是重复搜的,完全可以每次搜只与它下面的一层比较,发现一条斜线中最多只有一个$01$交界处,于是对于这一行进行特判,少搜一个,但是注意最下面…
题目 作为NOIP2018的题目,我觉得不需要把题目贴出来了. 大意就是,在一个n∗mn*mn∗m的010101矩阵中,从左上角到右下角的路径中,对于任意的两条,上面的那条小于下面的那条.问满足这样的矩阵的个数. 好吧,有点简陋-- 比赛思路 一眼看下去,诶,nnn这么小,一下子就想到了状压DP. 然后有一点很显然:(i,j)≤(i+1,j−1)(i,j)\leq (i+1,j-1)(i,j)≤(i+1,j−1). 依照这个性质,我打出了一个状压DP. 然后发现,第二个样例崩了. 然后手算了半天…