警示后人
查看原帖
警示后人
1061320
Isharmla楼主2023/8/28 10:45
  • 读入输出请使用快速读入和快速输出,否则常数大可能会在部分点 TLETLE

  • 排序要排多维。可以像我这样:

return a.l / len == b.l / len ? a.r / len == b.r / len ? a.t < b.t : a.r < b.r : a.l < b.l;
  • 离散化其实是可以用 mapmap 。我们并不关心我们的大小相对关系,我们关系心的是我们出现的次数。也就是说,我们直接把他们的大小赋值为 1,2,3......1,2,3...... 这样就可以了。用 mapmap 记录一下就可以了。我们用 mapmap 相当于就只有读入时用到,复杂度是 O(nlog⁡n+nn)O(n\log n+ n\sqrt{n}) ,确实会劣,但是好写。 就像这个样子
a[i]=read();
if(ma[a[i]]) a[i]=ma[a[i]];
else ma[a[i]]=(++nt),a[i]=nt;
2023/8/28 10:45
加载中...