题解 | #KiKi判断上三角矩阵#

KiKi判断上三角矩阵

https://www.nowcoder.com/practice/9a6786c28cdb45f9b991685f867b5d08

#include <stdio.h>

int main() {
    int a;
    int i,j;
    while (scanf("%d", &a) != EOF) { // 注意 while 处理多个 case
        // 64 位输出请用 printf("%lld") to 
       int arr[a][a];
        for(i = 0; i < a; i++)
       {
          for(j = 0; j < a;j++)
          {
            scanf("%d",&arr[i][j]);
          }
       }
       
       int count = 0;
       for(i = 0; i < a; i++)
       {
          for(j = 0; j < a;j++)
          {
            if(arr[i][j] == 0)
            {
                count++;
            }
          }
       }
       int c = 0;
       i = 1;
       while(i < a)
       {
        c = c + i;
        i ++;
       }
       
       if(count == c)
       {
        printf("YES\n");
       }
       else
       {
        printf("NO\n");
       }
    return 0;
    }
    
}

有一个简单的思路

就是数出0的个数,count++;

但是找出要找出a与0的个数之间的关系

仔细观察不难发现是等差数列求和

但是我研究出来一个更好用的公式

int c = 0;

i = 1;

while(i < a)

{

c = c + i;

i ++;

}

运用循环累计计算出c的值

即count的判断条件

全部评论

相关推荐

找个工作&nbsp;学历是要卡的&nbsp;要求是高的&nbsp;技能不足是真的&nbsp;实习经验是0的&nbsp;简历无处可写是事实的&nbsp;钱不好赚是真的&nbsp;想躺平又不敢躺&nbsp;也不甘心躺&nbsp;怕自己的灵感和才华被掩埋甚至从未被自己发现&nbsp;又质疑自己是否真正有才华
码农索隆:你现在啊,你心里都明白咋回事,但是你没办法改变现状,一想到未来,你又没有信心狠下心来在当下努力。 得走出这种状态,不能一直困在那里面,哪不行就去提升哪,你一动不动那指定改变不了未来,动起来,积少成多才能越来越好
点赞 评论 收藏
分享
06-11 13:34
门头沟学院 C++
offe从四面八方来:我真的没时间陪你闹了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务