试题 基础练习 矩形面积交
提交此题
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
平面上有两个矩形,它们的边平行于直角坐标系的X轴或Y轴。对于每个矩形,我们给出它的一对相对顶点的坐标,请你编程算出两个矩形的交的面积。
输入格式
输入仅包含两行,每行描述一个矩形。
在每行中,给出矩形的一对相对顶点的坐标,每个点的坐标都用两个绝对值不超过10^7的实数表示。
输出格式
输出仅包含一个实数,为交的面积,保留到小数后两位。
样例输入
1 1 3 3
2 2 4 4
样例输出
1.00
x1i=list(map(float,input().split()))
x2i=list(map(float,input().split()))
x1=[min(x1i[0],x1i[2]),min(x1i[1],x1i[3]),max(x1i[0],x1i[2]),max(x1i[1],x1i[3])]
x2=[min(x2i[0],x2i[2]),min(x2i[1],x2i[3]),max(x2i[0],x2i[2]),max(x2i[1],x2i[3])]
xl=max(x1[0],x2[0])
xr=min(x1[2],x2[2])
yup=min(x1[3],x2[3])
ydown=max(x1[1],x2[1])
x=xr-xl
y=yup-ydown
if xr>xl and yup>ydown:
print('{:.2f}'.format(x*y))
else:
print('{:.2f}'.format(0))
试题 基础练习 矩阵乘法
提交此题
资源限制
时间限制:1.0s 内存限制:512.0MB
问题描述
给定一个N阶矩阵A,输出A的M次幂(M是非负整数)
例如:
A =
1 2
3 4
A的2次幂
7 10
15 22
输入格式
第一行是一个正整数N、M(1<=N<=30, 0<=M<=5),表示矩阵A的阶数和要求的幂数
接下来N行,每行N个绝对值不超过10的非负整数,描述矩阵A的值
输出格式
输出共N行,每行N个整数,表示A的M次幂所对应的矩阵。相邻的数之间用一个空格隔开
样例输入
2 2
1 2
3 4
样例输出
7 10
15 22
N,M=map(int,input().split())
A=[]
for i in range(N):
A.append(list(map(int ,input().split())))
def op(A,B,N):
re=[[0]*N for _ in range(N)]
for i in range(N):
# temp=A[i]
for j in range(N):
for k in range(N):
re[i][j]+=B[i][k]*A[k][j]
return re
B=[[0 for j in range(len(A[0]))] for i in range(len(A))]
for i in range(N):
B[i][i]=1
for i in range(M):
B=op(A,B,N)
for i in range(N):
print(' '.join(map(str,B[i])))