代码自动机(攻 ACwing 限时题)
利用freopen读入
再用keybd_event函数模拟键盘敲击
(光标在倒计时结束前要放到需要输入的部分)
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int tot=0;
void an(int a)
{
keybd_event(a,0,0,0);
keybd_event(a,0,KEYEVENTF_KEYUP,0);
}
void dx1()
{
keybd_event(16,0,0,0);
}
void dx2()
{
keybd_event(16,0,KEYEVENTF_KEYUP,0);
}
bool f=1;
int main()
{
freopen("b.in","r",stdin);
char t;
for(int i=5;i>=0;i--)
{
cout<<i<<endl;
Sleep(1000);
}
while(1)
{
keybd_event(46,0,0,0);
keybd_event(46,0,KEYEVENTF_KEYUP,0);
system("cls");
t=getchar();
if(t==10)
{
an(13);
for(int i=1;i<=300;i++)
{
keybd_event(46,0,0,0);
keybd_event(46,0,KEYEVENTF_KEYUP,0);
}
f=0;
continue;
}
else if(t==' '&&f==1)
{
an(32);
f=0;
continue;
}
f=1;
if(t>='a'&&t<='z')
an(int(t)-32);
else if(t>='A'&&t<='Z')
{
dx1();
an(int(t));
dx2();
}
else if(t>='0'&&t<='9')
an(int(t));
else if(t=='~'||t=='!'||t=='@'||t=='#'||t=='$'||t=='%'||t=='^'||t=='&'||t=='*'||t=='('||t==')'||t=='_'||t=='+'||t=='{'||t=='}'||t=='|'||t==':'||t=='"'||t=='?'||t=='<'||t=='>')
{
dx1();
if(t=='~')
an(192);
else if(t=='!')
an(49);
else if(t=='@')
an(50);
else if(t=='#')
an(51);
else if(t=='$')
an(52);
else if(t=='%')
an(53);
else if(t=='^')
an(54);
else if(t=='&')
an(55);
else if(t=='*')
an(56);
else if(t=='(')//****************************
{
an(57);
an(46);
}
else if(t==')')
an(48);
else if(t=='_')
an(189);
else if(t=='+')
an(187);
else if(t=='{')
an(219);
else if(t=='}')
an(221);
else if(t=='|')
an(220);
else if(t==':')
an(186);
else if(t=='"')//***********
{
an(222);
an(46);
}
else if(t=='?')
an(191);
else if(t=='<')
{
an(188);
an(46);
}
else if(t=='>')
{
an(190);
}
dx2();
}
else
{
if(t=='`')
an(192);
else if(t=='-')
an(189);
else if(t=='=')
an(187);
else if(t=='[')//************
{
an(219);
an(46);
}
else if(t==']')
an(221);
else if(t=='\\')
an(220);
else if(t==';')
an(186);
else if(t=='\'')//************
{
an(222);
an(46);
}
else if(t=='/')
an(191);
else if(t==',')
{
an(188);
}
else if(t=='.')
{
an(190);
}
}
}
}
代码自动机(攻 ACwing 限时题)的更多相关文章
- Windows Socket五种I/O模型——代码全攻略(转)
Winsock 的I/O操作: 1. 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序.套接字 默认为阻塞模式.可以通过多线程技术进行处理. 非阻塞模式:执行I/O操 ...
- 【Python challenge】通关代码及攻略(0-11)
前言: 最近找到一个有关python的游戏闯关,这是游戏中的思考及通关攻略 最开始位于:http://www.pythonchallenge.com/pc/def/0.html 第0关 题目分析 提示 ...
- BZOJ 3252: 攻略(思路题)
传送门 解题思路 比较好想的一道思路题,结果有个地方没开\(long\) \(long\) \(wa\)了三次..其实就是模仿一下树链剖分,重新定义重儿子,一个点的重儿子为所有儿子中到叶节点权值最大的 ...
- WebShell代码分析溯源(第1题)
<?php $POST['POST']='assert';$array[]=$POST;$array[0]['POST']($_POST['assert']);?> assert,是php ...
- WebShell代码分析溯源(第1题)墨者学院
一.访问链接 二.下载系统源码后直接放到D盾里扫描,扫到后门文件 三.查看该木马文件 <?php error_reporting(0); $_GET['POST']($_POST['GET']) ...
- 墨者学院靶场之PHP代码分析溯源(第1题)
申请靶场环境后 点开题目 一段奇怪的PHP代码 因为我自己电脑重装了win10系统,php+apache+mysql的环境本地主机觉得没必要弄了,于是我们用在线的PHP编码(百度一下到处都是) 复制进 ...
- acwing刷题-放养又没有完全放养
题目 一个鲜为人知的事实是,奶牛拥有自己的文字:「牛文」. 牛文由 26 个字母 a 到 z 组成,但是当奶牛说牛文时,可能与我们所熟悉的 abcdefghijklmnopqrstuvwxyz 不同, ...
- acwing刷题--激光炸弹--前缀和(后期会有优化做法)
地图上有 N 个目标,用整数 Xi,Yi 表示目标在地图上的位置,每个目标都有一个价值 Wi. 注意:不同目标可能在同一位置. 现在有一种新型的激光炸弹,可以摧毁一个包含 R×R 个位置的正方形内的所 ...
- 2-java-写代码技巧和交题注意点
用java交题要严格按照规定写代码: 比如蓝桥杯就是: 1.不能有包名: 2.Class的名字必须是 Main; 代码补全建议: 1.main函数的头可以建立class时候直接勾选,也可以: 只输入 ...
随机推荐
- Django学习day2——Django安装与环境配置
安装 Django 文章中python版本为3.65 这里以windows7为例,在pip目录下运行pip install Django就能安装django最新版本(本文为django2.2版本) 也 ...
- Android Drawable 简析
Drawable 是开发中经常用到的一个概念,我们经常用它去设置 View 的背景,背景可以一个颜色值,也可以是一张资源图片,还可以是一个自定义的 Drawable等等.这篇文章就简单说下 Drawa ...
- Redis中的键值过期操作
1.过期设置 Redis 中设置过期时间主要通过以下四种方式: expire key seconds:设置 key 在 n 秒后过期: pexpire key milliseconds:设置 key ...
- TensorFlow2.0(10):加载自定义图片数据集到Dataset
.caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...
- 深入理解计算机系统 第八章 异常控制流 Part1 第二遍
第二遍读这本书,每周花两到三小时时间,能读多少读多少(这次看了第 500~507 页,共 8 页) 第一遍对应笔记链接 https://www.cnblogs.com/stone94/p/101651 ...
- linux redhat系列后缀为el5,el6,el7软件包的区别
- EL6软件包用于在Red Hat 6.x, CentOS 6.x, and CloudLinux 6.x进行安装 - EL5软件包用于在Red Hat 5.x, CentOS 5.x, Cloud ...
- 《Java多线程面试题》系列-创建线程的三种方法及其区别
1. 创建线程的三种方法及其区别 1.1 继承Thread类 首先,定义Thread类的子类并重写run()方法: package com.zwwhnly.springbootaction.javab ...
- (二十六)golang--切片
基本介绍: 切片是数组的引用: 切片的使用和数组类似: 切片的长度是可以变化的: 切片的定义 var a []int,注意和数组定义的区别: 切片不仅可以使用len函数,还有cap函数来计算切片的容量 ...
- c#控制台玩飞行棋游戏
using System; namespace Game{ class Program { //用静态字段模拟全局变量 public static int[] Maps = new int[100]; ...
- java实现两个json的深度对比
两个json的深度对比 在网上找了好多资料都没有找到想要的,还是自己写个吧! 上代码!!! 1.pom.xml中加入 <dependency> <groupId>com.ali ...