矩阵相等判定
矩阵相等判定
http://www.nowcoder.com/questionTerminal/2f058b1e89ae43f7ab650c0fd0b71fa8
题目描述
KiKi得到了两个n行m列的矩阵,他想知道两个矩阵是否相等,请你回答他。(当两个矩阵对应数组元素都相等时两个矩阵相等)。
输入描述:
第一行包含两个整数n和m,表示两个矩阵包含n行m列,用空格分隔。
从2到n+1行,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第一个矩阵中的元素。
从n+2行到2n+1,每行输入m个整数(范围-231~231-1),用空格分隔,共输入n*m个数,表示第二个矩阵中的元素。(1<n,m<10)
输出描述:
一行,如果两个矩阵相等输出"Yes"并换行,否则输出"No"并换行。
解题思路
定义一个布尔值,用来判断是否相等
代码
#include <iostream> #include <string> using namespace std; int main() { int n,m, i, j; bool flag=true; cin>>n>>m; long a[12][12],b[12][12]; for(i = 0;i < n;i++) for(j = 0;j < m;j++) cin>>a[i][j];//输入矩阵的每个元素 for(int q = 0;q < n;q++) { for(int r = 0;r < m;r++) { cin>>b[q][r];//输入矩阵的每个元素 if(b[q][r]!=a[q][r])//如果不相等,那么flag=false flag=false; } } if(flag)//如果true则yes cout<<"Yes"<<endl; else//否则no cout<<"No"<<endl; return 0; }