****灰常机智**** DP。说一说思路。 先考虑左上到右下的对角线:f[i][j]表示以(i,j)这一点作为右下角的合法正方形的最大长度。如果当前位置的数字为1,那么考虑转移: 如果a[i-1][j-1]是0,那么f[i][j]就是1; 如果a[i-1][j-1]是1,那么f[i][j]=min ...
分类:
其他好文 时间:
2017-10-03 16:56:15
阅读次数:
113
题目描述 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。 上面的布局可以用序列2 4 6 1 3 5来描述,第i个数字表示在第i行的相应位置有一个棋子,如下: 行号 1 2 3 4 5 6 列号 ...
分类:
其他好文 时间:
2017-10-01 20:34:54
阅读次数:
195
最长公共子串 问题描述:给定两个字符串,找到他们公共的子串,要求连续 b a b c 0 0 0 a 0 1 0 b 1 0 1 a 0 1 0 矩阵的斜对角线最长的那个就是最长公共子串。 不过在二维矩阵上找最长的由1组成的斜对角线也是件麻烦费时的事,下面改进:当要在矩阵是填1时让它等于其左上角元素 ...
分类:
其他好文 时间:
2017-10-01 19:58:32
阅读次数:
134
T1神奇的幻方 题目描述 幻方是一种很神奇的N*N矩阵:它由数字1,2,3,……,N*N构成,且每行、每列及两条对角线上的数字之和都相同。 当N为奇数时,我们可以通过以下方法构建一个幻方: 首先将1写在第一行的中间。 之后,按如下方式从小到大依次填写每个数K(K=2,3,…,N*N): 1.若(K? ...
分类:
其他好文 时间:
2017-09-24 19:19:35
阅读次数:
229
求一个n阶方阵对角线元素之和。 import java.util.*;public class djxh{public static void main(String args[]){System.out.println("请输入方阵阶数:");Scanner input=new Scanner(S ...
分类:
其他好文 时间:
2017-09-21 13:13:02
阅读次数:
135
tyvj1080 N皇后 描述 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行、每列只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子。 列号 1 2 3 4 5 6 1 | | O | | | | | 2 | | | | O | | | 3 | | | | ...
分类:
其他好文 时间:
2017-09-19 21:21:27
阅读次数:
218
这觉得就是一个考if语句的题目QAQ! #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #define MAXN using namespace std; int n; int main(){ sca ...
分类:
其他好文 时间:
2017-09-15 22:40:58
阅读次数:
285
对于第二个循环,倒序枚举就OK了。 #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #define MAXN using namespace std; int n; int main(){ scanf ...
分类:
其他好文 时间:
2017-09-15 22:40:16
阅读次数:
230
只要不斜着斜着看,横着看很美好的!亲爱的对角线也没有了QAQ #include<iostream> #include<cstring> #include<cstdio> #include<algorithm> #define MAXN using namespace std; int n; int ...
分类:
其他好文 时间:
2017-09-15 22:37:17
阅读次数:
230