Sử dụng hàm $assert$(Điều kiện) và vài cách để kiểm tra test đề wrong ans, TLE, runtime eror, Memory
assert(false);
Khi đề bài bắt tính gì đó từ $l→r$ ta có thể xem có thể tính từ $1 → l$ hoặc từ $1 → r$ hay không vì nhiều trường hợp tính từ một dễ hơn và kết quả sẽ lấy $ans(r) - ans(l-1)$
Problem: https://gspvh22.contest.codeforces.com/group/Lux9RR7xrm/contest/404495/problem/C
Dùng các cấu trúc dữ liệu map, set là tối kị thay vào đó có thể dùng những cách khác, dù là cùng độ phức tạp $O(logn)$ nhưng hằng số của map, set là rất lớn:
Thứ tự độ phức tạp $O(logn)$ từ nhỏ đến lớn:
BIT (fenwich tree)
Sort
Binary search
Segment tree
Map/set
Cũng tương tự như Map, set trong CTDL ở trên thì trong lập trình cũng sợ nhất là đụng tới số thực, vậy nên khi code chương trình có sài hàm pow(), sqrt() thì phải hết sức chú ý vì khi đụng vào số lớn 2 hàm này sẽ trả về sai số, và không biết fix bug ở đâu, cách sử lý những trường hợp này có trong phần số học
Đôi khi trong một điều kiện if có nhiều điều kiện với dấu && ta nên để điều kiện có độ phức tạp bé nhất ở đầu tiên vì trong chương trình C++ nó sẽ thực hiện lần lượt từng điều kiện và nếu điều kiện nào sai thì sẽ thoát
Đang update…