原创 336. 迴文對

給定一組唯一的單詞, 找出所有不同 的索引對(i, j),使得列表中的兩個單詞, words[i] + words[j] ,可拼接成迴文串。 示例 1: 輸入: ["abcd","dcba","lls","s","sssll"] 輸出:

原创 Codeforces Round #601 (Div. 2)

A. Changing Volume 這道題都轉化爲從小到大求解。優先按大的按鈕就可以。 #include<bits/stdc++.h> using namespace std; typedef long long LL; void

原创 leetcode5143. 解壓縮編碼列表

給你一個以行程長度編碼壓縮的整數列表 nums 。 考慮每相鄰兩個元素 [a, b] = [nums[2*i], nums[2*i+1]] (其中 i >= 0 ),每一對都表示解壓後有 a 個值爲 b 的元素。 請你返回解壓後的列表。

原创 348. 判定井字棋勝負

請在 n × n 的棋盤上,實現一個判定井字棋(Tic-Tac-Toe)勝負的神器,判斷每一次玩家落子後,是否有勝出的玩家。 在這個井字棋遊戲中,會有 2 名玩家,他們將輪流在棋盤上放置自己的棋子。 在實現這個判定器的過程中,你可以假設以

原创 leetcode5146. 不同的循環子字符串

給你一個字符串 text ,請你返回滿足下述條件的 不同 非空子字符串的數目:這些子字符串可以寫成某個字符串與其自身的串聯。   示例 1: 輸入:text = "abcabcabc" 輸出:3 解釋:3 個子字符串分別爲 "abcabc

原创 leetcode5144. 矩陣區域和

給你一個 m * n 的矩陣 mat 和一個整數 K ,請你返回一個矩陣 answer ,其中每個 answer[i][j] 是所有滿足下述條件的元素 mat[r][c] 的和:  i - K <= r <= i + K, j - K <

原创 leetcode1312. 讓字符串成爲迴文串的最少插入次數

給你一個字符串 s ,每一次操作你都可以在字符串的任意位置插入任意字符。 請你返回讓 s 成爲迴文串的 最少操作次數 。 「迴文串」是正讀和反讀都相同的字符串。   示例 1: 輸入:s = "zzazz" 輸出:0 解釋:字符串 "zz

原创 leetcode5145. 祖父節點值爲偶數的節點和

給你一棵二叉樹,請你返回滿足以下條件的所有節點的值之和: 該節點的祖父節點的值爲偶數。(一個節點的祖父節點是指該節點的父節點的父節點。) 如果不存在祖父節點值爲偶數的節點,那麼返回 0 。   示例: 輸入:root = [6,7,8,2

原创 1. 兩數之和

給定一個整數數組 nums 和一個目標值 target,請你在該數組中找出和爲目標值的那 兩個 整數,並返回他們的數組下標。 你可以假設每種輸入只會對應一個答案。但是,你不能重複利用這個數組中同樣的元素。 示例: 給定 nums = [2

原创 164. 最大間距

給定一個無序的數組,找出數組在排序之後,相鄰元素之間最大的差值。 如果數組元素個數小於 2,則返回 0。 示例 1: 輸入: [3,6,9,1] 輸出: 3 解釋: 排序後的數組是 [1,3,6,9], 其中相鄰元素 (3,6) 和 (6

原创 leetcode1311. 獲取你好友已觀看的視頻

有 n 個人,每個人都有一個  0 到 n-1 的唯一 id 。 給你數組 watchedVideos  和 friends ,其中 watchedVideos[i]  和 friends[i] 分別表示 id = i 的人觀看過的視頻列

原创 287. 尋找重複數

給定一個包含 n + 1 個整數的數組 nums,其數字都在 1 到 n 之間(包括 1 和 n),可知至少存在一個重複的整數。假設只有一個重複的整數,找出這個重複的數。 示例 1: 輸入: [1,3,4,2,2] 輸出: 2 示例 2:

原创 1310. 子數組異或查詢

有一個正整數數組 arr,現給你一個對應的查詢數組 queries,其中 queries[i] = [Li, Ri]。 對於每個查詢 i,請你計算從 Li 到 Ri 的 XOR 值(即 arr[Li] xor arr[Li+1] xor

原创 40. 組合總和 II

給定一個數組 candidates 和一個目標數 target ,找出 candidates 中所有可以使數字和爲 target 的組合。 candidates 中的每個數字在每個組合中只能使用一次。 說明: 所有數字(包括目標數)都是正

原创 401. 二進制手錶

二進制手錶頂部有 4 個 LED 代表小時(0-11),底部的 6 個 LED 代表分鐘(0-59)。 每個 LED 代表一個 0 或 1,最低位在右側。 例如,上面的二進制手錶讀取 “3:25”。 給定一個非負整數 n 代表當前 LED