Professional Documents
Culture Documents
19/04/2020
Nội dung
EKO
PIE
FIBWORDS
EKO
I Có 4 cây 20, 15, 10, 17, lượng gỗ tối thiểu cần cắt là 7.
Ví dụ
I Thuật toán 1: Duyệt tất cả các giá trị h ∈ {0, max(ai )}.
Độ phức tạp: O(max(ai ) × n).
I Thuật toán 2: Tìm kiếm nhị phân giá trị h.
Độ phức tạp O(log (max(ai )) × n)
Code
1 long long count_wood ( int height ) {
2 long long sum = 0;
3 for ( int i = 1; i <= n ; i ++)
4 if ( a [ i ] > height )
5 sum += a [ i ] - height ;
6 return sum ;
7 }
8
9 int main {
10 int l = 0 , r = max (r , a [ i ]);
11
12 while ( r - l > 1) {
13 int mid = ( l + r ) / 2;
14 if ( count_wood ( mid ) >= m ) l = mid ;
15 else r = mid ;
16 }
17 cout << l ;
18 }
PIE
I Dãy Fibonacci Words của xâu nhị phân được định nghĩa như
sau:
0,
if n = 0
F (n) = 1, if n = 1
F (n − 1) + F (n − 2), if n ≥ 2
I Cho n và một xâu nhị phân p. Đếm số lần p xuất hiện trong
F (n) (các lần xuất hiện này có thể chồng lên nhau).
I Giới hạn: 0 ≤ n ≤ 100, p có không quá 100000 ký tự, kết quả
không vượt quá 263 .
Example