Hướng dẫn cho Tải RAM
Chỉ sử dụng khi thực sự cần thiết như một cách tôn trọng tác giả và người viết hướng dẫn này.
Chép code từ bài hướng dẫn để nộp bài là hành vi có thể dẫn đến khóa tài khoản.
Chép code từ bài hướng dẫn để nộp bài là hành vi có thể dẫn đến khóa tài khoản.
Authors:
Chúng ta sẽ thực hiện tải RAM tối ưu bằng cách tải ngay \(1\) GB tại giây đầu tiên, sau đó cứ cách \(k\) giây lại tải thêm \(1\) GB như sau
- \(1\) GB: Giây thứ \(1\)
- \(2\) GB: Giây thứ \(k + 1\)
- \(3\) GB: Giây thứ \(2k + 1\)
- ...
- \(n\) GB: Giây thứ \((n-1)k + 1\).
Vậy cần \((n - 1) k + 1\) giây để tải \(n\) GB.
C++
#include <bits/stdc++.h>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
long long t;
cin >> t;
while (t--) {
long long n, k;
cin >> n >> k;
cout << (n - 1) * k + 1 << endl;
}
return 0;
}
Độ phức tạp: Ta mất \(\mathcal{O}(1)\) cho mỗi testcase, tổng sẽ là \(\mathcal{O}(t)\).
Bình luận