题意:你需要构造n个四项选择题。格式为:问在前i个问题中选了几个hi字母?

输出有最多正确答案的构造方案。

标程:

 #include<cstdio>
using namespace std;
typedef long long ll;
const int mod=;
int ksm(int x,int y)
{
int res=;
while (y) {if (y&) res=(ll)res*x%mod; x=(ll)x*x%mod; y>>=;}
return res;
}
int main()
{
int n;
scanf("%d",&n);
printf("%d\n",(ll)ksm(,n-)*%mod);
for (int i=;i<n;i++) puts("A 1 0 0 0");
puts("A 0 0 0 0");
return ;
}

题解:构造

大力猜结论

考虑怎样让答案之间的影响最小,不然到后面难以构造。

不管什么字母,第一局的答案一定是0。所以我们可以给第一局设一个错误答案,该选项一定不会被选。

第二局就询问这个选项被选了几次,答案也一定是0,于是再在同一位置设错误答案。以此类推。

最后一行不用顾忌下一行,四个都是0即可。

正确答案数有3^(n-1)*4.

最新文章

  1. 转!java基础笔记
  2. Android6.0之来电转接号码显示修改
  3. Silverlight OOB程序签名问题
  4. 本地与在线图片转Base64及图片预览
  5. 双人对战的球类游戏IOS源码
  6. rabbitMQ安装及部署
  7. JZ2440开发笔记(1)——arm-linux-gcc环境搭建
  8. Ubuntu16.04安装Anaconda2
  9. ie9上传后下载json
  10. 可在广域网部署运行的即时通讯系统 -- GGTalk总览(附源码下载)
  11. 配置AlwaysON出错
  12. 增加显示记录数的label及隐藏refresh按钮
  13. 第九周PSP&amp;进度条
  14. 第五章&#160;二叉树(a)树
  15. vb6 的关机代码
  16. MyBatis学习笔记(一)创建第一个MyBatis项目
  17. (转载)Linux进程间通信
  18. 读取Properties配置文件, 四种方式都可以得到webroot/WEB-INF/classes这个路径
  19. C# 反射(Reflection)
  20. ubuntu命令收集

热门文章

  1. iOS 点击Application icon加载推送通知Data
  2. Java Heap and Stack
  3. HDU6440 Dream 2018CCPC网络赛-费马小定理
  4. CApiHook__Api钩子类
  5. 在WinDBG中查看函数的反汇编代码的命令
  6. LightOJ-1282-Leading and Trailing-快速幂+数学
  7. solr +zookeeper+Jetty 集群搭建
  8. HduOJ 2162 - Primes
  9. ionic js ion-tabs选项卡栏操作
  10. K8S之集群搭建