CF2156A.Pizza Time

入门

通过率:0%

AC君温馨提醒

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

题目描述

Hao 和 Alex 是好朋友。在一起赢得编程大赛后,他们获得了一个巨大的披萨作为奖励。

一开始,他们有 nn 块披萨。每一天,都会重复以下过程:

  • 如果剩余的披萨不超过 22 块,Alex 会把所有剩下的披萨都吃掉。

  • 否则,设当前披萨数量为 mm(m≥3m \ge 3)。Hao 将这些披萨分为三组,组数分别为 m1m_1、m2m_2、m3m_3,满足:

    m1+m2+m3=m,1≤m1≤m2≤m3m_1 + m_2 + m_3 = m,\quad 1 \le m_1 \le m_2 \le m_3

    然后:

    • Hao 吃掉 m1m_1 块(最小的那组)。
    • Alex 吃掉 m2m_2 块(中间的那组)。
    • 剩余的 m3m_3 块(最大的一组)留到第二天继续吃。

你的任务是,计算在每次分组都最优选择的情况下,Hao 能吃到的最大披萨块数总和。

输入格式

每个测试点包含多个测试用例。第一行包含测试用例数 tt(1≤t≤5001 \le t \le 500)。测试用例的描述如下。

每个测试用例仅有一行,包含一个整数 nn(3≤n≤1093 \le n \le 10^9),表示初始披萨块数。

注意所有测试用例的 nn 之和没有额外限制。

输出格式

对于每组测试用例,输出一个单独的整数,表示 Hao 能吃到的最大披萨块数。

输入输出样例

  • 输入#1

    3
    8
    4
    3

    输出#1

    3
    1
    1

说明/提示

在第一个测试用例中,Hao 最多可以吃 33 块披萨,具体分配如下:

  1. 分为 m1=2m_1=2、m2=3m_2=3、m3=3m_3=3,Hao 吃 22 块,Alex 吃 33 块,剩下 33 块留到第二天。
  2. 分为 m1=1m_1=1、m2=1m_2=1、m3=1m_3=1,Hao 吃 11 块,Alex 吃 11 块,剩下 11 块留到第二天。
  3. 只剩 11 块,由 Alex 吃掉。

在第二个测试用例中,Hao 最多可以吃 11 块披萨:

  1. 分为 m1=1m_1=1、m2=1m_2=1、m3=2m_3=2,Hao 吃 11 块,Alex 吃 11 块,剩下 22 块留到第二天。
  2. 只剩 22 块,由 Alex 吃掉。

由 ChatGPT 5 翻译

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

首页