和上一道题差不多,要注意一些细节

#include<iostream>
#include<utility>
using namespace std;
typedef long long ll;
#define fi(i,a,b) for(int i = a; i <= b; ++i)
#define fr(i,a,b) for(int i = a; i >= b; --i)
#define x first
#define y second
#define sz(x) ((int)(x).size())
#define pb push_back
using pii = pair<int,int>;
//#define DEBUG
int matrix[1505][1505];
int dp[1505][1505];
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
#ifdef DEBUG
//freopen(D:\in.txt,r,stdin);
#endif
int n,m;
cin >> n >> m;
fi(i,1,n) fi(j,1,m) cin >> matrix[i][j];
fi(i,1,n) fi(j,1,m){
if(i == 1 || j == 1) {
dp[i][j] = 1;
}
else{
int s = min(dp[i-1][j],min(dp[i][j-1],dp[i-1][j-1]));
if(matrix[i][j] != matrix[i-1][j] && matrix[i][j] != matrix[i][j-1] && matrix[i][j] == matrix[i-1][j-1])
dp[i][j] = s + 1;
else dp[i][j] = 1;
}
// cout << dp[i][j] << endl;
}
int maxx = 0;
fi(i,1,n) fi(j,1,m) {
maxx = max(dp[i][j],maxx);
}
if(maxx == 1) maxx = 0;
cout << maxx << endl;
return 0;
}

P1681的更多相关文章

  1. 洛谷P1681 最大正方形II

    P1681 最大正方形II 题目背景 忙完了学校的事,v神终于可以做他的“正事”:陪女朋友散步.一天,他和女朋友走着走着,不知不觉就来到 了一个千里无烟的地方.v神正要往回走,如发现了一块牌子,牌子上 ...

  2. P1681 最大正方形 Iand II

    题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入输出格式 输入格式: 输入文件第一行为两个整数n,m(1<=n,m<=100),接下来n行,每行m ...

  3. 【Luogu】P1681最大正方形2(异或运算,DP)

    题目链接 不得不说attack是个天才.读入使用异或运算,令que[i][j]^=(i^j)&1,于是原题目变成了求que数组的最大相同值. 然而我还是不理解为啥,而且就算简化成这样我也不会做 ...

  4. P1681 最大正方形II (动态规划)

    题目背景 忙完了学校的事,v神终于可以做他的"正事":陪女朋友散步.一天,他和女朋友走着走着,不知不觉就来到了一个千里无烟的地方.v神正要往回走,如发现了一块牌子,牌子上有有一行小 ...

  5. entity framework core 支持批量插入,值得期待

    entity framework6.x之前搞了这么多版本,构架这么牛B,居然没有批量插入更新的功能,但有很多替换的解决方案,例如Entity Framework Extended Library(ht ...

  6. GO语言的进阶之路-协程和Channel

    GO语言的进阶之路-协程和Channel 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 看过我之前几篇博客小伙伴可能对Golang语言的语法上了解的差不多了,但是,如果想要你的代码 ...

  7. 动态规划dp专题练习

    貌似开坑还挺好玩的...开一个来玩玩=v=... 正好自己dp不是很熟悉,就开个坑来练练吧...先练个50题?小目标... 好像有点多啊QAQ 既然是开坑,之前写的都不要了! 50/50 1.洛谷P3 ...

随机推荐

  1. css样式相关的惊艳的属性

    CSS gap 简写属性用于设置行与列之间的间隙(网格间距). 规范的早期版本将该属性命名为 grid-gap,且为了保持与旧网站的兼容性,浏览器仍然会接受 grid-gap 作为 gap 的别名. ...

  2. MATLAB txt文件抽稀并分为多个txt文件

    chouxi.m a = load("file.txt"); % len = length(a); interval = 9;%间隔+1 b = a(1:interval:end, ...

  3. java基础 韩顺平老师的 异常 自己记的部分笔记

    443,异常处理入门 package com.hspedu.exception_; public class Exception { public static void main(String[] ...

  4. go 使用 consul api filter 过滤注意点

    当你的value里面有-特殊符号的时候你应该像这样使用Service == "foo-bar"

  5. Android 12(S) MultiMedia(十二)MediaCodecList & IOmxStore

    这节来了解下MediaCodecList相关代码路径: frameworks/av/media/libstagefright/MediaCodecList.cpp frameworks/av/medi ...

  6. mysql存储地理信息的方法

    MySQL 存储地理信息通常使用 GEOMETRY 数据类型或其子类型(如 POINT, LINESTRING, POLYGON 等).为了支持这些数据类型,MySQL 提供了 SPATIAL 索引, ...

  7. vue局部注册

    只能在当前注册它的vue实例中使用,通过某个 Vue 实例/组件的实例选项 components 注册仅在其作用域中可用的组件 var Child = { template: '<div> ...

  8. 一款.NET开源、免费、实用的多功能原神工具箱(改善桌面端玩家的游戏体验)

    前言 今天大姚给大家分享一款.NET开源(MIT License).免费.实用的多功能原神工具箱,旨在改善桌面端玩家的游戏体验:胡桃工具箱. 工具箱介绍 胡桃工具箱是一款.NET开源(MIT Lice ...

  9. JAVA IDEA Maven 加速镜像 阿里云

    JAVA IDEA Maven 加速镜像 阿里云 如果是IDEA自带的则在: C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 20 ...

  10. session 和 cookie 有什么区别?

    a.存储位置不同:session 存储在服务器端:cookie 存储在浏览器端. b.安全性不同:cookie 安全性一般,在浏览器存储,可以被伪造和修改. c.容量和个数限制:cookie 有容量限 ...