C. Spell Checker
思路:这个题wa到自闭,不过还好最后做出来了,就暴力枚举一下字典中的每一个单词,注意一下,置换这个操作就行,举个例子 thu 和 tuh是置换 thu 和tug不是置换
code;
#include<iostream>
#include<algorithm>
#include<cstring>using namespace std;const int N=110;
string s[N];
int main()
{int d,n;cin>>d;for(int i=0;i<d;i++){cin>>s[i];}string str;cin>>n;while(n--){cin>>str;bool flag1=0,flag2=0;for(int i=0;i<d;i++){if(str==s[i]){cout<<str<<endl;cout<<"CORRECT"<<endl;puts("");flag1=1;break;}}if(flag1) continue;
// cout<<"***"<<endl;cout<<str<<endl;for(int i=0;i<d;i++){int cnt=0;int a[20];int num=0;if(s[i].size()==(str.size()+1)){for(int j=0,k=0;j<s[i].size()&&k<str.size();){ if(s[i][j]==str[k]) j++,k++;else{j++;num++; }}if(num<=1){flag2=1;cout<<"ONE LETTER OMITTED FROM "<<s[i]<<endl;}}else if((s[i].size()+1)==str.size()){for(int j=0,k=0;j<s[i].size()&&k<str.size();){ if(s[i][j]==str[k]) j++,k++;else{k++;num++; }}if(num<=1){cout<<"ONE LETTER ADDED TO "<<s[i]<<endl;flag2=1;}}else if(s[i].size()==str.size()){for(int j=0;j<s[i].size();j++){if(s[i][j]!=str[j]) {num++;a[cnt++]=j; }}if(num==1){cout<<"ONE LETTER DIFFERENT FROM "<<s[i]<<endl;flag2=1;}else if(num==2&&a[1]-a[0]==1&&s[i][a[0]]==str[a[1]]&&s[i][a[1]]==str[a[0]]){//注意置换的条件 cout<< "TWO LETTERS TRANSPOSED IN "<<s[i]<<endl;flag2=1; }}}if(flag2) cout<<endl;if(!flag1&&!flag2){cout<<"UNKNOWN"<<endl;cout<<endl;}}return 0;
}
C. Spell Checker相关推荐
- android studio spellchecker,Exclude files from Android Studio lint spell checker
问题 The Android Studio lint spell checker flags hex codes that look to it like words in certain files ...
- 论文阅读-FASPell: A Fast, Adaptable, Simple, Powerful Chinese Spell Checker Based
来源:爱奇艺 EMNLP2019 Workshop 论文:https://aclanthology.org/D19-5522.pdf 代码:GitHub - iqiyi/FASPell: 2019-S ...
- vscode php代码检测,VSCODE代码拼写检查插件Code Spell Checker
Code Spell Checker是一款VSCODE代码拼写检查插件,可以为开发者报告一些常见的拼写错误.这个拼写检查程序的目标是帮助捕获常见的拼写错误,同时保持低误报的数量.它很适合驼峰式代码. ...
- POJ 1035, Spell checker
brutal force 1. 生成字典, 并按长度排序. 2. 对于给定单词, 取得区间 [单词长度 - 1, 单词长度 + 1], 并匹配. 3. 如果存在完全匹配的单词, 打印输出, 否则把可能 ...
- POJ-1035 Spell checker 暴力
直接暴力. 代码如下: #include <cstring> #include <cstdio> #include <cstdlib> #include <m ...
- poj 1035 Spell checker(hash)
题目链接:http://poj.org/problem?id=1035 思路分析: 1.使用哈希表存储字典 2.对待查找的word在字典中查找,查找成功输出查找成功信息 3.若查找不成功,对word增 ...
- POJ 2341 Spell checker 笔记
找出句首单词首字母小写和大写字母不是单词的第一个字母的错误.
- 【论文阅读】ReaLiSe:Read, Listen, and See: Leveraging Multimodal Information Helps Chinese Spell Checking
文章目录 本篇论文所需基础 论文内容 摘要(Abstract) 1. 介绍(Introduction)(略) 2. 相关工作 3. 模型部分(The REALISE Model) 3.1 语义编码器( ...
- 字符串编辑距离(Edit Distance)
一.问题描述 定义 字符串编辑距离(Edit Distance),是俄罗斯科学家 Vladimir Levenshtein 在 1965 年提出的概念,又称 Levenshtein 距离,是指两个字符 ...
- 直接上手!不容错过的Visual Studio Code十大扩展组件
作者 | David Neal 译者 | 谭开朗,责编 | 屠敏 转载自CSDN(ID:CSDNnews) 各大平台与各种语言的开发人员都在使用Visual Studio Code,我对此感到惊讶.S ...
最新文章
- 【精华】【经典】自动化循环操作方法当前网页方法,可以用于本地化AI智能自动抓取网页资源信息,类似爬虫功能
- Yii2.0 RESTful API 之版本控制
- 一个流畅的iOS图表框架PNChart
- Weblogic 集群部署说明 --转
- JS代码的window.location属性详解
- Android杂谈--通过DDMS实现电脑与Android设备(如手机,平板)的网络连接、截图...
- python数据包的作用_使用Python将登录数据包发送到Minecraft服务器不起作用
- matlab安装MinGW-64代码C/C++编译器的方法
- 修改驱动器重定向显示格式
- EXCHANGE指定要使用的域控制器、GC
- android测试工具Demo,Android 测试工具,实时抓被测app crash实现思路
- 第三章 高级请求-应答模式
- 语音通计算机怎么安装方法,win7系统语音包安装图文教程
- 国产服务器虚拟化产品,国内主流虚拟化厂商之间比较.doc
- 和刘备相关的人(八 )
- 10.3国庆作业(UART实验)
- 小文本——Cookies
- 拉格朗日乘数求极值方法
- springdata数据源的配置
- Stata:外部命令的搜索、安装与使用
热门文章
- XP连接网络计算机未启动服务,网络不存在或尚未启动/以及局域网互访的解决办法...
- VMware网络设置详解 打造超级虚拟网络
- Ubuntu下搭建android开发环境
- ubuntu 18.04 review board安装及svn设置pre-commit 和post-cmmit
- ember使用第三方类库_如何使用Ember Media Manager整理您的媒体收藏
- java中jpg转png_java 图片格式转换(pngjpg) 截图
- 怎么用spss做冗余分析_利用SPSS进行相关分析(第八章)概述.ppt
- 数据库名、实例名、数据库域名、全局数据库名、服务名 ,
- 远程登陆速达E3PRO服务器出现share violation错误的解决方法.
- 2012年7月份第2周51Aspx源码发布详情