2023.12.23模拟赛总结

发布时间 2023-12-23 15:05:06作者: longzhaocheng

前言:这次比赛又是tm的AB组一起打,tm的题目怎么一点质量都没有啊,三道简单题+一道模板题,而且模板我还没做过,而且我的一个部分换成那个模板就A了
这次300pts,rank3,感觉不太好

T1

dp,\(f[i][0/1]\)表示i位置填0/1的方案数,直接转移,写高精度

T2

感觉应该放T4,实际最难
首先,我们设跳楼机从0开始出发,那么h--
然后,题目就是要我们求\(ax+by+cz=S\),\(x<=h\)的方案数
转化一下,就是求\((S-(ax+by))\equiv0(\mod z)\)的方案数
由于等于0,所以可以写成\(S\equiv0(\mod z),ax+by\equiv 0(\mod z),S>=ax+by\)的方案数
S的方案数可以直接求,减去最小的ax+by以前的即可
考虑同余最短路,对于一个i,把它和\((i+y)mod z\)连一条长度为y的边,\((i+x)modz\)连一条长度为z的边,然后从0开始跑最短路,求出的\(dis[i]\)就是\(ax+by\equiv i(mod z)\)的最小解
然后就可以直接求了
赛时不会怎么求ax+by的最小,就寄了

T3

\(f[i][j][x][y][z]\)表示当前在\((i,j)\),前面,上面,右面分别为原本的第x,y,z个的最小代价,由于不知道有没有负权边,就打了spfa,反正稳过

T4

开30棵线段树,每次对于每种颜色区间赋值即可,没一点难度,但有点卡常
正解是一颗线段树,状压有没有第i种颜色,然后就正常做,merge就直接或起来即可