矩阵中寻找好子矩阵

题目描述

小 A 有一个 n 行 m 列的矩阵 A。

小 A 认为一个 2×2 的矩阵 D 是好的,当且仅当 D1,1​×D2,2​=D1,2​×D2,1​。其中 Di,j​ 表示矩阵 D 的第 i 行第 j 列的元素。

小 A 想知道 A 中有多少个好的子矩阵。

输入格式

第一行,两个正整数 n,m。

接下来 n 行,每行 m 个整数 Ai,1​,Ai,2​,...,Ai,m​。

输出格式

一行,一个整数,表示 A 中好的子矩阵的数量。

输入输出样例

输入 #1复制

复制代码
3 4
1 2 1 0
2 4 2 1
0 3 3 0

输出 #1复制

复制代码
2

说明/提示

样例解释

样例中好的子矩阵如下:

数据范围

对于所有测试点,保证 1≤n≤500,1≤m≤500,−100≤Ai,j​≤100

本题是一道比较基础的模拟题

按照提议模拟即可

重要代码

for(int i=0;i<n-1;i++)

{

for(int j=0;j<m-1;j++)

{

if(a[i][j]*a[i+1][j+1]==a[i+1][j]*a[i][j+1])

{

sum++;

}

}

}

总代码

#include <bits/stdc++.h>

using namespace std;

int n,a[501][501],m,sum;

int main()

{

cin>>n>>m;

for(int i=0;i<n;i++)

{

for(int j=0;j<m;j++)

{

cin>>a[i][j];

}

}

for(int i=0;i<n-1;i++)

{

for(int j=0;j<m-1;j++)

{

if(a[i][j]*a[i+1][j+1]==a[i+1][j]*a[i][j+1])

{

sum++;

}

}

}

cout<<sum;

return 0;

}

相关推荐
ChoSeitaku几秒前
线代强化NO3|线性方程组|特征值和特征向量|矩阵的相似性|实对称矩阵|二次型
线性代数·矩阵
7澄12 分钟前
深入解析 LeetCode 1572:矩阵对角线元素的和 —— 从问题本质到高效实现
java·算法·leetcode·矩阵·intellij-idea
ALex_zry4 分钟前
c20 字符串处理优化可选方案
算法
阳光明媚sunny6 分钟前
分糖果算法题
java·算法
卡提西亚9 分钟前
一本通网站1125题:矩阵乘法
c++·算法·矩阵·编程题·一本通
laocooon52385788641 分钟前
大数的阶乘 C语言
java·数据结构·算法
Boop_wu1 小时前
[Java EE] 多线程 -- 初阶(1)
java·jvm·算法
陌路201 小时前
Linux33 网络编程-多线程TCP并发
网络·算法
ChoSeitaku7 小时前
线代强化NO1|行列式及矩阵
线性代数·矩阵
星释9 小时前
Rust 练习册 :Pythagorean Triplet与数学算法
开发语言·算法·rust