【C语言蓝桥杯每日一题】——数字三角形
创始人
2025-05-29 01:31:45

【C语言蓝桥杯每日一题】—— 数字三角形😎

  • 前言🙌
    • 数字三角形🙌
  • 总结撒花💞

追梦之旅,你我同行

   
😎博客昵称:博客小梦
😊最喜欢的座右铭:全神贯注的上吧!!!
😊作者简介:一名热爱C/C++,算法等技术、喜爱运动、热爱K歌、敢于追梦的小博主!

😘博主小留言:哈喽!😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不多说,文章推上!欢迎大家在评论区唠嗑指正,觉得好的话别忘了一键三连哦!😘
在这里插入图片描述

前言🙌

    哈喽各位友友们😊,我今天又学到了很多有趣的知识现在迫不及待的想和大家分享一下!😘我仅已此文,和大家分享【C语言蓝桥杯每日一题】—— 数字三角形~ 都是精华内容,可不要错过哟!!!😍😍😍

数字三角形🙌

题目描述
上图给出了一个数字三角形。从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,你的任务就是找到最大的和。路径上的每一步只能从一个数走到下一层和它最近的左边的那个数或者右 边的那个数。此外,向左下走的次数与向右下走的次数相差不能超过 1。

在这里插入图片描述
在这里插入图片描述

解题思路分析: 😍

  • 首先认真读题,然后分析,找出规律
  • 因为一般线上平台是支持变长数组的,所以这里我创建了一个变长二维数组 arr(就是【】里面是变量,可以根据输入的n值变化而变化的数组。
  • 首先先利用两层循环进行三角形数值的存储
  • 在利用两层循环进行三角形的遍历,其实就是对二维数组的遍历。
  • 然后看图分析,我们可以发现到,从第二行开始,第一个的元素上面没有左上角的值,直接加上面的值就是最大值 。
  • 最后一个元素没有正上方的值,直接加左上值即可
  • 其余情况加其左上右上的最大值
  • 利用一个三目运算符,我们封装设计一个比较两个数最大值的函数。
  • 由于题目要求,向左下走的次数与向右下走的次数相差不能超过 1。即输出第n行最中间二个的最大值。那么就要就要判断三角形有多少行了。如果n为奇数,那么最中间那个就是答案。如果是偶数行,那么最中间的两个数的最大值就是所求的答案。
#include 
#include 
int Max(int x , int y)
{return x > y ? x : y;
}int main(int argc, char *argv[])
{int n = 0;scanf("%d",&n);int arr[n][n];int i = 0;int j = 0;for (i = 0; i < n; i++){for (j = 0; j <= i; j++){scanf("%d",&arr[i][j]);}}for (i = 0; i < n; i++){for (j = 0; j <= i; j++){if(i >=  1){if(j == 0)arr[i][j] += arr[i - 1][j];else if(i == j)arr[i][j] += arr[i - 1][j - 1];else{int max = Max(arr[i - 1][j - 1],arr[i - 1][j]);arr[i][j] += max;}}}}if( n % 2 == 1)printf("%d",arr[n - 1][(n - 1) / 2]);elseprintf("%d",Max(arr[n - 1][(n - 1) / 2],arr[n - 1][(n - 1) / 2 + 1]));return 0;
}

程序输出结果验证: 😊在这里插入图片描述

总结撒花💞

   本篇文章旨在分享【C语言蓝桥杯每日一题】—— 数字三角形。希望大家通过阅读此文有所收获!😘如果我写的有什么不好之处,请在文章下方给出你宝贵的意见😊。如果觉得我写的好的话请点个赞赞和关注哦~😘😘😘

相关内容

热门资讯

艺动FZ|福州排球小将省赛斩获... 福州新闻网5月8日讯(记者 陈君沂/文 主办方供图)近日,2026年福建省青少年三大球运动会暨排球冠...
陈文军红心闪耀“五老”关爱工作... 福州新闻网5月8日讯(记者 钱嘉宜/文 池远/摄)5月8日,陈文军红心闪耀“五老”关爱工作室揭牌。该...
中疾控:我国无感染病例报告 无... 2026年5月2日,世界卫生组织通报,一艘4月1日从阿根廷出发的极地探险邮轮上,暴发了汉坦病毒感染疫...
一线城市楼市延续“小阳春”行情 在刚刚过去的4月份,一线城市房地产市场延续了3月份以来的“小阳春”行情,二手房市场交易维持高活跃度,...
湖南浏阳烟花厂爆炸已致37人死... 原标题:浏阳华盛烟花厂爆炸事故现场搜救基本结束 5月4日16时43分许,浏阳市华盛烟花制造燃放有限...