CF1168C】的更多相关文章

题目链接:洛谷 题目描述:给出$n$个数$a_i$,若$i<j$且$a_i & a_j>0$,则$i$到$j$连一条有向边,$q$次询问,询问从$l$开始是否能到达$r$. 数据范围:$n,q\leq 3*10^5$ 一道及其美妙的思维题.(以下均用二进制) 维护两个数组,$g_{i,j}$表示下标小于$i$的数中下标最大且第$j$位为1的下标.$f_{i,j}$表示下标小于$i$的数中下标最大,第$j$位为1且可以到达$i$的下标. $g_{i,j}$的预处理不用多说了,$f_{i,…
CF1168C 从后往前扫一遍维护\(f[x][k]\)表示从开始x至少要走到那个位置才能到达一个第\(k\)位是1的数 #include<iostream> #include<cstring> #include<algorithm> #include<cstdio> using namespace std; int n,m,a[310001],w[20][20],e[20],f[310001][20],x,y,d[20]; int main() { sca…
首先定义 $g[i][j]$ 表示 $i$ 前面(不包括 $i$)第一个第 $j$ 位是 $1$ 的数的位置.可以随便转移. 再定义 $f[i][j]$ 表示 $i$ 前面(包括 $i$)第一个第 $j$ 位是 $1$ 的数,且能通过题面的操作跳到 $i$ 的位置. 也能随便转移.先判断 $i$ 自己可不可以,可以就直接搞,不可以就找一个中介位 $k$($a_i$ 的第 $k$ 位必须是 $1$),$f[g[i][k]][j]$ 一定是可以跳到的.因为 $i$ 肯定能从 $g[i][k]$ 跳到…
CF1158C CF1163E update after CF1173 很好,我!expert!掉rating了!! 成为pupil指日可待== 下次要记得合理安排时间== ps.一道题都没写的\(asuldb\)排名比窝和慎老师还高,然后还嘲讽窝掉rating?? 他合格考稳了 CF1179D CF280C 期望 CF914D CF1041C CF1197E 码力约等于-inf CF1217D 如果\(x>y\)则标红否则标蓝毕竟一个环不可能单调不降 CF322F 拉格朗日插值 CF1215D…