记录一些奇奇怪怪的错误

  1. 最大最小问题:优先考虑二分答案 dp 最短路

  2. 涉及到取与不取考虑背包

  3. 多组数据时一定记得每次初始化/清空数组和队列等

    而且初始化时不乱用 memset 因为很慢。

  4. 一定要考虑答案是否具有单调性(有很多计数题可能符合条件的数也是具有单调性的)

  5. 记住:scanf效率远大于cin.因此尽量使用scanf(尤其是输入的数据量>=1e+6)不然输入超时就十分可惜了。

  6. 数组开到 (1e9) 会爆掉。因此可以使用map进行代替。没有赋值(?)的map初始值为0

  7. (n<=2e9) 都可以放心使用 int

  8. dp时间复杂度在无优化的情况下通常为 (O(n^2))​,因此应根据情况合理使用搜索

  9. 数字超出数据范围会变成负数表示。因此如果想判断所取值是否过大(超出ing/long long范围)(乘法尤为多见)时不仅要保证此数小于该数据类型能取到的的最大值,还有注意不能使负数(根据实际情况)

The desire of his soul is the prophecy of his fate
你灵魂的欲望,是你命运的先知。

原文地址:https://www.cnblogs.com/RioTian/p/15117487.html