trick

trick · 浏览次数 : 0

小编点评

对不起,由于格式限制,我无法按照您的要求生成满足您要求的回复。请您提供详细的需求说明,我会尽力帮助您解决问题。

正文

trick:

  1. \(x\) 与各位数之和模 \(9\) 同余(CF10D
  2. st线段树 可以存 gcdCF10D
  3. 注意函数增减性(CF1632D
  4. dp 时若下标太大,可以调换下标和存储的数值(CF1974E
  5. 贪心不成立时,可以用反悔贪心(CF1974G
  6. 乘法总是比加法更优(CF1872G

注意点:

题目部分:

  1. 数组范围注意不要开错(记得修改缺省源)。
  2. 并查集数组要开两倍
  3. 翻译看不懂的话要自己翻。
  4. 题目中没用的信息跳过不看。
  5. 子串子序列看清楚!
  6. 要看样例解释

代码部分:

  1. 多测不清空,爆零两行泪。
  2. dp 初始化不要忘记(最好设成 LONG_LONG_MAXLONG_LONG_MIN!)。
  3. memset 最好不要用,复杂度高,容易超时。
  4. 判断相等应是 ==
  5. maxmin 中前后的数据类型要相同。
  6. 不能随意long long,可能爆空间。
  7. 看数据范围, 不开 long long 见祖宗
  8. long long 也不够了用 __int128,或手写高精
  9. vector 最好不要直接排序,复杂度高,可以用索引来排序。
  10. 注意算术优先级(加括号)!
  11. 交互题记得输出后要清空fflush(stdout);),并且不要用 ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); 来加速 cincout
  12. 数组越界要特判,比如下标从 \(0\) 开始时 i-1 要特判一下。
  13. 循环边界想清楚再写。
  14. 图论时的输入有时从下标 \(2\) 开始读入。
  15. 二分边界不要判错。
  16. 二分时 \(l+r\) 若超出 long long 范围,可以用 \(mid =l+(r-l)/2\) 来写。
  17. cf 的题不要unordered_map,只能用 map,因为有些大佬卡掉了 unordered_map
  18. 提交时记得删去调试信息!
  19. string 类如果写了 s=" "+s; 之类,n=s.size() 应写在前面。
  20. st表要调用log的预处理!!

debug 部分:

  1. 样例输入不了,可能是 Dev-C++ 死机了,可以打开 洛谷在线 IDE 或其他网站来写。
  2. 如果用了 while(cin>>n) 之类的输入,程序运行无法终止。如果输入的类型是整数,常用的办法是换行后输入 \ 或者什么字母,这样输入就会停止了,并且有输出。或者在循环中特判 \(n\)\(-1\) 时结束,自己手动输入 \(-1\) 即可。提交时记得删去
  3. 没有输出,可能是死循环了。把 ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); 注释掉,之后在递归里输出每次的值。
  4. dp 值不对,可以将 dp 的表格打印出来。

算法选择:

数据范围:

  1. \(n \le 10\) 时,考虑暴力搜索状压 dp
  2. \(n \le 20\) 时,考虑 meet in the middle状压 dp 优化
  3. \(n \le 10^2\) 时,考虑dp
  4. \(n \le 10^3\) 时,考虑暴力枚举
  5. \(n \le 10^5\) 时,考虑贪心
  6. \(n \le 10^9\) 时,考虑二分数学
  7. \(n \le 10^{18}\) 时,考虑数学

题目描述:

  1. 最大值最小(最小值最大):二分、贪心。
  2. 最大得分和最小得分:贪心、dp
  3. 修改、求区间最大值:线段树、前缀和。

与trick相似的内容:

trick

trick: \(x\) 与各位数之和模 \(9\) 同余(CF10D) st表 和 线段树 可以存 gcd(CF10D) 注意函数增减性(CF1632D) dp 时若下标太大,可以调换下标和存储的数值(CF1974E) 贪心不成立时,可以用反悔贪心(CF1974G) 乘法总是比加法更优(CF187

开发者进阶必备的9个Tips & Tricks!

优秀的开发人员市场前景是十分广阔的,但想找到一份理想的工作,仅有代码知识是不够的。优秀的工程师应该是一个终身学习者、问题的创造性解决者,着迷于整个软件世界。要成为一名优秀的开发者,应该具备哪些品质并做出哪些努力?本文给出了一些简单的tips,除了优秀的行为习惯之外,还有一些代码工具使用的小技巧。 方

[转帖]Bash 技巧

https://www.oschina.net/translate/bash-tips-and-tricks?print Bash不是最佳的程序员友好之工具。它需要小心谨慎,底层知识并且不允许出现任何错误(你知道你不能输入foo = 42,对吧?)。 另一方面,bash是无处不在的(即使在Windo

[转帖]Native Memory Tracking 详解(1):基础介绍

https://www.modb.pro/db/516032 0.引言 我们经常会好奇,我启动了一个 JVM,他到底会占据多大的内存?他的内存都消耗在哪里?为什么 JVM 使用的内存比我设置的 -Xmx 大这么多?我的内存设置参数是否合理?为什么我的 JVM 内存一直缓慢增长?为什么我的 JVM 会

[转帖]【技术剖析】15. Native Memory Tracking 详解(1):基础介绍

https://bbs.huaweicloud.com/forum/thread-0246998875346680043-1-1.html 0.引言 我们经常会好奇,我启动了一个 JVM,他到底会占据多大的内存?他的内存都消耗在哪里?为什么 JVM 使用的内存比我设置的 -Xmx 大这么多?我的内存

[转帖]【技术剖析】16. Native Memory Tracking 详解(2):追踪区域分析(一)

https://bbs.huaweicloud.com/forum/thread-0295101552606827089-1-1.html 上篇文章 Native Memory Tracking 详解(1):基础介绍 中,分享了如何使用NMT,以及NMT内存 & OS内存概念的差异性,本篇将介绍NM

[转帖]【技术剖析】17. Native Memory Tracking 详解(3):追踪区域分析(二)

https://bbs.huaweicloud.com/forum/thread-0227103792775240073-1-1.html 应用性能调优 发表于 2022-11-14 15:19:36143查看 上篇文章 Native Memory Tracking 详解(2):追踪区域分析(一) 

[转帖]【技术剖析】18. Native Memory Tracking 详解(4):使用 NMT 协助排查内存问题案例

https://bbs.huaweicloud.com/forum/thread-0211103793043202049-1-1.html 其他 发表于 2022-11-14 15:38:571174查看 从前面几篇文章,我们了解了 NMT 的基础知识以及 NMT 追踪区域分析的相关内容,本篇文章将

[转帖]Native Memory Tracking 详解(2):追踪区域分析(一)

https://www.modb.pro/db/529363 上篇文章 Native Memory Tracking 详解(1):基础介绍 中,分享了如何使用NMT,以及NMT内存 & OS内存概念的差异性,本篇将介绍NMT追踪区域的部分内存类型——Java heap、Class、Thread、Co

[转帖]Native Memory Tracking 详解(3):追踪区域分析(二)

https://www.modb.pro/db/539804 上篇文章 Native Memory Tracking 详解(2):追踪区域分析(一) 中,分享了NMT追踪区域的部分内存类型——Java heap、Class、Thread、Code 以及 GC,本篇图文将介绍追踪区域的其它内存类型以及