问题2736--需要几件T恤呢?

2736: 需要几件T恤呢?

[命题人 : ]
时间限制 : 1 sec  内存限制 : 128 MB

提交

题目描述

ACM集训队售卖印有其标志的 T 恤。现给你一段长度为 N 的字符串 S,代表GLJ N 天的日程安排,其中每个字符为 "0"、"1" 或 "2",具体含义如下:
  • 若第 i 个字符为 "0",表示第 i 天无安排;
  • 若为 "1",表示第 i 天计划外出就餐;
  • 若为 "2",表示第 i 天计划参加编程竞赛。
GLJ拥有 M 件普通 T 恤,且所有 T 恤在第一天开始前均已洗净。此外,他需要购买若干件ACM标志 T 恤,并满足以下条件:
  • 外出就餐日可穿普通 T 恤或标志 T 恤;
  • 编程竞赛日必须穿标志 T 恤;
  • 无安排日不穿 T 恤,但会清洗所有已穿过的 T 恤,次日可再次穿着;
  • 每件 T 恤穿过一次后必须清洗才能再穿。
请计算他在 N 天内满足所有日程所需购买的最少标志 T 恤数量。若无需购买,输出 0。假设新买的标志 T 恤在第一天开始前也已洗净可用。

输入

  • 1MN1000
  • S 是长度为 N 的字符串,仅由 0、1 和 2 组成
  • N 和 M 均为整数

输出

打印要满足问题陈述中的条件,GLJ至少需要购买多少件 T 恤。
如果他不需要购买新的 T 恤,则打印 0 。

样例输入 Copy

6 1
112022

样例输出 Copy

2

提示

若高桥购买 2 件标志 T 恤,其穿着安排如下:
  • 第 1 天:穿标志 T 恤外出就餐
  • 第 2 天:穿普通 T 恤外出就餐
  • 第 3 天:穿标志 T 恤参加编程竞赛
  • 第 4 天:无安排,清洗所有穿过的 T 恤(第 1、2、3 天穿过的 T 恤均可再次使用)
  • 第 5 天:穿标志 T 恤参加编程竞赛
  • 第 6 天:穿标志 T 恤参加编程竞赛
若购买的标志 T 恤数量≤1 件,则无论如何安排都无法满足条件,因此输出 2。

来源/分类