CF467B.Fedor and New Game
普及-
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
After you had helped George and Alex to move in the dorm, they went to help their friend Fedor play a new computer game «Call of Soldiers 3».
The game has (m + 1) players and n types of soldiers in total. Players «Call of Soldiers 3» are numbered form 1 to (m + 1). Types of soldiers are numbered from 0 to n - 1. Each player has an army. Army of the i-th player can be described by non-negative integer x__i. Consider binary representation of x__i: if the j-th bit of number x__i equal to one, then the army of the i-th player has soldiers of the j-th type.
Fedor is the (m + 1)-th player of the game. He assume that two players can become friends if their armies differ in at most k types of soldiers (in other words, binary representations of the corresponding numbers differ in at most k bits). Help Fedor and count how many players can become his friends.
在你帮助乔治和亚历克斯搬进宿舍后,他们去帮朋友费多尔玩一款新的电脑游戏《士兵召唤3》。
该游戏共有 m+1 名玩家和 n 种士兵类型。《士兵召唤3》的玩家编号为 1 到 m+1;士兵类型编号为 0 到 n−1。每名玩家都拥有一支军队。第 i 名玩家的军队可用一个非负整数 xi 表示:考察 xi 的二进制表示,若 xi 的第 j 位(从低位起,即最低位为第 0 位)为 1,则表明该玩家的军队中包含第 j 种类型的士兵。
费多尔是该游戏的第 (m+1) 名玩家。他认为:若两名玩家的军队在至多 k 种士兵类型上存在差异(即对应数字的二进制表示至多有 k 个比特位不同),则这两名玩家可以成为朋友。请帮助费多尔计算他能与多少名玩家成为朋友。
输入格式
The first line contains three integers n, m, k (1 ≤ k ≤ n ≤ 20; 1 ≤ m ≤ 1000).
The i-th of the next (m + 1) lines contains a single integer x__i (1 ≤ x__i ≤ 2_n_ - 1), that describes the i-th player's army. We remind you that Fedor is the (m + 1)-th player.
第一行包含三个整数 n、m、k(1 ≤ k ≤ n ≤ 20;1 ≤ m ≤ 1000)。
接下来的 m+1 行中,第 i 行包含一个整数 xi(1 ≤ xi ≤ 2n − 1),用于描述第 i 位玩家的军队。我们提醒您:费多尔是第 m+1 位玩家。
输出格式
Print a single integer — the number of Fedor's potential friends.
输出一个整数——费多尔潜在朋友的数量。
输入输出样例
输入#1
7 3 1 8 5 111 17
输出#1
0
输入#2
3 3 3 1 2 3 4
输出#2
3
输入解题思路,AI测评打分。不知道怎么写?