加载中...

浙江理工大学入队200题——11F

问题 C: 零基础学C/C++118——弓型矩阵

题目描述

输入一个正整数n(1<= n <= 6)和n阶方阵a中的每一个元素,如果a是上三角矩阵,输出“YES",否则输出”NO"(上三角矩阵即主对角线以下的元素都为0的矩阵,主对角为从矩阵的左上角至右下角的连线)。

输入

多组测试数据,每组输入一个正整数n,和n行n列的整数,每一行回车结束

输出

如果a是上三角矩阵,输出“YES",否则输出”NO"

样例输入 Copy

3
1 2 3
0 4 5
0 0 6
4
1 2 3 4
5 6 7 8
9 0 11 12
13 0 0 16

样例输出 Copy

YES
NO

题解

只需要计算下方sum是不是0即可,如果你会判断对角线的坐标,那么坐标-1就ok。

代码(AC)

点击查看代码
#include <stdio.h>
int main ()
{
	int n;
	while(scanf("%d",&n)!=EOF)
	{   int sum=0;
	int a[n][n];
	int i,j;
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			scanf("%d",&a[i][j]);
		}
	}
	  for(i=1;i<n;i++)
	  {
	  	for(j=0;j<i;j++)
	  	{
	  		sum=sum+a[i][j];
		  }
	  }
	  if(sum==0)
	  {
	  	printf("YES\n");
	  }
	  else
	  {
	  	printf("NO\n");
	  }
	}
	return 0;
}
posted @ 2022-10-29 10:26  shany212  阅读(26)  评论(0编辑  收藏  举报