题目名称 871. 平衡奶牛
输入输出 balline.in/out
难度等级
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试数据 12
题目来源 Gravatarcqw 于2012-07-10加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:9, 提交:35, 通过率:25.71%
Gravatarthmyl 100 0.205 s 42.66 MiB C++
GravatarMakazeu 100 0.345 s 12.91 MiB C++
Gravatarsillyrobot 100 0.377 s 41.05 MiB Pascal
GravatarCC 100 0.426 s 14.04 MiB C++
Gravatarzhangchi 100 0.475 s 92.48 MiB Pascal
Gravatarwo shi 刘畅 100 0.613 s 69.59 MiB Pascal
Gravatarczp 100 0.725 s 23.81 MiB Pascal
Gravatarfuhao 100 0.751 s 94.01 MiB Pascal
GravatarFoolMike 100 2.021 s 57.89 MiB C++
GravatarAelita 91 0.295 s 13.67 MiB C++
本题关联比赛
20120711
关于 平衡奶牛 的近10条评论(全部评论)
以前做过。。但是
GravatarAelita
2015-12-24 07:26 1楼

871. 平衡奶牛

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

有N头奶牛(1 <= N <= 100,000),共有K个不同的技能 (1 <= K <= 30).

FJ给每个奶牛一个整数ID, ID可以展开成K-bit的二进制数。比如某头奶牛的ID = 13. 则二进制数1101, 那么表示该奶牛有三个技能,分别是:1、 3、4 (从右往左读)。

FJ 把1..N头奶排在一条直线上,然后惊喜的发现,某一段连续的奶牛是“平衡的”。 所谓的平衡是指:这K个技能中的任何一种技能在该连续奶牛段中出现的次数相同。 FJ想知道:最长“平衡的”奶牛连续段有多长。

输入格式

  • 第 1行: 两个整数: N 、 K.
  • 第 2..N+1行: 每行一个整数,第 i+1行的整数表示第i头奶牛的ID.

样例输入(balline.in)

7 3
7
6
7
2
1
4
2

样例解释

有7头奶牛,有3 种技能。如下表所示:
技能 3:      1   1   1   0   0   1   0
技能 2:      1   1   1   1   0   0   1
技能 1:      1   0   1   0   1   0   0
ID:          7   6   7   2   1   4   2
Cow #:       1   2   3   4   5   6   7

输出格式

  • 第1行:一个整数. 最长“平衡的”奶牛连续段有多长。

样例输出 (balline.out)

4

输出解释

从奶牛3 到奶牛6(共4头),每种技能都有两头奶牛具备:
技能 3:     1   0   0   1  -> two total
技能 2:     1   1   0   0  -> two total
技能 1:     1   0   1   0  -> two total
ID:         7   2   1   4 
Cow #:      3   4   5   6