二维数组初始化
p=[[0 for i in range(5)] for j in range(2)] #法一
p=[[0]*5 for j in range(2)] #法二
s=[[1,2,3],[4,5,6]]
print(s)
for i in range(2):
for j in range(3):
print(s[i][j],end=' ')
三维数组初始化
a=[[[0 for _ in range(2)] for __ in range(3)] for ___ in range(4)]
读取二维数组
外卖店优先级2019年第十届蓝桥省赛,lanqiao0J题号184
【问题描述】
第一行包含3个整数N, M, T。以下M行每行包含两个整数ts,id,表示 ts时刻编号id的外卖店收到一个订单。
n,m,T=map(int,input().split())
a=[]
priorty=[]
for i in range(m):
a.append([int(i) for i in input().split()])
迷宫2017年第八届蓝桥杯省赛,填空题,lanqiao0J题号641
【问题描述】
给出一个迷宫,问迷宫内的人有多少能走出来。迷宫如右图所示:每个位置上有一个人,共100人。每个位置有指示牌,L表示向左走,R表示向右走,U表示向上走,D表示向下走。
正解:DFS搜索,编码10分钟。
(此处使用二维数组解决,仅能获得部分分值)UDDLUULRUL
UURLLLRRRU
RRUURLDLRD
RUDDDDUUUU
URUDLLRRUU
DURLRLDLRL
ULLURLLRDU
RDLULLRDDD
UUDDUDUDLL
ULRDLUURRR
读取数值
mp=[[''*10] for i in range(10)] #二维矩阵迷宫
for i in range(10):
mp[i]=list(input()) #读迷宫
【问题描述】给定一个N×M的矩阵A,请你统计有多少个子矩阵(最小1×1,最大N×M),满足了矩阵中所有数的和不超过给定的整数K?
【输入格式】第一行包含三个整数N,M和K,之后N行每行包含M个整数,代表矩阵A。处理输入
【输入格式】
第一行包含三个整数N,M和IK,之后N行每行包含M个整数,代表矩阵A。Python如何读矩阵?
定义矩阵a[][],从a[1][1]读到a[n][m]
【输入样例】
3 4 101 2 3 4
5 6 7 8
9 10 11 12
【输出样例】19
暴力法:通过30%测试
【思路】
用i1、i2、 j1、j2框出一个子矩阵用i、j两重for循环统计子矩阵和
import os
import sys
n,m,k=map(int,input().split())
a=[[0] for i in range(n)]
a.insert(0,[0]*(m+1))
for i in range(1,n+1):
a[i].extend(map(int,input().split()))
ans=0
for i1 in range(1,n+1):
for i2 in range(i1,n+1):
for j1 in range(1,m+1):
for j2 in range(j1,m+1):
sum=0
for i in range(i1,i2+1):
for j in range(j1,j2+1):
sum+=a[i][j]
if sum<=k: ans+=1
print(ans)
算法竞赛想要取得好成绩,关键还是多练呀!!!加油冲呀!!!