bnu 4352 XsugarX的疯狂按键识别(暴力模拟)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=4352
【题意】:给你个长串,输出该长串中能第一放出的技能,每个技能有对应的一个小子串,不能放出任何技能输出“Nothing Happened”
【题解】:暴力匹配(数据量不大),若数据量巨大,则得用ac自动机解
【code】:
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm> using namespace std;
#define INF 1e9 struct Nod
{
char str1[];
char str2[];
}node[]; int findPos(char *str,int len,int p)
{
int i,j;
int len1 = strlen(node[p].str1);
for(i=,j=;i<len;i++)
{
while(node[p].str1[j]==str[i])
{
j++;
i++;
if(j==len1) return i-j;
if(i>=len) break;
}
i=i-j;
j=;
}
return INF;
} int main()
{
int t;
scanf("%d",&t);
while(t--)
{
char names[];
scanf("%s",names);
int n;
scanf("%d",&n);
int i;
for(i=;i<n;i++)
{
scanf("%s %s",node[i].str1,node[i].str2);
}
char str[];
scanf("%s",str);
int len = strlen(str);
int minPos=INF,pos;
for(i=;i<n;i++)
{
int temp = findPos(str,len,i);
if(minPos>temp)
{
minPos=temp;
pos = i;
}
}
puts(names);
if(minPos==INF)
{
puts("Nothing Happened");
}
else
{
puts(node[pos].str2);
}
putchar();
}
return ;
}
bnu 4352 XsugarX的疯狂按键识别(暴力模拟)的更多相关文章
- stm32按键识别
刚写了一个关于stm32单片机的按键识别的程序.目的,同时识别多个按键,并且不浪费cpu的时间. 关于去抖动,以前以为是在按键的时候,手会抖动.通过程序验证,这个确实是误解.这个应该是防止意外干扰.以 ...
- M4—按键识别
三.KEY 3.1 初始化 1.相应端口时钟使能 2.配置GPIO为输入模式 3.根据实际电路图 配置浮空输入,不用上下拉 3.2 按键识别 (1)一般按键步骤(延时消抖) 1. 判断相关的管脚是 ...
- 【audio】耳机插拔 线控按键识别流程【转】
耳机插拔/线控按键识别流程 耳机插拔/线控按键识别流程 1.文档概述 本文以msm8909平台,android N为例,介绍了通用情况下,耳机插拔的流程步骤,以及对耳机类型的识别逻辑.以方便在项目工作 ...
- STM8S---外部中断应用之长按键识别
STM8经常使用中断指令 开总中断 _asm("rim"); 禁止中断 _asm("sim"); 进入停机模式 _asm("halt"); ...
- bnuoj 20832 Calculating Yuan Fen(暴力模拟)
http://www.bnuoj.com/bnuoj/problem_show.php?pid=20832 [题意]: 给你一串字符串,求一个ST(0<ST<=10000),对字符串中字符 ...
- POJ 1013 小水题 暴力模拟
Counterfeit Dollar Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 35774 Accepted: 11 ...
- hdu_1006 Tick and Tick(暴力模拟)
hdu1006 标签(空格分隔): 暴力枚举 好久没有打题了,退队了有好几个月了,从心底不依赖那个人了,原来以为的爱情戏原来都只是我的独角戏.之前的我有时候好希望有个人出现,告诉自己去哪里,做什么,哪 ...
- hihoCoder #1871 : Heshen's Account Book-字符串暴力模拟 自闭(getline()函数) (ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction B) 2018 ICPC 北京区域赛现场赛B
P2 : Heshen's Account Book Time Limit:1000ms Case Time Limit:1000ms Memory Limit:512MB Description H ...
- 美团2018年CodeM大赛-资格赛 分数 暴力模拟
链接:https://www.nowcoder.com/acm/contest/138/D来源:牛客网 小胖参加了人生中最重要的比赛——MedoC资格赛.MedoC的资格赛由m轮构成,使用常见的“加权 ...
随机推荐
- 通过Bresenham算法实现完成矢量线性多边形向栅格数据的转化
1.实验目的与要求 目的:通过本次实验,完成矢量线性多边形向栅格数据的转化过程: 要求:采用VC++6.0实现. 2.实验方法 采用Bresenham算法实现 3.实验材料 直线的定义:y = x/3 ...
- (转)linuxmint,ubuntu 下修改guake宽度方法
之前在网上找到修改guake.py的方式,但是我一直没能找到guake.py的文件,弄的我纠结,后来找到这个文章,这个确实是有效果的 Ubuntu12.04上Guake在唤出的时候滚动条会消失,主要原 ...
- Spring(3.2.3) - Beans(2): 属性注入 & 构造注入
依赖注入是指程序运行过程中们如果需要另外的对象协作(访问它的属性或调用它的方法)时,无须在代码中创建被调用者,而是依赖于外部容器的注入. 属性注入(Setter Injection) 属性注入是指 I ...
- Lombok(1.14.8) - @Cleanup
@Cleanup @Cleanup,关闭流.如果最后清理资源的方法不是 close(),可以指定,例如 @Cleanup("clean"). package com.huey.lo ...
- 【网络收集】MySql中IS NOT NULL与!=NULL的区别
在mysql中,筛选非空的时候经常会用到is not null和!=null,这两种方法单从字面上来看感觉是差不多的,其实如果去运行一下试试的话差别会很大!为什么会出现这种情况呢?null 表示什么也 ...
- Access和Sql区别
假设表game有一字段为gameYuiJian为bit字段(SQL SERVER 20005)和"是/否"字段(ACCSS数据库),在编写脚本文件时,如下才能正确执行 SQL st ...
- 北大ACM(POJ1005-I Think I Need a Houseboat)
Question:http://poj.org/problem?id=1005问题点:计算半圆面积及向上取整. Memory: 256K Time: 0MS Language: C++ Result: ...
- Objective-C访问SQLite
数据库的相关知识我就不去说明了,毕竟只要会sql语言的人就大家都一样. 本案例是在Xcode7.2环境下创建的single view application进行演示操作. 首先第一点,为什么要使用sq ...
- Sublime Text 3下 Emmet 使用小技巧
Emmet常用技巧:(输入下面简写,按Tab键可触发效果) 生成 HTML 文档初始结构 html:5 或者 ! 生成 HTML5 结构 ...
- UITableView的编辑模式
UITableView可以分普通模式和Editing模式两种,这里我们着重讨论Editing模式,Editing模式中又分三种操作:Insert.Delete. Reallocted.Insert和D ...