Offer收割 程式設計練習賽7

2021-07-22 06:58:13 字數 747 閱讀 7224

比較容易想到是o(n^2)的解決方案,遍歷n種刪除可能,每次遍歷o(n)時間求總高度。

前者優化比較困難,因而想辦法優化每次遍歷求高度的時間。

由前往後遍歷,當刪除第i個時,先前的排版是連續的,從而通過計數器等累加方法可以求得已完整行的總高度presum,以及當前未完整行的w,h。

#include#define inf 0x3f3f3f3f

using namespace std;

const int n = 100005;

int n,m;

int wi[n],hi[n],t[n];

void attach(int i,int &w,int &h)

int calc(int i,int w,int h)

void solve()

} printf("%d\n",ans);

}int main()

return 0;

}

利用map的性質即可輕易求解。

#includeusing namespace std;

typedef long long ll;

mapma;

map::iterator it;

int main()

//coutsecond-1)/2;

}printf("%lld\n",ans);

}return 0;

}

Offer收割 程式設計練習賽1

做了三題,題目都比較暴力。a題 題意 給你乙個三階的幻方,三階幻方指的是將1 9不重複的填入乙個3 3的矩陣當中,使得每一行 每一列和每一條對角線的和都是相同的。現在準備將乙個三階幻方中的一些陣列抹掉 0代替 交給你來進行還原,並且希望她能夠判斷出究竟是不是只有一組解。如果只有一組解,輸出該三階幻方...

Offer收割 程式設計練習賽26

題解 按照條件求解出最大的三角形和最小的三角形,然後求重心即可。這裡求解面積有兩種方法 海 式 p p a p b p c 將三角形的每一條邊求解出來,然後進行處理 用有向向量進行計算,如果設a x0,y 0 b x1,y 1 c x2,y 2 三點為三角形三個頂點,a 為有向面積,那麼2a x0 ...

Offer收割 程式設計練習賽30

題解 簡單的模擬題,大家懂的 include include include include include include include include include define fin freopen input.txt r stdin define fout freopen output...