poj1035Spell checker
暴力解决。
先把字典里的每一个单词的长度存起来。在查找的时候。就比較长度,在多一个少一个之间找,
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<stdlib.h>
#include<algorithm>
#include<queue>
using namespace std;
char s[10005][20];
char h[20];
int w[10005],len;
int show(int a)
{
int i,t,k;
int bu=0;
t=w[a]-len;
if(t>1)
return 1;
if(t==0)
{
for(i=0;i<w[a];i++)
{
if(h[i]!=s[a][i])
{bu++;}
}
if(bu==1)
return 0;
}
else
{
if(t==1)
{
for(i=0,k=0;i<w[a];)
{
if(h[k]!=s[a][i])
{bu++;i++;}
else
{
i++;k++;
}
}
if(bu==1)
return 0;
}
else
if(t==-1)
{
for(i=0,k=0;k<len;)
{
if(h[k]!=s[a][i])
{bu++;k++;}
else
{
i++;k++;
}
}
}
if(bu==1)
return 0;
}
return 1;
}
int main()
{
int i=0;
while(scanf("%s",&s[i]))
{
if(s[i][0]=='#')
break;
w[i]=strlen(s[i]);
i++;
}
i--;
int j;
while(scanf("%s",h))
{
if(h[0]=='#')
break;
printf("%s",h);
len=strlen(h);
// printf("%d ,%s",i,s[0]);
for(j=0;j<=i;j++)
{
if(w[j]==len&&strcmp(s[j],h)==0)
{printf(" is correct\n");
break;}
}
if(j>i)
{
printf(":");
for(j=0;j<=i;j++)
if(show(j)==0) printf(" %s",s[j]);
printf("\n");
}
}
return 0;
}
poj1035Spell checker的更多相关文章
- XPath Checker和Firebug安装与使用
一.XPath Checker和Firebug简介 XPath Checker和Firebug是写爬虫过程中提取数据的非常有用的插件工具,直接打开火狐浏览器的菜单就可以下载 二.XPath Check ...
- firefox安装firebug\XPath Checker
XPath Checker安装,打开下面地址安装: https://addons.mozilla.org/en-US/firefox/addon/xpath-checker/ 安装XPath Chec ...
- hihocoder #1341 Constraint Checker
传送门 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Given a set of constraints like 0<N<=M<=100 and ...
- Spell checker
Spell checker Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u Subm ...
- EBS Technology Codelevel Checker (ETCC)
ETCC提供了两个脚本,用来帮助用户检测 E-Business Suite Release 12.2数据库和中间层是否安装了必须的补丁.官方强烈推荐使用. 1.checkDBpatch.sh 这个脚本 ...
- poj 1035 Spell checker
Spell checker Time Limit: 2000 MS Memory Limit: 65536 KB 64-bit integer IO format: %I64d , %I64u J ...
- [USACO 1.5.4]checker(水题重做——位运算(lowbit的应用))
描述 检查一个如下的6 x 6的跳棋棋盘,有六个棋子被放置在棋盘上,使得每行.每列有且只有一个,每条对角线(包括两条主对角线的所有平行线)上至多有一个棋子. 0 1 2 3 4 5 6 ------- ...
- Spell checker(暴力)
Spell checker Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 20188 Accepted: 7404 De ...
- 【USACO】checker
一看题目 经典的8皇后问题 不过是皇后数量可变而已 不用想 回溯法. 需要个生成每次可选择序列的函数, 在存储可选择的序列时按照先大后小的顺序排的.这样每次找最小和去掉最小都很方便,只要有个记录数量的 ...
随机推荐
- Android布局文件经验
1.父控件中含有多个子控件时.往往遵循长子优先的原则,即长子假设非常大可能占满父空间.使次子们出局: 2.如果TableLayout有2行,当中一行未设定列间长度比例.而还有一行设定了,则未设定行可能 ...
- java 10000的阶乘
package test; import java.math.BigInteger; import java.util.ArrayList; import java.util.List; import ...
- actionbarsherlock示例
package com.example.viewpagerandtabdemo; import java.util.ArrayList; import java.util.List; import a ...
- Hashmap 详解和迭代器问题
重点介绍HashMap.首先介绍一下什么是Map.在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value.在下文中会 ...
- BZOJ 4262 线段树+期望
思路: 把询问离线下来,查询max和查询min相似,现在只考虑查询max 令sum[l,r,x]表示l到r内的数为左端点,x为右端点的区间询问的答案 那么询问就是sun[l1,r1,r2]-sum[l ...
- JsonResult
注意:如果有大量的json数据要处理,建议使用ASP .NET Web API框架处理,专门用来处理json数据交换并提供跨平台访问能力的 ConentType设置为application/json ...
- 08.十分钟学会JSP传统标签编程
一.认识标签 1,说明:传统标签编程在开发中基本用不到,学习标签编程主要还是为了完善知识体系. 2,标签的主要作用:移除或减少jsp中的java代码 3,标签的主要组成部分及运行原理 4,简单标签示例 ...
- Android开发笔记(7)——Intent启用应用软件
转载请注明:http://www.cnblogs.com/igoslly/p/6844154.html Intent启用应用软件 intent可以用来要求其他应用组件完成特定工作,如相机.电话.地图等 ...
- 完整安装sqlserver always on集群
准备工作 1. 四台已安装windows server 2008 r2 系统的虚拟机,配置如下: CPU : 1核 MEMORY : 2GB DISK : 40GB(未分区) NetAdapter ...
- 杭电1003 Max Sum TLE
这一题目是要求连续子序列的最大和,所以在看到题目的一瞬间就想到的是把所有情况列举出来,再两个两个的比较,取最大的(即为更新最大值的意思),这样的思路很简单,但是会超时,时间复杂度为O(n^3),因为有 ...