AT_arc019_4.[ARC019D] ほんとうのたたかい

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

终于击败了魔王,世界终于迎来和平!

然而,我的战斗还没有结束!每个月,我还需要与妹妹竞赛以争夺高级甜点!

不为人知的是,我的妹妹非常擅长竞技编程,每次都在这些比赛中击败我并夺走了高级甜点!

(毕竟,我家世代都参加竞技编程,家里的规矩是竞技编程成绩决定高级甜点的归属,这也是没办法的事。)

每次输给妹妹,长期以来都尝不到高级甜点,作为姐姐的自尊心也受到了打击。因此,我一直在偷练编程技巧,希望有一天能够反败为胜!为了提升自己,我一直在玩最近的《Ancient Royal Coders》游戏。

这次,我们又要在一场较量中争夺高级甜点。

这次比赛的规则是:创建一个满足以下条件的 N×NN \times N 的网格提交参赛:

  • NN 必须是整数,且满足 2≤N≤1502 \le N \le 150。
  • 每个格子要么是有一个 O,要么是空的。
  • 对于任何一个边平行于行或列的长方形,其四个角的格子中至少有一个格子是空的。换句话说,对于满足 1≤i,j,k,l≤N1 \le i, j, k, l \le N 的任意四个整数,下面的条件必须成立:
    • 定义第 pp 行第 qq 列的格子为 (p,q)(p, q),那么在 (i,j)(i, j), (i,l)(i, l), (k,j)(k, j), (k,l)(k, l) 中至少有一个格子是空的。

在这些满足条件的网格中,填入 O 数量最多的将获胜。

本月的奖励是传说中的布丁。这几年,我都没有尝过这种布丁。顺便一提,这些年正是从妹妹开始学习竞技编程开始算起,这一点可是秘密。

幸运的是,这次的布丁是可以共享的,因此我提议让我们根据比赛表现分享布丁,这个提议顺利通过。这样做是为了避免我拿走妹妹的甜点让她伤心,当然,我只是想分一点点而已。

无论如何,这次我有信心胜利。现在是展示我在《Ancient Royal Coders》中磨练出的编程技能的时候了!

**注意:此题没有输入。**问题设置了一些得分规则。

  • 根据你的输出,设输出网格中 O 的个数为 SS,奖金得分标准如下:
    • 输出不满足条件或 S≤294S \le 294,可惜得不到布丁,得分为 00。
    • 输出满足条件且 295≤S≤399295 \le S \le 399,可以微量分享布丁,得分为 55。
    • 输出满足条件且 400≤S≤899400 \le S \le 899,可以获得一口布丁,得分为 1010。
    • 输出满足条件且 900≤S≤1299900 \le S \le 1299,可以获得一口半布丁,得分为 2020。
    • 输出满足条件且 1300≤S≤14991300 \le S \le 1499,可以获得两口布丁,得分为 3030。
    • 输出满足条件且 1500≤S≤16991500 \le S \le 1699,可以获得四分之一的布丁,得分为 5050。
    • 输出满足条件且 S≥1700S \ge 1700,可以获得一半布丁,得分为 100100。

输出格式:

  • 第一行输出一个整数 NN,2≤N≤1502 \le N \le 150。

  • 接下来的 NN 行,每行输出一个长度为 NN 的字符串,每个字符是 O 或 .。

  • 最后要注意在输出的最后加上一个换行符。如果没有换行,即使其他部分正确也会被判为 WA。特别是在提交后的结果页面可能不容易判断最后一行是否有换行。

  • 你可以在源代码的地方写下你想输出的内容,然后选择 Text (cat) 语言进行提交,这样内容会直接当做输出进行提交。当然也可以使用其他编程语言生成并输出内容,但务必符合时间和内存的限制。

判题系统中的 AC 和 WA 含义特别:

  • AC 表示输出满足条件,不论最后得分如何。
  • WA 表示输出不满足条件。

即便显示 AC,你实际得分仍可能是 00 分。

本翻译由 AI 自动生成

输入解题思路,AI测评打分。不知道怎么写?

首页