Codeforces Round 1006 (Div. 3) 部分题解

题面好长。

这场还在 testing,就不放代码了。

E - Multi-Target Attacks

题意

给定 k105 ,构造 n500 个点使得恰好有 k 对点的欧式距离等于曼哈顿距离。

题解

一条线上的点满足这个条件,一条线上有 m 个点就有 m×(m+1)2 个选择,选择若干个 m 凑够 k ,铺成一个个横条就行(x 不同 y 相同)。

从大到小选,最大的 k 大致需要 n=460 左右,可以接受。

不知道最小 n 怎么求(好奇)。

F. Goodbye, Banker Life

题意

T1,1=k,Ti,j={Ti1,j1Ti1,j,if 1<j<iTi1,j,if j=1Ti1,j1,if j=i

给定 k,求出第 n 行的所有元素值。

题解

改成记录被加次数,奇数为 k,偶数为 0,发现这就是杨辉三角,(i,j) 上的被加次数是 (i1j1)

n&m=m 时,(nm) 是奇数,直接判断即可。

G - Calculated the Sum

题意

f(n,p) 为将 np 进制表示翻转后再转为 10 进制后的数字,给定 n,k ,求 i=2kf(n,i)

n3×105,多组测试对 n 没有限制。

题解

k>nf(n,k)=n,现在考虑 kn 的情况。

k2n,那么暴力求解 f(n,k),单次求解复杂度为 logkn。这样的 k 最多 n 个。

k2>n,那 nk 进制表示最多为 2 位,最低位是 nmodk=nk×nk,最高位是 nk,此时:

f(n,k)=k×(nk×nk)+nk

化简得 :

f(n,k)=knk2nk+nk

nk 整除分块,是零次方,一次方和二次方和,单组测试复杂度 O(n)

posted @   蒻蒻虫  阅读(95)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
点击右上角即可分享
微信分享提示