上定义:
\text{ \ \ \ \ \ } 这类问题一般会给出向量计算的方式(例如向量加法a+b,或者标量乘法k*a (其中k是标量,a是向量))
\text{ \ \ \ \ \ } 给定若干个向量 a 1 , a 2 , a 3 , … , a k a_1,a_2,a_3,…,a_k a1,a2,a3,…,ak , 若向量b 能由 a 1 , a 2 , a 3 , … , a k a_1,a_2,a_3,…,a_k a1,a2,a3,…,ak 经过向量计算得出,则称向量b能被向量 a 1 , a 2 , a 3 , … , a k a_1,a_2,a_3,…,a_k a1,a2,a3,…,ak表出。
\text{ \ \ \ \ \ }
a
1
,
a
2
,
a
3
,
…
,
a
k
a_1,a_2,a_3,…,a_k
a1,a2,a3,…,ak能表出的所有向量构成一个线性空间。(一个向量集合)
\text{ \ \ \ \ \ }
a
1
,
a
2
,
a
3
,
…
,
a
k
a_1,a_2,a_3,…,a_k
a1,a2,a3,…,ak被称为这个线性空间的生成子集。
\text{ \ \ \ \ \ } 对于一个向量子集,若其中存在一个向量能被其他向量表出,则称这些向量线性相关,否则称为线性无关。
\text{ \ \ \ \ \ } 线性无关的生成子集称为线性空间的基底,简称基。也就是说基内的所有向量无法相互表出,且基能表出线性空间里的所有向量,是为根基。( 可以反证法证明基就是线性空间的极大线性无关子集 )
\text{ \ \ \ \ \ }
一个线性空间可能有多个基,但基内的向量个数相同,基内的向量个数被称为维数。(笔者不会证明)
\text{ \ \ \ \ \ }
如3维空间的两个基:
\text{ \ \ \ \ \ }
基1:(1,0,0),(0,1,0),(0,0,1);
\text{ \ \ \ \ \ }
基2:(1,1,0),(0,1,1),(1,0,1).
\text{ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }
——参考李煜东《算法进阶》
题目传送门:
[JLOI2015]装备购买 https://www.luogu.org/problem/P3265
我们可以看到,如果物品aj可以用a1…aj-1组合而出的话,我们可以通过公式得到
k
1
∗
a
1
,
x
1
+
k
2
∗
a
2
,
x
1
+
k
3
∗
a
3
,
x
1
+
.
.
.
+
k
j
−
1
∗
a
j
−
1
,
x
1
=
a
j
,
x
1
k_1*a_{1,x_1}+k_2*a_{2,x_1}+k_3*a_{3,x_1}+...+k_j-1*a_{j-1,x_1}=a_{ j,x_1}
k1∗a1,x1+k2∗a2,x1+k3∗a3,x1+...+kj−1∗aj−1,x1=aj,x1
k
1
∗
a
1
,
x
2
+
k
2
∗
a
2
,
x
2
+
k
3
∗
a
3
,
x
2
+
.
.
.
+
k
j
−
1
∗
a
j
−
1
,
x
2
=
a
j
,
x
2
k_1*a_{1,x_2}+k_2*a_{2,x_2}+k_3*a_{3,x_2}+...+k_j-1*a_{j-1,x_2}=a_{j,x_2}
k1∗a1,x2+k2∗a2,x2+k3∗a3,x2+...+kj−1∗aj−1,x2=aj,x2
………
k
1
∗
a
1
,
x
m
+
k
2
∗
a
2
,
x
m
+
k
3
∗
a
3
,
x
m
+
.
.
.
+
k
j
−
1
∗
a
j
−
1
,
x
m
=
a
j
,
x
m
k_1*a_{1,x_m}+k_2*a_{2,x_m}+k_3*a_{3,x_m}+...+k_j-1*a_{j-1,x_m}=a_{j,x_m}
k1∗a1,xm+k2∗a2,xm+k3∗a3,xm+...+kj−1∗aj−1,xm=aj,xm
我们就是要求出是否有这样的一组
k
k
k使得上述等式成立