首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
Luogu P1549 棋盘问题(2)
】的更多相关文章
luogu P1549 棋盘问题(2) 题解
luogu P1549 棋盘问题(2) 题解 题目描述 在\(N * N\)的棋盘上\((1≤N≤10)\),填入\(1,2,-,N^2\)共\(N^2\)个数,使得任意两个相邻的数之和为素数. 例如:当\(N=2\)时,有: 其相邻数的和为素数的有: \(1+2,1+4,4+3,2+3\) 当\(N=4\)时,一种可以填写的方案如下: 在这里我们约定:左上角的格子里必须填数字\(1\). 输入输出格式 输入格式: 一个数\(N\) 输出格式: 如有多种解,则输出第一行.第一列之和为最小的排列方…
Luogu P1549 棋盘问题(2)
题意 在N×N的棋盘上(1≤N≤10),填入1,2,-,N^2,共N^2个数,使得任意两个相邻的数之和为素数. 思路 先线性筛(非标准版),然后用a数组记录以i为下标的数是不是质数(就是标记数组),然后就可以搜了,加个vis数组记录此数有没有被搜过. 用f数组记录当前答案(因为第一个搜到的不一定是最优的),用sum记录第一行与第一列的和,如果大于MINN就退出. 然后你就会发现过不了. 接下来就是玄学剪枝了,加个TIM记录答案更新时间,如果长时间未更新就直接退出,然后之后不用输出,但如果可以搜出…
luogu 1169 棋盘制作(单调栈/悬线)
luogu 1169 棋盘制作(单调栈/悬线) 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳.而我们的主人公小Q,正是国际象棋的狂热爱好者.作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好朋友小W决定将棋盘扩大以适应他们的新规则.小Q找到了一张由N*M个正方形的格子组成的矩形纸片,每个格子被涂有黑白两种颜色之一.小Q想在这种纸中裁减一部分作为新棋盘,…
洛谷P1549 棋盘问题(2)
P1549 棋盘问题(2) 题目描述 在N*N的棋盘上(1≤N≤10),填入1,2,…,N*N共N*N个数,使得任意两个相邻的数之和为素数. 例如:当N=2时,有: 其相邻数的和为素数的有: 1+2,1+4,4+3,2+3 当N=4时,一种可以填写的方案如下: 在这里我们约定:左上角的格子里必须填数字1. 输入输出格式 输入格式: 一个数N 输出格式: 如有多种解,则输出第一行.第一列之和为最小的排列方案:若无解,则输出“NO”. 输入输出样例 输入样例#1: 1 输出样例#1: NO 输入样例…
洛谷——P1549 棋盘问题(2)
P1549 棋盘问题(2) 搜索||打表 #include<cstdio> #include<cstring> #include<iostream> #include<cstring> #include<cmath> #include<cstdlib> using namespace std; ][],an[][],hang,lie,ans[][]; ]; void print(){ ;i<=n;i++){ ;j<=n;j…
Luogu P1436 棋盘分割 暴力DP
我的天,,,,,n=8,k<=15,,,这怕不是暴力DP+高维数组.... 开一个五维数组f[k][i][j][p][q]表示从(i,j)到(p,q)中分成k个矩形最小的平方和. 然后初始化时用上二维前缀和 DP时有些像区间DP,枚举分割线,分成两部分,取min就好 #include<cstdio> #include<iostream> #include<cstring> #define R register int #define For(i,a,b) for(…
[POJ] 1191 [LUOGU] P1436 棋盘分割
那个均方差,可以通过展开.合并Σ,发现最终只有Xi^2会对答案造成影响,其他都是定值,所以求出最小的和的平方就行. 其实这才是这题最难的部分,以下都是码农部分. f[x1][y1][x2][y2][k] 从(x1,y1)到(x2,y2)这个矩形,割k次的最小平方和. 边界 k==1时,就是矩形本身面积的平方和. 其余情况,分两种,横着割和竖着割,一块继续割,另一块的面积平方加入答案. (强烈建议纸笔画图标出坐标,不用纠结下标+1/-1问题) 维数比较多,所以用了记忆化,好写一点. 洛谷AC代码…
杂项 List
题目 1. 栈 #A 表达式的转换 (Unaccepted) 2. STL 模板库 #B 双栈排序(Unaccepted) #C 垃圾陷阱(Accepted) #D 合并果子(Accepted) #E 统计数字(Unaccepted) #F 小木棍 [数据加强版](Unaccepted) 3. 树状数组 4. 归并排序 #H 逆序对(Unaccepted) 5. 最大子矩形 #A 最大正方形(Unaccepted) #B 奶牛浴场(Accepted) #…
[P1169] 棋盘制作 &悬线法学习笔记
学习笔记 悬线法 最大子矩阵问题: 在一个给定的矩形中有一些障碍点,找出内部不包含障碍点的,边与整个矩形平行或重合的最大子矩形. 极大子矩型:无法再向外拓展的有效子矩形 最大子矩型:最大的一个有效子矩形 特别的,在一个有障碍点的矩形中,最大子矩形一定是极大子矩形 悬线法 悬线:上端覆盖了一个障碍点或者到达整个矩形上边界的有效线段 每个悬线上的点的与底部的点一一对应,矩形中每一个点(矩形顶部点除外)都对应了一条悬线. 如果把一条悬线向左右两个方向尽可能的移动,那么就得到了一个矩形. 注意:悬线对应…
历年NOIP题
做了几天远古老题,发现不可做,于是咕掉..转而从2005开始.. 1997: P1549 棋盘问题(2):搜索,优化搜索顺序,对于第一行第一列先搜小的(但是其实这样是错的,仅仅能过原题) 加强版咕. 1998: P1011 车站:类似斐波那契,推式子即可. P1012 拼数:sort cmp:a+b>b+a P1013 进制位:观察性质发现,一定是n-1进制. 原因:若进制 <n-1 会出现重复字母,若进制 >n-1 则不会进位导致出现更大的数. 判断一个数字是什么: 其实就是这样 19…