当前位置: 首页 > news >正文

leetcode2221. 数组的三角和-medium

1 题目:数组的三角和

官方标定难度:中

给你一个下标从 0 开始的整数数组 nums ,其中 nums[i] 是 0 到 9 之间(两者都包含)的一个数字。

nums 的 三角和 是执行以下操作以后最后剩下元素的值:

nums 初始包含 n 个元素。如果 n == 1 ,终止 操作。否则,创建 一个新的下标从 0 开始的长度为 n - 1 的整数数组 newNums 。
对于满足 0 <= i < n - 1 的下标 i ,newNums[i] 赋值 为 (nums[i] + nums[i+1]) % 10 ,% 表示取余运算。
将 newNums 替换 数组 nums 。
从步骤 1 开始 重复 整个过程。
请你返回 nums 的三角和。

示例 1:

在这里插入图片描述

输入:nums = [1,2,3,4,5]
输出:8
解释:
上图展示了得到数组三角和的过程。

示例 2:

输入:nums = [5]
输出:5
解释:
由于 nums 中只有一个元素,数组的三角和为这个元素自己。

提示:

1 <= nums.length <= 1000
0 <= nums[i] <= 9

2 solution

直接暴力计算

代码

class Solution {/** 每个数最终被加了 C(n, i) 次* C(n, m) = n!/ (n-m)! m!* C(n, m) / C(n, m-1) = (n-m+1)! (m-1)! / (n-m)! m!*                     = (n-m+1) / m*/
public:int triangularSum(vector<int> &nums) {int n = nums.size();for (int i = 1; i < n; i++) {for (int j = 0; j < n - i; j++) {int x = nums[j + 1];nums[j] = (nums[j] + x) % 10;}}return nums[0];}
};

结果

在这里插入图片描述

相关文章:

  • 榕壹云医疗服务系统:基于ThinkPHP+MySQL+UniApp的多门店医疗预约小程序解决方案
  • 【git stash切换】
  • MySQL事务及其原理
  • Bonjour
  • 7.3 Organizing data into training batches
  • 20250530-C#知识:String与StringBuilder
  • 算力租赁革命:弹性模式如何重构数字时代的创新门槛​
  • shadcn/ui
  • Python+requests+pytest接口自动化测试框架的搭建(全)
  • C# MySQL 实现多层级联数据迁移
  • 数据结构:导论
  • RK3399 Android7.1增加应用安装白名单机制
  • python进程hung住如何找到问题所在
  • 内存池学习(一)
  • 腾讯云开发者社区文章内容提取免费API接口教程
  • Hive的存储格式如何优化?
  • 计算机视觉入门:OpenCV与YOLO目标检测
  • CSS3前端入门(第三天)2D转换 transform
  • CAD多边形密堆积2D插件
  • 强化学习笔记总结(结合论文)
  • 如何创建个人的网站/东莞网站营销
  • 商城网站的开发怎么做的/济南网络优化哪家专业
  • 浙江鼎兴建设有限公司网站/完整的品牌推广方案
  • 涟水做网站/磁力兔子搜索引擎
  • 网络营销零基础培训/网站关键词优化排名技巧
  • 政府网站开发的目的/2023年时政热点事件