有n件裝備 每個裝備有m個引數和乙個**
如果某個裝備能夠被已經買過的裝備組合出來
即 b1zi1 + … + bpzip = zh(b 是實數)
那麼就不需要買這件裝備
求最多的買裝備數和最少的錢
大佬:線性基裸題
我:不會啊…
線性相關:
一組資料中有乙個或者多個量可以被其餘量表示。
所以題面顯然就是線性相關的定義,直接上實數下的線性基即可。
貪貪心,我們把首先把**小的買了
卡卡卡精度啊…
開long double 而且把上限搞大一點,1e-6實測wa
luogu 3265
bzoj 4004
#include
#include
#include
#include
#define cin std::cin
#define cout std::cout
#define double long double
const
int maxm=600;
const
double eps=1e-5;
int n,m,ans,tot;
int used[maxm];
struct nodea[maxm];
bool comp(node x,node y)
else
}cout
<" "
0;}
BZOJ4004 JLOI2015 裝備購買
臉哥最近在玩一款神奇的遊戲,這個遊戲裡有 n 件裝備,每件裝備有 m 個屬性,用向量zi aj am 表示 1 i n 1 j m 每個裝備需要花費 ci,現在臉哥想買一些裝備,但是臉哥很窮,所以總是盤算著 怎樣才能花盡量少的錢買盡量多的裝備。對於臉哥來說,如果一件裝備的屬效能用購買的其他裝備組合出...
BZOJ 4004 JLOI2015 裝備購買
time limit 20 sec memory limit 128 mb submit 2027 solved 624 submit status discuss description 臉哥最近在玩一款神奇的遊戲,這個遊戲裡有 n 件裝備,每件裝備有 m 個屬性,用向量zi aj am 表示 1...
BZOJ4004 JLOI2015 裝備購買
bzoj luogu 給你 n 個 m 維向量,每個向量有乙個權值,求最小權極大線性無關組。按照權值排序從小到大插入就好了。這樣很好證明 若存在一組向量線性相關,那麼肯定是刪掉權值最大的那個向量最優。那麼按權值從小到大插入時只要發現當前待插入向量與原向量集線性相關就不插入。怎麼維護向量集?類似線性基...