CF256D.Liars and Serge
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有 n 个人坐在桌子旁成一排。我们知道每个人要么总是说真话,要么总是说谎。
小 Serge 问了他们一个问题:你们当中有多少人总是说真话?每个人都清楚所有人的身份(诚实或说谎者)。诚实的人会说出正确答案,说谎者会说 1 到 n 之间的任意一个不是正确答案的整数。每个说谎者独立选择自己的答案,因此两个不同的说谎者可能会给出不同的答案。
Serge 除了他们对这个问题的回答外,对这些人一无所知。他拿出一张纸,记下了 n 个整数 a1,a2,...,an,其中 ai 是第 i 个人的回答。已知 Serge 发现,正好有 k 个人是说谎者。
Serge 想知道,有多少种 n 个长度的答案序列(即 a 序列),能得出正好有 k 个人是说谎者。由于这种答案序列可能非常多,请输出答案对 777777777 取余的结果。
输入格式
第一行包含两个整数 n,k,(1≤k≤n≤28)。保证 n 是 2 的幂。
输出格式
输出一个整数,表示满足条件的答案序列种数,对 777777777 取余。
输入输出样例
输入#1
1 1
输出#1
0
输入#2
2 1
输出#2
2
说明/提示
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?