单词

洛谷-P2292-L语言(字典树)

a 夏天 提交于 2019-11-30 17:02:08
链接: https://www.luogu.org/problem/P2292 题意: 标点符号的出现晚于文字的出现,所以以前的语言都是没有标点的。现在你要处理的就是一段没有标点的文章。 一段文章T是由若干小写字母构成。一个单词W也是由若干小写字母构成。一个字典D是若干个单词的集合。我们称一段文章T在某个字典D下是可以被理解的,是指如果文章T可以被分成若干部分,且每一个部分都是字典D中的单词。 例如字典D中包括单词{‘is’, ‘name’, ‘what’, ‘your’},则文章‘whatisyourname’是在字典D下可以被理解的,因为它可以分成4个单词:‘what’, ‘is’, ‘your’, ‘name’,且每个单词都属于字典D,而文章‘whatisyouname’在字典D下不能被理解,但可以在字典D’=D+{‘you’}下被理解。这段文章的一个前缀‘whatis’,也可以在字典D下被理解,而且是在字典D下能够被理解的最长的前缀。 给定一个字典D,你的程序需要判断若干段文章在字典D下是否能够被理解。并给出其在字典D下能够被理解的最长前缀的位置。 思路: 建字典树, 对每个单词在句子上的结束做标记, 说明可以另开一次. 代码: #include <iostream> #include <cstdio> #include <cstring> #include <vector

cs224n NLP with dl笔记(一)

会有一股神秘感。 提交于 2019-11-30 12:04:47
Introduction and word vectors 预习部分 上完课回过头来需要问自己哪些问题? NLP中使用的核心方法有哪些,阐述对他们的理解。 语言是如何产生的,产生和理解过程中有哪些困难。 使用PyTorch搭建框架解决实际问题。 P11的换算是什么意思? 如何在电脑当中存储有用的含义? 一般的解决办法是使用WordNet,用来存储同义词集和相关词集。 这种方法的问题如下: 无法识别细微的差别,比如某个词语仅仅在某种情况下才是该词的同义词。 很难跟上语言更新的速度。 需要大量的人力去创造和调整。 不能度量词语之间相似的程度。 如何在电脑中表示words? 传统NLP当中使用one-hot vectors表示单词,但是这样无法表示相似的词语。 为了解决这个问题,提出 分布式语义 ,具体含义是一个单词的含义是由附近的单词所给出的。 P17的向量每个数字都表示什么?长度有什么含义吗? word2vec是什么? 是一个框架,输入大量的句子,输出单词的vector。 思路大概为遍历text,使用单词向量的相似度来计算已知context的情况下预测得到该单词的概率。不断调整单词向量使得概率最大。 P22的目标函数为什么是已知该单词预测context的概率乘积,难道不是反过来吗? 大概是用梯度下降法进行求解,但是细节部分还没看太仔细。 来源: https://blog.csdn

【机器翻译】BLEU学习

徘徊边缘 提交于 2019-11-30 05:53:11
BLEU学习 简介 BLEU(bilingual evaluation understudy),是一种翻译结果的评估方法,主要概念来自于这篇 Bleu: a method for automatic evaluation of matchin translatrion 论文,本文主要学习和总结该论文及相关材料。 1. 评估标准 BLEU的思想基于一个前提: 机器翻译的结果越接近专业人士的翻译,结果越好 。为了评估翻译质量,需要将翻译结果与一个或多个人工翻译结果的接近程度量化。因此,评估系统需要两个维度: “接近程度”的数字度量(closeness metric) 人工翻译的高质量语料 其中接近程度的计算参考了语音识别中的单词错误率(word error rate)的度量方法,不过需要针对两个方面在算法上做修改:1、评估可能基于多条参考语料。2、允许一定范围的单词或者词序不同。算法改进的主要思想是使用不同长度短语与参考语料的匹配情况的加权平均。让我们从最简单的度量方法开始。 2. 基准版的BLEU度量方法 给定一个句子,会存在多个很好的翻译。这些翻译或选词不同或词序不同,但是我们还是可以很容易的区分出好的和不好的翻译。如: candidate 1: It is a guide to action which ensures that the military always obeys

读英文文本文件并列出单词出现次数

﹥>﹥吖頭↗ 提交于 2019-11-29 22:44:23
import java.util.*; import java.util.regex.*; import java.io.*; public class UserTreeMap{ public static void main(String args[]) throws IOException{ BufferedReader buf=new BufferedReader(new FileReader("english.txt")); System.out.println("Read under this dir English.txt"); StringBuffer sbuf=new StringBuffer();//缓冲字符串 String line=null; while((line=buf.readLine())!=null){ sbuf.append(line);//追加到缓冲字符串中 } buf.close();//读取结束 Pattern expression=Pattern.compile("[a-zA-Z]+");//定义正则表达式匹配单词 String string1=sbuf.toString().toLowerCase();//转换成小写 Matcher matcher=expression.matcher(string1);定义string1的匹配器

标志符

这一生的挚爱 提交于 2019-11-29 22:29:02
标志符:用来给包,类,方法,变量等起名字的符号 组成规则:A:unicode字符——包括数字字符,英文大小写字母,汉字(不建议使用)      B:下划线_      C:美元符$ 注意事项:A:不能以数字开头      B:不能是java中的关键字 命名规则:A:见面知意      B:常见的命名       a:包,其实就是文件夹,对类进行管理,全部小写,多级包使用.隔开       b:类,大驼峰命名法,一个单词首字母大写,多个单词,每个单词首字母大写       c:方法和变量,小驼峰命名法,一个单词首字母小写,多个单词从第二单词开始每个单词的首字母大写 来源: https://www.cnblogs.com/dajingshao/p/11537962.html

TOJ4909:单词查找树

大城市里の小女人 提交于 2019-11-29 22:14:14
描述: 在进行文法分析的时候,通常需要检测一个单词是否在我们的单词列表里。为了提高查找和定位的速度,通常都要画出与单词列表所对应的单词查找树,其特点如下: 根节点不包含字母,除根节点外每一个节点都仅包含一个大写英文字母; 从根节点到某一节点,路径上经过的字母依次连起来所构成的字母序列,称为该节点对应的单词。单词列表中的每个词,都是该单词查找树某个节点所对应的单词; 在满足上述条件下,该单词查找树的节点数最少。 单词列表对应的单词查找树 对一个确定的单词列表,请统计对应的单词查找树的节点数(包括根节点) 输入 该文件为一个单词列表,每一行仅包含一个单词和一个换行/回车符。每个单词仅由大写的英文字符组成,长度不超过63个字符。文件总长度不超过32K,至少有一行数据。 输出 该文件中仅包含一个整数和一个换行/回车符。该整数为单词列表对应的单词查找树的节点数。 样例输入 A AN ASP AS ASC ASCII BAS BASIC 样例输出 13 解题思路: 水题,字典树 + bfs。先建立一个字典树,在进行广搜。 #include<bits/stdc++.h> using namespace std; typedef struct node { struct node *next[26]; int f; }node; node *root; char str[65]; void

20180912-3 词频统计

无人久伴 提交于 2019-11-29 22:05:38
此作业的要求参见[https://edu.cnblogs.com/campus/nenu/2019fall/homework/6583] 词频统计 SPEC 20180918 老五在寝室吹牛他熟读过《鲁滨逊漂流记》,在女生面前吹牛热爱《呼啸山庄》《简爱》和《飘》,在你面前说通读了《战争与和平》。但是,他的四级至今没过。你们几个私下商量,这几本大作的单词量怎么可能低于四级,大家听说你学习《构建之法》,一致推举你写个程序名字叫wf,统计英文作品的单词量并给出每个单词出现的次数,准备用于打脸老五。 希望实现以下效果。以下效果中数字纯属编造。 功能1 小文件输入。 为表明程序能跑,结果真实而不是迫害老五,请他亲自键 盘在控制台下输入命令。 功能1的思想:使用三个数组用于接收单词,存储单词和统计字数。根据字母的个数进行遍历。每记录一个单词要判断这个单词是否已经出现过,如果没有出现过就记录这个单词,如果出现过这个单词,单词的数量加1. gets(str2); t=strlen(str2)+1; while(j<t) { for(;str2[j]==32;j++); while(k<N&&str2[j]!=32) str1[i][k++]=str2[j++]; str1[i][k]='\0'; strC[i]=1; for(x=0;x<i;x++) if(strncmp(str1[i],str1

强制换行与强制不换行

泪湿孤枕 提交于 2019-11-29 20:58:15
强制换行与强制不换行用到的属性 我们一般控制换行所用到的CSS属性一共有三个:word-wrap; word-break; white-space。这三个属性可以说是专为了文字断行而创造出来的。首先我们得知道这三个属性到底是做什么用地: word-wrap语法: word-wrap: normal(默认) | break-word 各个浏览器均能识别 参数: normal: 允许内容顶开指定的容器边界。 break-word: 内容将在边界内换行。必要时会触发word-break(注意:请分辨清楚word-break和break-word这俩个是不同的东西,一为属性另为参数)。 说明: word-wrap是控制是否“为词断行”的,设置或检索当前行超过指定容器的边界时是否断开转行。中文没有任何问题,英文语句也没问题。但是对于长串的英文,就不起作用。 范例: congratulation这个单词属于长串英文,word-wrap:break-word整个单词看成一个整体,如果该行末端宽度不够显示整个单词,它会自动把整个单词放到下一行,而不会把单词截断,这就是对于长串文字不起作用的解释。word-wrap:normal是默认情况,英文单词不被拆开。 结论: 作用范围仅为div这类标准块级元素,th,td这类table元素虽然识别但是没有效果(如果为td,th加上宽度word

还在用背单词App?使用Python开发英语单词自测工具,助你逆袭单词王!

血红的双手。 提交于 2019-11-29 18:32:32
学英语广告 最近也许是刚开学的原因,不管是公众号,还是刷抖音,导出都能看到关于学英语、背单词的广告。 不知道现在学生们背单词买的什么辅导材料。反正我们上学那会,《星火阅读》特别的火。记得当时随书还送一个红色的塑料膜。书中英语单词是红色的其他文字是黑色的。背单词的时候先把塑料膜盖在书上,然后就只能看到翻译和音标,从而起到自测英语的作用。一页看完了取下塑料膜,再核对哪些单词记错了。就这么一个无脑的功能,当时的我们都觉得好犀利,谁 一本这样的背单词书,都不好意思出去装13啊! 今天,我们就使用Python来做一个英语单词自测工具! 需求分析 既然上面说了那么多的怀旧梗,那今天就仿照着从前的方式,做一个稍微高端一些的单词自测工具。 先来看看实现效果吧…程序输入你想测试的单词数量,然后系统自动生成html测试题,之后你就可以通过速记与查看来检测哪些单词你没记住喽… 找单词 背单词我们得先有单词吧?从百度找了一篇2019cet4英语单词表! 左图下载的word文档的内容包含各种广告,为了方便,我直接把它全部拷贝存在文本文档中,类似右图。 观察保存的文本内容,我们可以通过 斜杠’/‘ 生成测试题 我们准备好了试题,怎么生成测试题呢?之前学习excel读写的时候,写过一篇英语单词自测的文章: 先生成单词音标,然后用户输入翻译,最后再D列追加正确的翻译… 最近没怎么学习web端的知识

P4432 [COCI2017-2018#2] ​​ZigZag

前提是你 提交于 2019-11-29 16:11:26
题意翻译 Zig和Zag正在玩文字游戏。Zig说了一个字母,而Zag说了一个以该字母开头的单词。但是这个词需要出现在给出的单词列表中,并且被是相同首字母中使用的次数最少的单词。如果单词的选择不明确(即相同首字母中使用的次数最少的单词不止一个),那么Zag会选择字典序较小的字母。输入保证对于每个Zig的字母,都有可以选择的单词。 假设有一个由K个不同的单词组成的列表和一个Zig给出的N个字母组成的列表。编写一个程序,根据输入,输出Zag在游戏过程中说出的N个单词。 输入输出格式 输入格式: 第一行输入包含来自的正整数K(1≤K≤100 000)和N(1≤N≤100 000)。 以下K行是K个单词,由小写英文字母组成,不超过21个字母。 以下N行是Zig说的N个小写英文字母。 输出格式: N行,分别对应N个Zig的询问。 题目描述 Zig and Zag are playing a word game. Zig says one letter, and Zag says a word that starts with that letter. However, the word needs to be from the allowed word list and such that Zag already said it the least amount of times. If