Algorithm
本周的算法题为 1572. 矩阵对角线元素的和
给你一个正方形矩阵 mat
,请你返回矩阵对角线元素的和。
请你返回在矩阵主对角线上的元素和副对角线上且不在主对角线上元素的和。
输入:mat = [[1,2,3],
[4,5,6],
[7,8,9]]
输出:25
解释:对角线的和为:1 + 5 + 9 + 3 + 7 = 25
请注意,元素 mat[1][1] = 5 只会被计算一次。
实现代码如下:
var diagonalSum = function (mat) {
// 设置总和值
let sumValue = 0
for (let i = 0; i < mat.length; i++) {
// 遍历相加
sumValue = sumValue + mat[i][i] + mat[i][mat.length - 1 - i]
}
// 如果mat长度是奇数,会出现中心值相加两次的情况,所以这里要减去一次。
if (mat.length % 2 == 1) {
// 获取数组中间下标值,减去1除以2加上1就是中间值,但是因为下标是0开始的,所以减去1
let coreIndex = ((mat.length - 1) / 2) + 1 - 1
sumValue = sumValue - mat[coreIndex][coreIndex]
}
return sumValue
}
解题思路:
通过遍历二维数组,找到每个元素位置的规律即可,就是mat[i][i]
和mat[i][mat.length - 1 - i]
,然后处理二维数组长度是偶数和奇数的情况,奇数情况下,会出现多加一次中间值的情况,减去一次即可。
Review
Better weight-loss drugs predicted for 2024
最常见的新年决心之一就是减肥。由于最近批准的注射药物被证明在帮助人们减肥方面特别有效,减肥有望在2024年变得更容易实现。它们属于一类叫做GLP-1的药物。其中最著名的是Wegovy和Ozempic。据drugs.com网站报道,在对使用Wegovy药物的患者进行的广泛研究中,有83%的参与者减掉了5%或更多的体重。相比之下,只有31%的服用安慰剂的参与者能够实现相同的减重效果。梅奥诊所(Mayo Clinic)的一位心脏病专家表示,减肥药物“将继续存在”,而且“越来越多的此类药物将进入市场”。
行业专家强调了这些新疗法的重要性。著名杂志《科学》宣布,该系列减肥药将成为2023年医学界的“年度突破”。对于超重的人和那些发现锻炼困难的人来说,今年可能会更好。一种叫做Zepbound的新药物已经获得批准。在临床试验中,服用这种药物的人平均减轻了20%至25%的体重。肥胖专家朱莉安娜·西蒙内蒂医生说,这些新药“很神奇,因为它们解决了体重反弹的潜在生理原因”。她补充说:“过去十年我一直在这个领域工作,结果非常令人印象深刻。”
Tip
PATCH、PUT和POST方法的区别?
请求方法 | 作用 | 请求是否有主体 | 成功的响应是否有主体 | 安全 | 幂等 | 可缓存 | 允许在HTML表单中使用 |
---|---|---|---|---|---|---|---|
PATCH | 用于对资源进行部分修改。 | 是 | 可能有 | 否 | 是 | 否 | 不允许 |
PUT | 创建一个新的资源或用请求的有效载荷替换目标资源的表示。 | 是 | 可能有 | 否 | 是 | 否 | 不允许 |
POST | 发送数据给服务器。 | 是 | 是 | 否 | 否 | 仅在包含足够新的信息时 | 允许 |
幂等:任何数量的重复、相同的请求都会使资源处于相同的状态。
以上内容来源于www.mozilla.org。
Share
之前跟欧路词典反馈过,建议浏览器插件加上一个功能,查询单词时自动添加到生词本,后来支持了,用起来还是很不错的。提高英文水平,就不会每次在Review上花那么多时间了。