警示后人&细节
查看原帖
警示后人&细节
967959
TH911楼主2024/8/15 19:56

代码细节

  1. 结构体内元素对齐是对齐到该元素的对齐要求,而不是结构体的对齐要求
  2. 此题需要开long long,读入、输出都需要long long,不推荐使用scanf/printf,容易将%lld写为%d(我这么干了60pts)
  3. 3、4操作原理就是特判最外层,然后循环/递归查找内层
  4. 操作4需要特判对齐规则空出来的"空",建议存储每一个子元素的起始地址,然后第k+1个起始地址设置为1e18+1,查找时遍历到k+1,这样特判addr<起始地址即可\
  5. 不要使用vector,vector动态扩容首先会导致迭代器失效,其次用的多可能MLE(此题大概率不会),因为vector扩容时最大能达到原来的3倍内存占用。此题使用静态数组完全可以过(n≤100n\leq100直接水过)
  6. 本题建议使用普通指针而非静态指针,因为静态指针使用map维护"名称->结构体/元素"要套很多层"[ ]"

(最后附赠一个亲测错误:)
85pts on #2,#3,#7:没有特判最外层处于“空”中

2024/8/15 19:56
加载中...