原创 python中的笛卡爾乘積

在領釦刷題的過程中遇到需要使用笛卡爾積的解法,因爲使用的是python3版本解決,所以在python版本中提供了一個庫函數可以模擬笛卡爾乘積的元素組成過程:itertools.product,一般來說比較常使用的是在product方法中傳

原创 1281 整數的各位積和之差(分析)

1. 問題描述: 給你一個整數 n,請你幫忙計算並返回該整數「各位數字之積」與「各位數字之和」的差。 示例 1: 輸入:n = 234 輸出:15  解釋: 各位數之積 = 2 * 3 * 4 = 24  各位數之和 = 2 + 3 +

原创 1275 找出井字棋的獲勝者(暴力破解)

1. 問題描述: A 和 B 在一個 3 x 3 的網格上玩井字棋。 井字棋遊戲的規則如下: 玩家輪流將棋子放在空方格 (" ") 上。 第一個玩家 A 總是用 "X" 作爲棋子,而第二個玩家 B 總是用 "O" 作爲棋子。 "X" 和

原创 python中列表的切片操作

主要是分爲正數索引與負數索引,常見的用法如下面代碼所示: if __name__ == '__main__': li = [1, 2, 3, 4, 5, 6] # [:]提取整個列表 print(li[:])

原创 python3創建常見的數據結構

1. 列表 ① [] ② list()構造函數 2. 元組 ① ()構造函數 ② tuple()構造函數 3. set集合 使用set()來創建空的set集合 4. 字典  

原创 1276 不浪費原料的漢堡製作方案(二元一次方程)

1. 問題描述: 聖誕活動預熱開始啦,漢堡店推出了全新的漢堡套餐。爲了避免浪費原料,請你幫他們制定合適的製作計劃。 給你兩個整數 tomatoSlices 和 cheeseSlices,分別表示番茄片和奶酪片的數目。不同漢堡的原料搭配如下

原创 1266 訪問所有點的最小時間(分析)

1. 問題描述: 平面上有 n 個點,點的位置用整數座標表示 points[i] = [xi, yi]。請你計算訪問所有這些點需要的最小時間(以秒爲單位)。 你可以按照下面的規則在平面上移動: 每一秒沿水平或者豎直方向移動一個單位長度,或

原创 python基礎練習100題(1-10)

1. 有四個數字:1、2、3、4,能組成多少個互不相同且無重複數字的三位數?各是多少? if __name__ == '__main__': # 1:題目:有四個數字:1、2、3、4,能組成多少個互不相同且無重複數字的三位數?各

原创 816 模糊座標(python中的笛卡爾乘積)

1. 問題描述: 我們有一些二維座標,如 "(1, 3)" 或 "(2, 0.5)",然後我們移除所有逗號,小數點和空格,得到一個字符串S。返回所有可能的原始字符串到一個列表中。 原始的座標表示法不會存在多餘的零,所以不會出現類似於"00

原创 1277 統計全爲 1 的正方形子矩陣(動態規劃)

1. 問題描述: 給你一個 m * n 的矩陣,矩陣中的元素不是 0 就是 1,請你統計並返回其中完全由 1 組成的 正方形 子矩陣的個數。 示例 1: 輸入:matrix = [   [0,1,1,1],   [1,1,1,1],   

原创 334 遞增的三元子序列(貪心)

1. 問題描述: 給定一個未排序的數組,判斷這個數組中是否存在長度爲 3 的遞增子序列。 數學表達式如下: 如果存在這樣的 i, j, k,  且滿足 0 ≤ i < j < k ≤ n-1,使得 arr[i] < arr[j] < ar

原创 python3初始化list的常見用法

在領釦的刷題過程中會經常遇到list需要一開始的時候進行初始化的需求,對list初始化有以下幾個技巧: 一維列表:  初始化元素個數爲8的的list列表 li = [i for i in range(8)] print(li) li

原创 python3實現輸出一行數據再換行

有的時候需要在循環中輸出一行數據再換行,可以在輸出一行數據之後使用print("")語句來輸出換行,例如輸出下面的圖案: if __name__ == '__main__': # 使用print("")語句來輸出換行 f

原创 python基礎練習100題(11-20)

11. 古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子總數爲多少? 其實理解清楚之後就是斐波那契數列 if __name__ == '__main__'