每日leetcode

1572. 矩陣對角線元素的和 - 力扣(LeetCode)

題目

給你一個正方形矩陣?mat,請你返回矩陣對角線元素的和。

請你返回在矩陣主對角線上的元素和副對角線上且不在主對角線上元素的和。

示例? 1:

輸入:mat = [[1,2,3],
??????????? [4,5,6],
??????????? [7,8,9]]
輸出:25
解釋:對角線的和為:1 + 5 + 9 + 3 + 7 = 25
請注意,元素 mat[1][1] = 5 只會被計算一次。

示例? 2:

輸入:mat = [[1,1,1,1],
??????????? [1,1,1,1],
??????????? [1,1,1,1],
??????????? [1,1,1,1]]
輸出:8

示例 3:

輸入:mat = [[5]]
輸出:5

提示:

  • n == mat.length == mat[i].length
  • 1 <= n <= 100
  • 1 <= mat[i][j] <= 100

思路

  1. 在循環每一行的過程中加上主對角線和副對角線的元素,如果副對角線在對應行上的元素是主對角線的元素,則不加。

代碼實現

class Solution {
public:int diagonalSum(vector<vector<int>>& mat) {int ans = 0, n = mat.size()-1;for(int i = 0; i <= n; ++i) {// 主對角線ans += mat[i][i];// 副對角線if(i != n-i) ans += mat[i][n-i];}return ans;}
};

復雜度分析

  • 時間復雜度:O(n)。
  • 空間復雜度:O(1)。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/84823.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/84823.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/84823.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Server 9 ,在 VMware 虛擬機上安裝 Windows 系統完整指南

目錄 前言 一、準備工作 1.1 準備安裝文件 1.2 安裝VMware軟件 1.3 創建新的虛擬機 1.4 開啟虛擬機 二、注意事項 2.1 調整硬件設置 2.2 啟動順序配置 2.3 固件類型選擇 2.4 安全啟動配置 三、安裝優化 3.1 安裝VMware Tools 3.2 系統更新與激活 四、更多操作 ?…

最終章:終焉之塔 · 前端之道

第一章&#xff1a;HTML基石現實的骨架 第二章&#xff1a;CSS秘典 色彩與布局的力量 第三章&#xff1a;JavaScript引擎 行為之火 第四章&#xff1a;DOM迷宮 掌控頁面之心 第五章&#xff1a;異步幻境 時間與數據的秘密 第六章&#xff1a;事件風暴 用戶的意志 第七章&a…

詳解 .net9 內置 Lock 對象,更加現代化和靈活可控的鎖對象

.NET 9 引入了全新的 System.Threading.Lock 類型&#xff0c;作為更現代、類型安全且具備遞歸支持的同步原語。與傳統的基于 Monitor.Enter/lock(obj) 的方式不同&#xff0c;Lock 是一個具體的類&#xff0c;提供了更靈活的 API 和結構化編程模型。 Lock 類 Lock 是一個具體…

python幾行命令實現快速打包apk

1. ??環境準備? sudo apt update sudo apt install -y python3-pip git zip unzip openjdk-17-jdk sudo apt-get install -y autoconf automake libtool pip install kivy buildozer cython2. ??項目配置? 在項目目錄中初始化Buildozer&#xff1a; buildozer init這會…

實時數倉和離線數倉的區別是什么?企業如何選擇合適的數倉架構?

實時數倉和離線數倉的區別是什么&#xff1f;企業如何選擇合適的數倉架構&#xff1f; 時數倉和離線數倉都是數據倉庫的不同類型&#xff0c;用于存儲和管理企業的數據&#xff0c;但它們在數據處理和使用的時間、速度以及用途方面有明顯的區別。 在介紹實時數倉之前&#xf…

Docker Desktop for Windows 系統設置說明文檔

1. 文檔概述 本文檔旨在詳細說明 Docker Desktop for Windows 應用程序中“設置 (Settings)”界面下的所有可配置選項及其子選項。對于每個配置項&#xff0c;我們將提供其功能描述、推薦配置&#xff08;如適用&#xff09;以及相關注意事項&#xff0c;幫助用戶更好地理解和…

精準監測,健康無憂--XC3576H工控主板賦能亞健康檢測儀

在快節奏的現代生活中&#xff0c;亞健康問題逐漸成為困擾人們健康的隱形殺手。疲勞、失眠、免疫力下降等問題頻發&#xff0c;卻往往因難以察覺而延誤調理。智能亞健康檢測儀通過高科技手段&#xff0c;幫助用戶實時了解身體狀況&#xff0c;提前預警潛在健康風險。 其核心功能…

SBT開源構建工具

SBT 的多元定義與核心解釋 SBT&#xff08;Simple Build Tool&#xff09;是專為 Scala 和 Java 項目設計的開源構建工具&#xff0c;基于 Scala 語言開發&#xff0c;提供依賴管理、編譯、測試、打包等全流程支持。其核心特點包括&#xff1a; 核心功能與特性&#xff1a; …

npm run build后將打包文件夾生成zip壓縮包

安裝依賴 npm install archiver --save-dev準備compress.js文件 const fs require(fs); const archiver require(archiver);const sourceDir ./dist; //替換為你的文件夾路徑 const outputZip ./dist.zip;console.log(開始壓縮); const output fs.createWriteStream(ou…

力扣 215 .數組中的第K個最大元素

文章目錄 題目介紹題解 題目介紹 題解 法一&#xff1a;基于快速排序的選擇方法 以中間元素pivot為基準進行排序后&#xff0c;右指針 r 的位置就是最終全部排序好后pivot的位置&#xff0c;然后去左邊或右邊遞歸尋找第k個位置&#xff08;答案&#xff09;的元素。 代碼如下…

CentOS 7.0重置root密碼

文章目錄 版本&#xff1a;CentOS 7.0內核版本&#xff1a;CentOS Linux, with Linux 3.10.0-123.el7.x86_64 服務器重啟后&#xff0c;等待進入上述頁面&#xff0c;按??鍵&#xff0c;中斷正常啟動。在此頁面按E&#xff0c;進入編輯模式 繼續按?&#xff0c;找到linux16…

Linux之高效文本編輯利器 —— vim

目錄 一、vim的基本概念 二、Vim 的三種基本模式 1. 命令模式&#xff08;Command Mode&#xff09; 2. 插入模式&#xff08;Insert Mode&#xff09; 3. 底行模式&#xff08;Last Line Mode&#xff09; 模式切換方法 IDE例子&#xff1a; 三、vim的基本操作 進入vim…

【STM32】HAL庫 之 CAN 開發指南

基于stm32 f407vet6芯片 使用hal庫開發 can 簡單講解一下can的基礎使用 CubeMX配置 這里打開CAN1 并且設置好波特率和NVIC相關的配置 波特率使用波特率計算器軟件 使用采樣率最高的這段 填入 得到波特率1M bit/s 然后編寫代碼 環形緩沖區 #include "driver_buffer.h&qu…

《Scientific Reports撤稿門技術節分析》——從圖像篡改檢測到學術倫理重建的技術透視

2023年以來&#xff0c;《Scientific Reports》等開放獲取期刊頻繁曝出大規模撤稿事件&#xff0c;涉及數據造假、圖像重復、AI生成內容篡改等技術性學術不端行為。本文以技術視角切入&#xff0c;系統分析撤稿事件背后的技術動因、檢測手段漏洞、學術出版體系的技術短板及應對…

Client請求Grpc服務報錯

現象&#xff1a;err: rpc error: code Unimplemented desc 背景&#xff1a;調用鏈路A->B->C&#xff0c;A是一個Http協議的接口&#xff0c;B也是一個Http協議的接口&#xff0c; 但C是一個Grpc協議的接口。 解決思路&#xff1a;查看C服務對應的proto&#xff0c;比…

機器學習課程設計報告 —— 基于口紅數據集的情感分析

目錄 一、課程設計目的 二、數據預處理及分析 2.1 數據預處理 2.2 數據分析 三、特征選擇 3.1 特征選擇的重要性 3.2 如何進行特征選擇 3.3 特征選擇的依據 3.4 數據集的劃分 四、模型訓練與模型評估 4.1 所有算法模型不調參 4.2 K-近鄰分類模型 4.3 GaussianNB模…

Flutter 實現6個驗收碼輸入框

開箱即用&#xff0c;初始化時就喚起鍵盤&#xff0c;并選中第一個 import package:flutter/material.dart;import dart:async; // 引入 Timer 類class VerificationCode extends StatefulWidget {final String phoneNumber;const VerificationCode({super.key, required this.…

如何查看服務器有幾張GPU

要查看服務器上有多少張 GPU&#xff0c;你可以使用以下幾種方法&#xff1a; 1.1 使用 nvidia-smi工具&#xff08;針對 NVIDIA GPU&#xff09;&#xff1a; 如果你的服務器上安裝了 NVIDIA GPU 驅動程序&#xff0c;那么可以使用 nvidia-smi 命令查看詳細的 GPU 信息。 n…

3099. 哈沙德數

?題目來源&#xff1a; LeetCode題目&#xff1a;3099. 哈沙德數 - 力扣&#xff08;LeetCode&#xff09; 解題思路&#xff1a; 按要求求和判斷即可。 解題代碼&#xff1a; #python3 class Solution:def sumOfTheDigitsOfHarshadNumber(self, x: int) -> int:sumDigi…

數字化回歸本質:第一性原理驅動的制造業轉型與AI+云PLM系統實踐

2014年&#xff0c;埃隆馬斯克在南加州大學商學院的畢業演講上&#xff0c;留下了一場5分鐘的精彩分享&#xff0c;他將自己對工作和人生的思考總結為五個要點&#xff0c;其中一點說到了他的決策方式&#xff1a; “也許你聽我說過&#xff0c;要從物理學的角度思考問題&…