函数Word_scores_filtered = filter_words(word_scores,words_guessed,results)
% remove words_guess,因为这些不是答案
Word_scores_filtered = word_scores;
Word_scores_filtered (matches(Word_scores_filtered .words,words_guessed),:) = [];
[rlp,clp] = find(results==2);
字母=提取(words_guess (rlp(ii)),clp(ii));
Word_scores_filtered = Word_scores_filtered (extract(Word_scores_filtered .words,clp(ii))==letter,:);
%过滤到在其他位置也包含正确字母的单词(黄色字母)
[rl,cl] = find(results==1);
字母= extract(words_guess (rl(jj)),cl(jj));
Word_scores_filtered (extract(Word_scores_filtered .words,cl(jj))==letter,:) = [];
Word_scores_filtered (~contains(Word_scores_filtered .words,letter),:) = [];
[ri,ci] = find(results==0);
Letter = extract(words_guess (ri(kk)),ci(kk));
Word_scores_filtered (contains(Word_scores_filtered .words,letter),:) = [];
函数结果= wordle_feedback(答案,猜测)
函数[word_to_guess,win,guess] = play_wordle(word_scores, word_to_guess)
Top_words = sortrows(word_scores,2,“下”);确保分数被排序
如果Ii == 1对于我们的第一个猜测,过滤到有五个唯一字母的单词,并获得最高分
Top_words_filtered = top_words(top_words.num_letters==5,:);
elseifIi <= 3%如果我们在进行第二次或第三次猜测
过滤掉不符合条件的单词,如果可能的话,要求5个唯一的字母。
Top_words_filtered = filter_words(top_words(top_words.num_letters==min_uniq,:), (1:ii-1),results(1:ii-1,:));
%如果过滤到五个唯一的字母会删除所有单词,则允许更多重复的字母
而Height (top_words_filtered) == 0 && min_uniq > min(word_scores.num_letters)
Top_words_filtered = filter_words(top_words(top_words.num_letters==min_uniq,:), (1:ii-1),results(1:ii-1,:));
Top_words_filtered = filter_words(top_words,猜测(1:ii-1),结果(1:ii-1,:));
如果Height (top_words_filtered) == 0%如果我们的词汇表中没有合格的单词
猜测(1,ii) = top_words_filtered.words(1);
Results (ii,:) = wordle_feedback(word_to_guess, (1,ii));
如果猜测(1,ii) == word_to_guess%如果我们的猜测正确的话
elseifIi == max_attempts%如果我们已经用了所有的猜测,而且都是错的
引用:吉姆·古道尔,2020年。Stack Overflow,可从:https://stackoverflow.com/a/60181033获得
函数[clean_s] = removediacritics(s)
S = regexp (S,‘(?:| | | | |一个)的,“一个”);
S = regexp (S,“(?:Æ)”,“AE”);
S = regexp (S,“(?:ß)”,“党卫军”);
S = regexp (S,“(?:C)”,“C”);
S = regexp (S,“(?:Ð)”,' D ');
S = regexp (S,”(?:E E E | | | E)”,“E”);
S = regexp (S,”(?:我| | |我)”,“我”);
S = regexp (S,“(?:N)”,“N”);
S = regexp (S,”(?:O O O O O | | | | |Ø)”,“O”);
S = regexp (S,“(?:œ)”,“OE”);
S = regexp (S,”(?:U | | | U)”,“U”);
S = regexp (S,”(?:Y |ÿ)',“Y”);
S = regexp (S,‘(?:| | | | |一个)的,“一个”);
S = regexp (S,“(?:æ)”,“ae”);
S = regexp (S,“(?:c)”,“c”);
S = regexp (S,“(?:ð)”,' d ');
S = regexp (S,”(?:e e e | | | e)”,“e”);
S = regexp (S,”(?:我| | |我)”,“我”);
S = regexp (S,“(?:n)”,“n”);
S = regexp (S,”(?:o o o o o | | | | |ø)”,“o”);
S = regexp (S,“(?:œ)”,“oe”);
S = regexp (S,”(?:u | | | u)”,“u”);
S = regexp (S,(: | y)的,“y”);
댓글
댓글을남기려면링크를클릭하여MathWorks계정에로그하거나계정을새로만드십시오。