目录:
题目:
题目描述
要表演节目了,老师把同学们排成 nn 排,每排 mm 个人,每个人都有一个身高。
现在给出排好的队形,老师想知道,是否所有同学都能被看到。
一个同学能被看到,当且仅当满足下列条件之一:
-
这个同学站在最外侧(第一排、最后一排、最左侧一列、最右侧一列)。
-
站在这个同学正前方、正后方、正左侧、正右侧,且离他最近的四个同学,至少有一个不比他高。
输入格式
第一行,两个整数 nn 和 mm 。
接下来 nn 行,每行 mm 个整数,代表这一排同学的身高。
输出格式
如果所有同学都能被看到,输出 Yes
,否则输出 No
。
样例输入1
3 4
1 2 3 6
4 2 4 6
5 6 3 6
样例输出1
Yes
样例输入2
3 3
1 2 1
2 1 2
1 2 1
样例输出2
No
数据限制
对于 100%100% 的数据,1≤n,m≤1000,1≤1≤n,m≤1000,1≤ 同学们的身高 ≤109≤109 。
代码:
#include<bits/stdc++.h>
using namespace std;
int a[1001][1001];
int n,m;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
}
}
for(int i=2;i<=m;i++){
for(int j=1;j<=n-1;j++){
if(a[i-1][j]>a[i][j] &&a[i+1][j]>a[i][j] &&a[i][j-1]>a[i][j]&&a[i][j+1]>a[i][j]){
cout<<"No";
return 0;
}
}
}
cout<<"Yes";
return 0;
}
思路:
就找错误的,找到就return 0;