判断上三角矩阵

题目描述:https://www.nowcoder.com/practice/9a6786c28cdb45f9b991685f867b5d08?tpId=107&tags=&title=&diffculty=0&judgeStatus=0&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking
程序亮点:1.连续判断输入值2.利用break和continue快速判断,提高程序运行速度

#include <stdio.h>

int main(void)
{
    int i, j, n;
    int flag = 1;

    while (scanf("%d", &n) != EOF)
    {
        int a[n][n];
        for (i = 0; i < n; i++)
        {
            for (j = 0; j < n ; j++)
            {
                scanf("%d", &a[i][j]);
            }
        }
        for (i = 0; i < n; i++)
        {
            for (j = 0; j < n ; j++)
            {
                if (i <= j)
                {
                    break;
                }
                if (a[i][j] == 0)
                {
                    continue;
                }
                else
                {
                    flag = 0;
                    break;
                }
            }
            if (flag == 0)
            {
                break;
            }
        }
        printf("%s\n", flag == 1 ? "YES" : "NO");
    }

    return 0;
}

程序亮点:利用二级指针

#include <iostream>
using namespace std;

int main() {
    int n = 0;   
    int** list = NULL;

    cin >> n;

    list = new int*[n];

    for(int i = 0; i < n; i++)
        list[i] = new int[n];

    for(int i = 0; i < n; i++)
        for(int j = 0; j < n; j++)
            cin >> list[i][j];

    bool isTrue = false;

    for(int i = 0; i < n; i++)
        for(int j = 0; j < i; j++)
            if(list[i][j] == 0)
                isTrue = true;
            else
            {
                isTrue = false;
                break;
            }

    if(isTrue)
        cout << "YES";
    else
        cout << "NO";

    return 0;
}
全部评论

相关推荐

dongsheng66:如果想进大厂的话,在校经历没必要占这么大篇幅,可以把专业技能单独放一个专栏写,可以加个项目经历
点赞 评论 收藏
分享
一名愚蠢的人类:多少games小鬼留下了羡慕的泪水
投递荣耀等公司10个岗位
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务