警示后人,如果全部TLE
查看原帖
警示后人,如果全部TLE
167465
max0810楼主2023/12/5 19:03

如果你按照下面这样写会T完:

struct node{int l,r,id,k;}q[N];
for(int i = 1;i <= m;i++)
	q[i] = {rd(),rd(),i,(q[i].l-1)/nn+1};

猜测原因是程序在运行时先计算一个{rd(),rd(),i,(q[i].l-1)/nn+1}的结构体,然后再赋给q[i],所以q[i].k会等于0,但是上述代码我在本地运行能过。 所以要改成:

for(int i = 1;i <= m;i++)
  q[i] = {rd(),rd(),i},q[i].k = (q[i].l-1)/nn+1;
2023/12/5 19:03
加载中...