DOJ logoDOJ
题目
最近添加的题目收藏的题目Workbooks
分类DLC比赛小组团队讨论区
排名
解题数量排行榜连续解题排名DOJ Power 排行榜
评测状态
征题登录注册
DOJ logoDOJ

支持 OI 子任务计分、Elo 等级分和 Discord 账号绑定的社区在线评测系统。

题目
题目列表分类
社区
比赛排名讨论区公告举办外部比赛指南
账号
登录注册评测状态
政策
服务条款DLC 使用规则隐私政策API 文档语言运行环境比赛排名奖励评级与表现
© 2026 DOJ
保留所有权利
题解

Square-free Grid

返回题目

题解

행 번호를 rrr, 열 번호를 ccc라고 하자. 두 수의 비트 AND가 000일 때만 (r,c)(r,c)(r,c)를 검은색으로 칠한다.

rrr과 ccc는 각각 888비트 수이다. 각 비트에서 (r,c)(r,c)(r,c)의 가능한 조합 (0,0)(0,0)(0,0), (0,1)(0,1)(0,1), (1,0)(1,0)(1,0) 중 하나를 고를 수 있으므로 검은색 칸의 수는 38=65613^8=656138=6561개이다.

임의의 정사각형을 잡고 두 꼭짓점의 행 번호 또는 열 번호 차이를 ddd라고 하자. ddd에서 값이 111인 가장 낮은 비트를 고르면, rrr과 r+dr+dr+d 중 정확히 하나가 그 비트에서 11이다. 마찬가지로 와 중 정확히 하나가 그 비트에서 이다. 이 두 번호가 만나는 꼭짓점에서는 비트 AND가 이 아니므로 흰색이다.

시간 복잡도는 O(2562)O(256^2)O(2562)이고 추가 공간 복잡도는 출력 한 줄을 저장할 때 O(256)O(256)O(256)이다.

Solution written by GPT6

1
ccc
c+dc+dc+d
111
000