问题
有一个 n×n 的网格图 G,对于所有排列 p:V→V,求 min(u,v)∈Edis(p(u),p(v)) 的最大值。
n−1
用 {0,1,…,n−1}2 表示结点。定义 kth-max(k) 为取第 k 大符号,有
ans=u∈Vminv∈N(u)mindis(p(u),p(v))≤u∈Vminv′∈Vkth-max(N(u))dis(p(u),v′)≤u∈Vminv′∈V2nd-maxdis(p(u),v′)=u′∈Vminv′∈V2nd-maxdis(u′,v′)
ans≤v′∈V2nd-maxdis((m,m),v′)=dis((m,m),(0,1))=2m−1.
下证这个上界能取到。注意到映射
p:(x,y)↦(((m−1)x+my)modn,(mx+(m−1)y)modn)
存在逆映射(实际上不难验证 p 是自逆的),因此它是一个排列。
另一方面,由于 ∣amodn−(a+d)modn∣≥min{dmodn,(−d)modn},我们有
≥=dis(p((x,y)),p(x,y+1)),dis(p((x+1,y)),p(x,y))min{mmodn,(−m)modn}+min{(m−1)modn,(1−m)modn}min{m,m}+min{m−1,m+1}=2m−1
可以取到这个上界。
ans≤v′∈V2nd-maxdis((m,m),v′)=dis((m,m),(0,0))=2m.
下证这个上界能取到。注意到映射
p:(x,y)↦((mx+my)modn,(mx+(m+1)y)modn)
存在逆映射
p−1:(x,y)↦((−y−x)modn,(y−x)modn)
因此是一个排列。
另一方面,
dis(p((x,y)),p(x,y+1)),dis(p((x+1,y)),p(x,y))≥min{m,m+1}+min{m,m+1}=2m
因此可以取到。