题目名称 2908. [USACO Feb18] 驯服牛群
输入输出 taming.in/out
难度等级 ★★☆
时间限制 1000 ms (1 s)
内存限制 256 MiB
测试数据 11
题目来源 GravatarWHZ0325 于2018-03-02加入
开放分组 全部用户
提交状态
分类标签
USACO 动态规划
分享题解
通过:5, 提交:5, 通过率:100%
Gravatar烟雨 100 0.006 s 0.37 MiB C++
GravatarAPWTMECRD 100 0.007 s 0.37 MiB C++
Gravatar胡嘉兴 100 0.030 s 4.99 MiB C++
GravatarWHZ0325 100 0.037 s 4.70 MiB C++
Gravatar梦那边的美好ET 100 0.097 s 5.39 MiB C++
关于 驯服牛群 的近10条评论(全部评论)
论忽视题目条件的危害……
GravatarWHZ0325
2018-03-03 17:49 1楼

2908. [USACO Feb18] 驯服牛群

★★☆   输入文件:taming.in   输出文件:taming.out   简单对比
时间限制:1 s   内存限制:256 MiB

【题目描述】

一大清早,Farmer John 就被木材破裂的声音吵醒了。是这些奶牛们干的,她们又逃出牛棚了!Farmer John 已经厌烦了奶牛在清晨出逃,他觉得受够了:是时候采取强硬措施了。他在牛棚的墙上钉了一个计数器,追踪从上次出逃开始经过的天数。所以如果某一天早上发生了出逃事件,这一天的计数器就为 $0$;如果最近的出逃是 $3$ 天前,计数器读数就为 $3$。Farmer John 一丝不苟地记录了每一天计数器的读数。

年末到了,Farmer John 准备做一些统计。他说,你们这些奶牛会付出代价的!然而他的某些记录看上去不太对劲……

Farmer John 想要知道从他开始记录以来发生过多少次出逃。但是,他怀疑这些奶牛篡改了它的记录,现在他所确定的只有他是从发生出逃的某一天开始记录的。请帮助他求出,对于每个从他开始记录以来可能发生的出逃次数,他被篡改了的记录条数的最小值。

【输入格式】

输入的第一行包含一个整数 $N$($1≤N≤100$),表示从 Farmer John 开始对奶牛出逃计数器进行计数以来已经经过的天数。第二行包含 $N$ 个空格分隔的整数。第 $i$ 个整数是一个非负整数 $a_i$(不超过 $100$),表示在第 $i$ 天计数器的数字是 $a_i$,除非奶牛篡改了这一天的记录条目。

【输出格式】

输出包含 $N$ 个整数,每行一个。第$i$个整数为所有发生 $i$ 次出逃的事件序列中,与该事件序列不一致的记录条目条数的最小值。

【样例输入】

6
1 1 2 0 0 1

【样例输出】

4
2
1
2
3
4

【提示】

如果只发生 $1$ 次出逃,则正确的记录应该为 $0 1 2 3 4 5$,有 $4$ 处与给定的记录不同。

如果发生 $2$ 次出逃,则正确的记录可能为 $0 1 2 3 0 1$,有 $2$ 处与给定的记录不同。在这个例子中,出逃发生在第一天和第五天。

如果发生 $3$ 次出逃,则正确的记录可能为 $0 1 2 0 0 1$,仅有 $1$ 处与给定的记录不符。在这个例子中,出逃发生在第一天、第四天和第五天。

以此类推。

【来源】

USACO 2018 February Gold Taming the Herd

供题:Brian Dean,Dhruv Rohatgi