利用freopen读入

再用keybd_event函数模拟键盘敲击

(光标在倒计时结束前要放到需要输入的部分)

  1. #include<bits/stdc++.h>
  2. #include<windows.h>
  3. using namespace std;
  4. int tot=0;
  5. void an(int a)
  6. {
  7. keybd_event(a,0,0,0);
  8. keybd_event(a,0,KEYEVENTF_KEYUP,0);
  9. }
  10. void dx1()
  11. {
  12. keybd_event(16,0,0,0);
  13. }
  14. void dx2()
  15. {
  16. keybd_event(16,0,KEYEVENTF_KEYUP,0);
  17. }
  18. bool f=1;
  19. int main()
  20. {
  21. freopen("b.in","r",stdin);
  22. char t;
  23. for(int i=5;i>=0;i--)
  24. {
  25. cout<<i<<endl;
  26. Sleep(1000);
  27. }
  28. while(1)
  29. {
  30. keybd_event(46,0,0,0);
  31. keybd_event(46,0,KEYEVENTF_KEYUP,0);
  32. system("cls");
  33. t=getchar();
  34. if(t==10)
  35. {
  36. an(13);
  37. for(int i=1;i<=300;i++)
  38. {
  39. keybd_event(46,0,0,0);
  40. keybd_event(46,0,KEYEVENTF_KEYUP,0);
  41. }
  42. f=0;
  43. continue;
  44. }
  45. else if(t==' '&&f==1)
  46. {
  47. an(32);
  48. f=0;
  49. continue;
  50. }
  51. f=1;
  52. if(t>='a'&&t<='z')
  53. an(int(t)-32);
  54. else if(t>='A'&&t<='Z')
  55. {
  56. dx1();
  57. an(int(t));
  58. dx2();
  59. }
  60. else if(t>='0'&&t<='9')
  61. an(int(t));
  62. else if(t=='~'||t=='!'||t=='@'||t=='#'||t=='$'||t=='%'||t=='^'||t=='&'||t=='*'||t=='('||t==')'||t=='_'||t=='+'||t=='{'||t=='}'||t=='|'||t==':'||t=='"'||t=='?'||t=='<'||t=='>')
  63. {
  64. dx1();
  65. if(t=='~')
  66. an(192);
  67. else if(t=='!')
  68. an(49);
  69. else if(t=='@')
  70. an(50);
  71. else if(t=='#')
  72. an(51);
  73. else if(t=='$')
  74. an(52);
  75. else if(t=='%')
  76. an(53);
  77. else if(t=='^')
  78. an(54);
  79. else if(t=='&')
  80. an(55);
  81. else if(t=='*')
  82. an(56);
  83. else if(t=='(')//****************************
  84. {
  85. an(57);
  86. an(46);
  87. }
  88. else if(t==')')
  89. an(48);
  90. else if(t=='_')
  91. an(189);
  92. else if(t=='+')
  93. an(187);
  94. else if(t=='{')
  95. an(219);
  96. else if(t=='}')
  97. an(221);
  98. else if(t=='|')
  99. an(220);
  100. else if(t==':')
  101. an(186);
  102. else if(t=='"')//***********
  103. {
  104. an(222);
  105. an(46);
  106. }
  107. else if(t=='?')
  108. an(191);
  109. else if(t=='<')
  110. {
  111. an(188);
  112. an(46);
  113. }
  114. else if(t=='>')
  115. {
  116. an(190);
  117. }
  118. dx2();
  119. }
  120. else
  121. {
  122. if(t=='`')
  123. an(192);
  124. else if(t=='-')
  125. an(189);
  126. else if(t=='=')
  127. an(187);
  128. else if(t=='[')//************
  129. {
  130. an(219);
  131. an(46);
  132. }
  133. else if(t==']')
  134. an(221);
  135. else if(t=='\\')
  136. an(220);
  137. else if(t==';')
  138. an(186);
  139. else if(t=='\'')//************
  140. {
  141. an(222);
  142. an(46);
  143. }
  144. else if(t=='/')
  145. an(191);
  146. else if(t==',')
  147. {
  148. an(188);
  149. }
  150. else if(t=='.')
  151. {
  152. an(190);
  153. }
  154. }
  155. }
  156. }

代码自动机(攻 ACwing 限时题)的更多相关文章

  1. Windows Socket五种I/O模型——代码全攻略(转)

    Winsock 的I/O操作: 1. 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序.套接字 默认为阻塞模式.可以通过多线程技术进行处理. 非阻塞模式:执行I/O操 ...

  2. 【Python challenge】通关代码及攻略(0-11)

    前言: 最近找到一个有关python的游戏闯关,这是游戏中的思考及通关攻略 最开始位于:http://www.pythonchallenge.com/pc/def/0.html 第0关 题目分析 提示 ...

  3. BZOJ 3252: 攻略(思路题)

    传送门 解题思路 比较好想的一道思路题,结果有个地方没开\(long\) \(long\) \(wa\)了三次..其实就是模仿一下树链剖分,重新定义重儿子,一个点的重儿子为所有儿子中到叶节点权值最大的 ...

  4. WebShell代码分析溯源(第1题)

    <?php $POST['POST']='assert';$array[]=$POST;$array[0]['POST']($_POST['assert']);?> assert,是php ...

  5. WebShell代码分析溯源(第1题)墨者学院

    一.访问链接 二.下载系统源码后直接放到D盾里扫描,扫到后门文件 三.查看该木马文件 <?php error_reporting(0); $_GET['POST']($_POST['GET']) ...

  6. 墨者学院靶场之PHP代码分析溯源(第1题)

    申请靶场环境后 点开题目 一段奇怪的PHP代码 因为我自己电脑重装了win10系统,php+apache+mysql的环境本地主机觉得没必要弄了,于是我们用在线的PHP编码(百度一下到处都是) 复制进 ...

  7. acwing刷题-放养又没有完全放养

    题目 一个鲜为人知的事实是,奶牛拥有自己的文字:「牛文」. 牛文由 26 个字母 a 到 z 组成,但是当奶牛说牛文时,可能与我们所熟悉的 abcdefghijklmnopqrstuvwxyz 不同, ...

  8. acwing刷题--激光炸弹--前缀和(后期会有优化做法)

    地图上有 N 个目标,用整数 Xi,Yi 表示目标在地图上的位置,每个目标都有一个价值 Wi. 注意:不同目标可能在同一位置. 现在有一种新型的激光炸弹,可以摧毁一个包含 R×R 个位置的正方形内的所 ...

  9. 2-java-写代码技巧和交题注意点

    用java交题要严格按照规定写代码: 比如蓝桥杯就是: 1.不能有包名: 2.Class的名字必须是 Main; 代码补全建议: 1.main函数的头可以建立class时候直接勾选,也可以: 只输入 ...

随机推荐

  1. MYSQL结构修改

    mysql改表结构主要是5大操作 ADD 添加字段 MODIFY 修改字段类型 CHANGE 修改字段名(也可以修改字段名) DROP 删除字段 RENAME 修改表名 ADD添加新字段:(新字段默认 ...

  2. NOIP模拟 35

    int乘爆见祖宗 难得地T3暴力打满 T1T2思路也都正确 然而T2没看出一个int乘爆直接滚粗.. 这谁抗的住啊... 跟天皇说我差点就rank1了 换来的只有一张奸笑的大脸和一堆垃圾的嘲讽 真巨啊 ...

  3. 命运Ⅰ&命运Ⅱ

    upd:为啥下面的相关博文都是各种退役记(这TM怎么就相关了) 竟然被卡线了,16名,我这几次考试也是炸到了一定境界了... 前三次模拟总榜rk1,第一次分机房rk4,第二次分机房rk11,第三次分机 ...

  4. STL&&用法集合

    .....STL是c++里很强势很好用的一系列容器(函数)之类的,之前一直不太会用,所以总是暴毙....想着快比赛了,是时候理一下这些东西了. -1.pair 存放两个基本元素的东西 定义方法: pa ...

  5. Python基本数据结构之文件操作

    用word操作一个文件的流程如下: 1.找到文件,双击打开 2.读或修改 3.保存&关闭 用python操作文件也差不多: f=open(filename) # 打开文件 f.write(&q ...

  6. javascript JSMpeg.js 播放视频解决不用全屏也能播放(也支持自动播放哦)

    javascript JSMpeg.js 播放视频解决不用全屏也能播放(也支持自动播放哦) 缺陷就是 因为采用的是 MPEG1解码器 所以清晰度有点低 做直播可以考虑下 如果要清晰度高点 可以采取序列 ...

  7. php pdo mysql存入转义

    php pdo mysql存入转义 因为存入html都是自动转义 相当于PHP的htmlspecialchars 所以读取的时候要加htmlspecialchars_decode

  8. Git如何fork别人的仓库并作为贡献者提交代码

    例如 要fork一份google的MLperf/inference代码,下面介绍具体做法:预备知识git里的参考有几种表示,分别是上游仓库,远程仓库和本地仓库,逻辑关系如下拉取代码的顺序:别的大牛的代 ...

  9. ES6学习笔记01 -- 暂时性死区 ( temporal dead zone )

    参考文档: let 和 const 命令 - ECMAScript6入门  暂时性死区(temporal dead zone) 理解ES6中的TDZ(暂时性死区) ES6 中 let 暂时性死区详解 ...

  10. PowerMock学习(一)之PoweMock的入门--模拟新增学生操作

    关于powermock 在TDD领域Mock框架有很多,比如EasyMock,JMock,Mockito.可能有些同学会好奇了,为什么要重点把powermock拿出来呢,因为powermock可以解决 ...