《B4264 [GESP202503 四级] 二阶矩阵》

题目背景

对应的选择、判断题:试题 - GESP 202503 C++ 四级 - 洛谷有题

题目描述

小 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

代码实现:

cpp 复制代码
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n,m;
    cin>>n>>m;
    vector<vector<int> > a(n,vector<int>(m));
    for(int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)
        {
            cin>>a[i][j];
        }
    }
    long long ans=0;
    for(int i=0;i<=n-2;i++)
    {
        for(int j=0;j<=m-2;j++)
        {
            long long d11 = a[i][j];
            long long d12 = a[i][j+1];
            long long d21 = a[i+1][j];
            long long d22 = a[i+1][j+1];
            if(d11 * d22 == d12 * d21)
                ans++;
        }
    }
    cout<<ans<<endl;
    return 0;
}
相关推荐
不知名的老吴1 小时前
面经经验分享|算法和数据结构考察
数据结构·经验分享·算法
叫我:松哥2 小时前
基于Python flask的中学可控智能命题系统设计与实现,整合遗传算法、DeepSeek 大模型及数据库技术构建一体化应用
数据库·人工智能·python·算法·机器学习·flask·遗传算法
黎阳之光2 小时前
黎阳之光透明大楼:实景孪生重构智慧建筑全新范式
人工智能·物联网·算法·安全·数字孪生
旖-旎3 小时前
《LeetCode 130 被围绕的区域 FloodFill DFS 解法》
c++·算法·深度优先·力扣·floodfill
林森lsjs3 小时前
斐波那契数列的 N 种解法:从递归到动态规划的优化之路【算法思考】
算法·动态规划
apcipot_rain4 小时前
计科八股20260616(1)——堆存中位数、链表判环、黑白测试、敏捷开发与瀑布模型、配置管理、持续集成、池化
数据结构·算法·软件工程
JAVA面经实录91710 小时前
Java 数据结构与算法 (终极完整学习文档)
java·数据结构·算法
开源Z12 小时前
LeetCode 42 · 接雨水:从暴力到双指针的三步优化
算法·leetcode
旖-旎12 小时前
《LeetCode 695 岛屿的最大面积 FloodFill DFS 解法》
c++·算法·力扣·深度优先遍历·floodfill