2021-team3-006

从 Trac 迁移的文章

这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。

原文章内容如下:

[/wiki/2021-team3 返回]

== Ranklist ==




== 概述 ==

solved: 8/13  dirt: ??

rank: 5



==  ==

== 总结 ==

szb:

这场前期队友双打,最后1.5h szb加入写了一发A,其中A题szb不能保证做法正确,但是在没有题能写的情况下值得一试。

队友没有写G和I确实比较亏。

hjq:

~~这里是总结~~

wd:

~~这里是总结~~

== 题解 ==


A: 采用官方题解:建01字典树,用map<ll,ll> solve(ll now, ll nowbit)存储now节点所有数的匹配,转移时遍历两边,根据题目性质每一个1的匹配必定有一个0的匹配是相同的,然后两对匹配各安排一个高位即可。

B: 

C: 签到

D:签到

E:

F:签到

G:非常麻烦的线段树

H:

I:据说是拟阵,hjq认为可以直接贪心,待补

J:dp

K:

考虑如果两个棋子在同一行且有间隔,先手一步把间隔顶满,则后手只能被步步逼退到角落。因此考虑记sg[i][j]表示两个棋子分别在第i列和第j列时的sg值,相差一列以内是必败态(把行玩完以后就动不了了),其他做普通的sg函数转移(枚举后继状态,取mex)

合并时,判掉相贴和共一个角两个情况以后只要考虑两行的sg和两列的sg即可。

L:跑一边最短路然后更新每个节点的最短路和最短路条数即可。

M:签到,模拟即可。

[/wiki/2021-team3 返回]

Ranklist

概述

solved: 8/13 dirt: ??

rank: 5

总结

szb:

这场前期队友双打,最后1.5h szb加入写了一发A,其中A题szb不能保证做法正确,但是在没有题能写的情况下值得一试。

队友没有写G和I确实比较亏。

hjq:

这里是总结

wd:

这里是总结

题解

A: 采用官方题解:建01字典树,用map solve(ll now, ll nowbit)存储now节点所有数的匹配,转移时遍历两边,根据题目性质每一个1的匹配必定有一个0的匹配是相同的,然后两对匹配各安排一个高位即可。

B:

C: 签到

D:签到

E:

F:签到

G:非常麻烦的线段树

H:

I:据说是拟阵,hjq认为可以直接贪心,待补

J:dp

K:

考虑如果两个棋子在同一行且有间隔,先手一步把间隔顶满,则后手只能被步步逼退到角落。因此考虑记sg[i][j]表示两个棋子分别在第i列和第j列时的sg值,相差一列以内是必败态(把行玩完以后就动不了了),其他做普通的sg函数转移(枚举后继状态,取mex)

合并时,判掉相贴和共一个角两个情况以后只要考虑两行的sg和两列的sg即可。

L:跑一边最短路然后更新每个节点的最短路和最短路条数即可。

M:签到,模拟即可。