D. 灯带翻转

    传统题 1000ms 128MiB

灯带翻转

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

一条灯带有 kk 盏灯,编号为 0,1,…,k−10,1,\ldots,k-1,初始全部熄灭。小杨要按顺序执行 nn 次操作。

第 ii 次操作由非负整数 aia_i 表示。将 aia_i 写成二进制,二进制位从右向左编号为 0,1,…0,1,\ldots,不足 kk 位的高位视为0。

  • 如果 aia_i 的第 jj 位是1,就翻转第 jj 盏灯:原先亮着的变灭,原先熄灭的变亮。
  • 如果第 jj 位是0,第 jj 盏灯保持当前状态。

请计算执行完全部操作后,有多少盏灯亮着。

输入格式

第一行,两个正整数 n,kn,k,分别表示操作次数和灯的数量。

第二行,nn 个非负整数 a1,a2,…,ana_1,a_2,\ldots,a_n,依次表示各次操作。

输出格式

输出一行,一个非负整数,表示最后亮着的灯数。

样例

3 4
3 5 5
2
2 3
7 7
0

样例解释

样例1把状态按灯号从高到低写成四位二进制,1表示亮、0表示灭。状态依次为:

0000 → 0011 → 0110 → 0011。

最后有两盏灯亮着。后两个操作的数值同为5,使相关灯各翻转两次,回到这两次操作前的状态。

样例2先使三盏灯全部亮起,再使它们全部熄灭。

数据规模与约定

1≤n≤200001\le n\le20000,1≤k≤201\le k\le20,0≤ai<2k0\le a_i<2^k。所有输入均为整数。

【模考】GESP三级

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-11-7 13:15
结束于
2026-11-7 15:15
持续时间
2 小时
主持人
参赛人数
4