Skip to content

Instantly share code, notes, and snippets.

@dtinth
Last active September 26, 2019 17:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dtinth/4250081cc0bdf7632a62b6daea8d8592 to your computer and use it in GitHub Desktop.
Save dtinth/4250081cc0bdf7632a62b6daea8d8592 to your computer and use it in GitHub Desktop.
Live coding 2019-09-25 — brute forcing AunJessada’s upcoming song title

I'm just trying to guess Aun Jessada’s upcoming song’s name. He’s giving us a hint. So we are brute-forcing all the song names that matches this criteria.

Not included (must download to run the script):

const fs = require('fs')
const data = fs.readFileSync('dataset/201705_2gram.txt', 'utf8')
.split('\n')
const map = new Map()
for (const line of data) {
const [a, b, frequency] = line.split('\t')
if (+frequency) map.set(a + b, +frequency)
}
module.exports = function bigram (wordA, wordB) {
return (map.get(wordA + wordB) || 0) / 480202
}
{ rank: 1, text: 'คนอย่างกัน', score: -9.182352335436015 }
{ rank: 2, text: 'คนอย่างฉัน', score: -10.042553600659126 }
{ rank: 3, text: 'คนอย่างมัน', score: -10.296002501468664 }
{ rank: 4, text: 'คนอย่างวัน', score: -10.460757734544721 }
{ rank: 5, text: 'คนอย่างอัน', score: -11.074916503786035 }
{ rank: 6, text: 'คนกล่าวกัน', score: -11.094739792452684 }
{ rank: 7, text: 'คงอย่างกัน', score: -11.169420556984836 }
{ rank: 8, text: 'คนกล่าวฉัน', score: -11.954941057675795 }
{ rank: 9, text: 'คะอย่างกัน', score: -12.019019914360317 }
{ rank: 10, text: 'คงอย่างฉัน', score: -12.029621822207947 }
{ rank: 11, text: 'คนอย่างหัน', score: -12.065119493946959 }
{ rank: 12, text: 'คนกล่าวมัน', score: -12.208389958485334 }
{ rank: 13, text: 'คงอย่างมัน', score: -12.283070723017484 }
{ rank: 14, text: 'คนกล่าววัน', score: -12.373145191561388 }
{ rank: 15, text: 'คงอย่างวัน', score: -12.447825956093542 }
{ rank: 16, text: 'ควรต่างกัน', score: -12.470281361796312 }
{ rank: 17, text: 'คนอย่างพัน', score: -12.682983614086357 }
{ rank: 18, text: 'คนอย่างฝัน', score: -12.84940438650543 }
{ rank: 19, text: 'คะอย่างฉัน', score: -12.879221179583428 }
{ rank: 20, text: 'คนกล่าวอัน', score: -12.987303960802704 }
{ rank: 21, text: 'คนอย่างคัน', score: -12.994052619236292 }
{ rank: 22, text: 'ควรท่านกัน', score: -13.026028672953814 }
{ rank: 23, text: 'คงอย่างอัน', score: -13.061984725334856 }
{ rank: 24, text: 'คงกล่าวกัน', score: -13.081808014001505 }
{ rank: 25, text: 'คะอย่างมัน', score: -13.132670080392966 }
{ rank: 26, text: 'คะอย่างวัน', score: -13.297425313469024 }
{ rank: 27, text: 'ควรต่างฉัน', score: -13.330482627019423 }
{ rank: 28, text: 'คณะต่างกัน', score: -13.353532239592267 }
{ rank: 29, text: 'ควรฝ่ายกัน', score: -13.359173119482353 }
{ rank: 30, text: 'ควรผ่านกัน', score: -13.508550520556954 }
{ rank: 31, text: 'ควรต่างมัน', score: -13.583931527828963 }
{ rank: 32, text: 'ควรต่างวัน', score: -13.748686760905017 }
{ rank: 33, text: 'ควรอ่านกัน', score: -13.753464926992393 }
{ rank: 34, text: 'ควรท่านฉัน', score: -13.886229938176925 }
{ rank: 35, text: 'คณะท่านกัน', score: -13.909279550749769 }
{ rank: 36, text: 'คะอย่างอัน', score: -13.911584082710338 }
{ rank: 37, text: 'คอยต่างกัน', score: -13.923065464185036 }
{ rank: 38, text: 'คะกล่าวกัน', score: -13.931407371376988 }
{ rank: 39, text: 'คงกล่าวฉัน', score: -13.942009279224616 }
{ rank: 40, text: 'คนกล่าวหัน', score: -13.97750695096363 }
{ rank: 41, text: 'ควรง่ายกัน', score: -14.012655043649868 }
{ rank: 42, text: 'คงอย่างหัน', score: -14.05218771549578 }
{ rank: 43, text: 'ควรท่านมัน', score: -14.139678838986462 }
{ rank: 44, text: 'ครบต่างกัน', score: -14.145038740351055 }
{ rank: 45, text: 'คงกล่าวมัน', score: -14.195458180034155 }
{ rank: 46, text: 'คณะต่างฉัน', score: -14.213733504815378 }
{ rank: 47, text: 'ควรฝ่ายฉัน', score: -14.219374384705464 }
{ rank: 48, text: 'คณะฝ่ายกัน', score: -14.242423997278308 }
{ rank: 49, text: 'ควรร่างกัน', score: -14.250715681667314 }
{ rank: 50, text: 'คาดต่างกัน', score: -14.296844753219059 }
{ rank: 51, text: 'ควรท่านวัน', score: -14.30443407206252 }
{ rank: 52, text: 'ควรข่าวกัน', score: -14.342083538697903 }
{ rank: 53, text: 'คงกล่าววัน', score: -14.360213413110209 }
{ rank: 54, text: 'ควรต่างอัน', score: -14.362845530146332 }
{ rank: 55, text: 'ควรผ่านฉัน', score: -14.368751785780065 }
{ rank: 56, text: 'คณะผ่านกัน', score: -14.391801398352909 }
{ rank: 57, text: 'คณะต่างมัน', score: -14.467182405624918 }
{ rank: 58, text: 'ควรฝ่ายมัน', score: -14.472823285515002 }
{ rank: 59, text: 'คอยท่านกัน', score: -14.478812775342538 }
{ rank: 60, text: 'ควรจ่ายกัน', score: -14.537828115823999 }
{ rank: 61, text: 'คนกล่าวพัน', score: -14.595371071103026 }
{ rank: 62, text: 'ควรอ่านฉัน', score: -14.613666192215504 }
{ rank: 63, text: 'ควรผ่านมัน', score: -14.622200686589604 }
{ rank: 64, text: 'คณะต่างวัน', score: -14.631937638700972 }
{ rank: 65, text: 'คณะอ่านกัน', score: -14.636715804788349 }
{ rank: 66, text: 'ควรฝ่ายวัน', score: -14.63757851859106 }
{ rank: 67, text: 'คงอย่างพัน', score: -14.670051835635178 }
{ rank: 68, text: 'ครบท่านกัน', score: -14.700786051508558 }
{ rank: 69, text: 'ควรช่างกัน', score: -14.725831506085385 }
{ rank: 70, text: 'คนกล่าวฝัน', score: -14.761791843522097 }
{ rank: 71, text: 'คณะท่านฉัน', score: -14.76948081597288 }
{ rank: 72, text: 'คอยต่างฉัน', score: -14.783266729408147 }
{ rank: 73, text: 'ควรผ่านวัน', score: -14.786955919665658 }
{ rank: 74, text: 'คะกล่าวฉัน', score: -14.791608636600099 }
{ rank: 75, text: 'คอยฝ่ายกัน', score: -14.811957221871076 }
{ rank: 76, text: 'คงอย่างฝัน', score: -14.836472608054251 }
{ rank: 77, text: 'คาดท่านกัน', score: -14.852592064376562 }
{ rank: 78, text: 'ควรอ่านมัน', score: -14.867115093025042 }
{ rank: 79, text: 'ควรง่ายฉัน', score: -14.87285630887298 }
{ rank: 80, text: 'คณะง่ายกัน', score: -14.895905921445824 }
{ rank: 81, text: 'คะอย่างหัน', score: -14.901787072871262 }
{ rank: 82, text: 'คนกล่าวคัน', score: -14.90644007625296 }
{ rank: 83, text: 'ควรท่านอัน', score: -14.918592841303834 }
{ rank: 84, text: 'คอยผ่านกัน', score: -14.961334622945678 }
{ rank: 85, text: 'คงกล่าวอัน', score: -14.974372182351525 }
{ rank: 86, text: 'คงอย่างคัน', score: -14.981120840785113 }
{ rank: 87, text: 'ควรห่างกัน', score: -14.994928340233827 }
{ rank: 88, text: 'ครบต่างฉัน', score: -15.005240005574166 }
{ rank: 89, text: 'คณะท่านมัน', score: -15.022929716782418 }
{ rank: 90, text: 'ควรอ่านวัน', score: -15.0318703261011 }
{ rank: 91, text: 'ครบฝ่ายกัน', score: -15.033930498037098 }
{ rank: 92, text: 'คอยต่างมัน', score: -15.036715630217685 }
{ rank: 93, text: 'คะกล่าวมัน', score: -15.045057537409637 }
{ rank: 94, text: 'คณะฝ่ายฉัน', score: -15.10262526250142 }
{ rank: 95, text: 'ควรร่างฉัน', score: -15.110916946890425 }
{ rank: 96, text: 'ควรง่ายมัน', score: -15.126305209682517 }
{ rank: 97, text: 'คณะร่างกัน', score: -15.13396655946327 }
{ rank: 98, text: 'คาดต่างฉัน', score: -15.15704601844217 }
{ rank: 99, text: 'ครบผ่านกัน', score: -15.183307899111696 }
{ rank: 100, text: 'คาดฝ่ายกัน', score: -15.185736510905102 }
{ rank: 101, text: 'คณะท่านวัน', score: -15.187684949858475 }
{ rank: 102, text: 'คอยต่างวัน', score: -15.201470863293743 }
{ rank: 103, text: 'ควรข่าวฉัน', score: -15.202284803921014 }
{ rank: 104, text: 'คอยอ่านกัน', score: -15.206249029381116 }
{ rank: 105, text: 'คะกล่าววัน', score: -15.209812770485694 }
{ rank: 106, text: 'คณะข่าวกัน', score: -15.225334416493858 }
{ rank: 107, text: 'คณะต่างอัน', score: -15.246096407942288 }
{ rank: 108, text: 'ควรฝ่ายอัน', score: -15.251737287832373 }
{ rank: 109, text: 'คณะผ่านฉัน', score: -15.25200266357602 }
{ rank: 110, text: 'ครบต่างมัน', score: -15.258688906383703 }
{ rank: 111, text: 'ควรง่ายวัน', score: -15.291060442758575 }
{ rank: 112, text: 'คาดผ่านกัน', score: -15.3351139119797 }
{ rank: 113, text: 'คอยท่านฉัน', score: -15.33901404056565 }
{ rank: 114, text: 'ควรต่างหัน', score: -15.353048520307258 }
{ rank: 115, text: 'คณะฝ่ายมัน', score: -15.356074163310957 }
{ rank: 116, text: 'ควรร่างมัน', score: -15.364365847699965 }
{ rank: 117, text: 'ควรจ่ายฉัน', score: -15.39802938104711 }
{ rank: 118, text: 'ควรผ่านอัน', score: -15.401114688906974 }
{ rank: 119, text: 'คาดต่างมัน', score: -15.410494919251708 }
{ rank: 120, text: 'คณะจ่ายกัน', score: -15.421078993619954 }
{ rank: 121, text: 'ครบต่างวัน', score: -15.423444139459761 }
{ rank: 122, text: 'ครบอ่านกัน', score: -15.428222305547136 }
{ rank: 123, text: 'ควรข่าวมัน', score: -15.455733704730552 }
{ rank: 124, text: 'คอยง่ายกัน', score: -15.465439146038591 }
{ rank: 125, text: 'คณะอ่านฉัน', score: -15.49691707001146 }
{ rank: 126, text: 'คณะผ่านมัน', score: -15.50545156438556 }
{ rank: 127, text: 'คะอย่างพัน', score: -15.51965119301066 }
{ rank: 128, text: 'คณะฝ่ายวัน', score: -15.520829396387015 }
{ rank: 129, text: 'ควรร่างวัน', score: -15.529121080776019 }
{ rank: 130, text: 'ครบท่านฉัน', score: -15.56098731673167 }
{ rank: 131, text: 'คาดต่างวัน', score: -15.575250152327765 }
{ rank: 132, text: 'คาดอ่านกัน', score: -15.58002831841514 }
{ rank: 133, text: 'ควรช่างฉัน', score: -15.586032771308496 }
{ rank: 134, text: 'คอยท่านมัน', score: -15.592462941375189 }
{ rank: 135, text: 'คณะช่างกัน', score: -15.60908238388134 }
{ rank: 136, text: 'ควรข่าววัน', score: -15.62048893780661 }
{ rank: 137, text: 'ควรอ่านอัน', score: -15.646029095342413 }
{ rank: 138, text: 'ควรจ่ายมัน', score: -15.651478281856647 }
{ rank: 139, text: 'คณะผ่านวัน', score: -15.670206797461613 }
{ rank: 140, text: 'คอยฝ่ายฉัน', score: -15.672158487094187 }
{ rank: 141, text: 'คะอย่างฝัน', score: -15.686071965429733 }
{ rank: 142, text: 'ครบง่ายกัน', score: -15.687412422204611 }
{ rank: 143, text: 'คอยร่างกัน', score: -15.703499784056039 }
{ rank: 144, text: 'คาดท่านฉัน', score: -15.712793329599673 }
{ rank: 145, text: 'คณะอ่านมัน', score: -15.750365970820997 }
{ rank: 146, text: 'คณะง่ายฉัน', score: -15.756107186668935 }
{ rank: 147, text: 'คอยท่านวัน', score: -15.757218174451243 }
{ rank: 148, text: 'คอยข่าวกัน', score: -15.794867641086627 }
{ rank: 149, text: 'คณะท่านอัน', score: -15.80184371909979 }
{ rank: 150, text: 'ครบท่านมัน', score: -15.814436217541207 }
{ rank: 151, text: 'คอยต่างอัน', score: -15.815629632535057 }
{ rank: 152, text: 'ควรจ่ายวัน', score: -15.816233514932705 }
{ rank: 153, text: 'คอยผ่านฉัน', score: -15.821535888168789 }
{ rank: 154, text: 'คะกล่าวอัน', score: -15.823971539727008 }
{ rank: 155, text: 'คะอย่างคัน', score: -15.830720198160595 }
{ rank: 156, text: 'คาดง่ายกัน', score: -15.839218435072615 }
{ rank: 157, text: 'ควรช่างมัน', score: -15.839481672118033 }
{ rank: 158, text: 'ควรห่างฉัน', score: -15.855129605456938 }
{ rank: 159, text: 'คณะห่างกัน', score: -15.878179218029782 }
{ rank: 160, text: 'ครบฝ่ายฉัน', score: -15.894131763260209 }
{ rank: 161, text: 'ควรง่ายอัน', score: -15.905219211999889 }
{ rank: 162, text: 'ควรท่านหัน', score: -15.908795831464758 }
{ rank: 163, text: 'คณะอ่านวัน', score: -15.915121203897055 }
{ rank: 164, text: 'ครบร่างกัน', score: -15.925473060222057 }
{ rank: 165, text: 'คอยฝ่ายมัน', score: -15.925607387903725 }
{ rank: 166, text: 'คงกล่าวหัน', score: -15.96457517251245 }
{ rank: 167, text: 'คาดท่านมัน', score: -15.966242230409211 }
{ rank: 168, text: 'ควรต่างพัน', score: -15.970912640446654 }
{ rank: 169, text: 'ครบท่านวัน', score: -15.979191450617265 }
{ rank: 170, text: 'คอยจ่ายกัน', score: -15.990612218212723 }
{ rank: 171, text: 'คณะร่างฉัน', score: -15.99416782468638 }
{ rank: 172, text: 'ควรช่างวัน', score: -16.00423690519409 }
{ rank: 173, text: 'คณะง่ายมัน', score: -16.009556087478472 }
{ rank: 174, text: 'ครบข่าวกัน', score: -16.016840917252647 }
{ rank: 175, text: 'ครบต่างอัน', score: -16.037602908701075 }
{ rank: 176, text: 'ครบผ่านฉัน', score: -16.043509164334807 }
{ rank: 177, text: 'คาดฝ่ายฉัน', score: -16.045937776128213 }
{ rank: 178, text: 'คอยอ่านฉัน', score: -16.066450294604227 }
{ rank: 179, text: 'คอยผ่านมัน', score: -16.074984788978327 }
{ rank: 180, text: 'คาดร่างกัน', score: -16.07727907309006 }
{ rank: 181, text: 'คณะข่าวฉัน', score: -16.08553568171697 }
{ rank: 182, text: 'คอยฝ่ายวัน', score: -16.090362620979782 }
{ rank: 183, text: 'ควรห่างมัน', score: -16.108578506266475 }
{ rank: 184, text: 'คาดท่านวัน', score: -16.13099746348527 }
{ rank: 185, text: 'คณะฝ่ายอัน', score: -16.13498816562833 }
{ rank: 186, text: 'ควรต่างฝัน', score: -16.137333412865726 }
{ rank: 187, text: 'ควรร่างอัน', score: -16.143279850017336 }
{ rank: 188, text: 'ครบฝ่ายมัน', score: -16.147580664069746 }
{ rank: 189, text: 'คาดข่าวกัน', score: -16.16864693012065 }
{ rank: 190, text: 'คณะง่ายวัน', score: -16.17431132055453 }
{ rank: 191, text: 'คอยช่างกัน', score: -16.178615608474107 }
{ rank: 192, text: 'คาดต่างอัน', score: -16.18940892156908 }
{ rank: 193, text: 'คาดผ่านฉัน', score: -16.19531517720281 }
{ rank: 194, text: 'ครบจ่ายกัน', score: -16.212585494378743 }
{ rank: 195, text: 'ควรข่าวอัน', score: -16.234647707047923 }
{ rank: 196, text: 'คณะต่างหัน', score: -16.236299398103213 }
{ rank: 197, text: 'คอยผ่านวัน', score: -16.239740022054384 }
{ rank: 198, text: 'ควรฝ่ายหัน', score: -16.241940277993297 }
{ rank: 199, text: 'คณะร่างมัน', score: -16.24761672549592 }
{ rank: 200, text: 'ควรห่างวัน', score: -16.273333739342533 }
{ rank: 201, text: 'คณะจ่ายฉัน', score: -16.281280258843065 }
{ rank: 202, text: 'ควรต่างคัน', score: -16.281981645596588 }
{ rank: 203, text: 'คณะผ่านอัน', score: -16.28436556670293 }
{ rank: 204, text: 'ครบอ่านฉัน', score: -16.28842357077025 }
{ rank: 205, text: 'ครบผ่านมัน', score: -16.296958065144345 }
{ rank: 206, text: 'คาดฝ่ายมัน', score: -16.29938667693775 }
{ rank: 207, text: 'ครบฝ่ายวัน', score: -16.312335897145804 }
{ rank: 208, text: 'คอยอ่านมัน', score: -16.319899195413765 }
{ rank: 209, text: 'คอยง่ายฉัน', score: -16.325640411261702 }
{ rank: 210, text: 'คณะข่าวมัน', score: -16.338984582526507 }
{ rank: 211, text: 'คาดจ่ายกัน', score: -16.364391507246747 }
{ rank: 212, text: 'คอยท่านอัน', score: -16.37137694369256 }
{ rank: 213, text: 'ควรผ่านหัน', score: -16.3913176790679 }
{ rank: 214, text: 'ครบช่างกัน', score: -16.40058888464013 }
{ rank: 215, text: 'คณะร่างวัน', score: -16.412371958571974 }
{ rank: 216, text: 'ควรจ่ายอัน', score: -16.43039228417402 }
{ rank: 217, text: 'คาดอ่านฉัน', score: -16.44022958363825 }
{ rank: 218, text: 'คอยห่างกัน', score: -16.44771244262255 }
{ rank: 219, text: 'คาดผ่านมัน', score: -16.44876407801235 }
{ rank: 220, text: 'ครบผ่านวัน', score: -16.461713298220403 }
{ rank: 221, text: 'คาดฝ่ายวัน', score: -16.464141910013808 }
{ rank: 222, text: 'คณะช่างฉัน', score: -16.46928364910445 }
{ rank: 223, text: 'คอยอ่านวัน', score: -16.484654428489822 }
{ rank: 224, text: 'คณะข่าววัน', score: -16.503739815602565 }
{ rank: 225, text: 'ควรท่านพัน', score: -16.526659951604156 }
{ rank: 226, text: 'คณะอ่านอัน', score: -16.52927997313837 }
{ rank: 227, text: 'คณะจ่ายมัน', score: -16.534729159652603 }
{ rank: 228, text: 'ครบอ่านมัน', score: -16.541872471579786 }
{ rank: 229, text: 'ครบง่ายฉัน', score: -16.54761368742772 }
{ rank: 230, text: 'คาดช่างกัน', score: -16.552394897508133 }
{ rank: 231, text: 'คอยร่างฉัน', score: -16.56370104927915 }
{ rank: 232, text: 'คอยง่ายมัน', score: -16.57908931207124 }
{ rank: 233, text: 'คงกล่าวพัน', score: -16.58243929265185 }
{ rank: 234, text: 'ครบท่านอัน', score: -16.59335021985858 }
{ rank: 235, text: 'คาดผ่านวัน', score: -16.613519311088407 }
{ rank: 236, text: 'ควรช่างอัน', score: -16.618395674435405 }
{ rank: 237, text: 'ควรอ่านหัน', score: -16.636232085503337 }
{ rank: 238, text: 'คอยข่าวฉัน', score: -16.655068906309737 }
{ rank: 239, text: 'ครบห่างกัน', score: -16.66968571878857 }
{ rank: 240, text: 'ควรท่านฝัน', score: -16.69308072402323 }
{ rank: 241, text: 'คาดอ่านมัน', score: -16.69367848444779 }
{ rank: 242, text: 'คาดง่ายฉัน', score: -16.699419700295728 }
{ rank: 243, text: 'คณะจ่ายวัน', score: -16.69948439272866 }
{ rank: 244, text: 'คอยฝ่ายอัน', score: -16.704521390221096 }
{ rank: 245, text: 'ครบอ่านวัน', score: -16.70662770465584 }
{ rank: 246, text: 'คณะช่างมัน', score: -16.72273254991399 }
{ rank: 247, text: 'คณะห่างฉัน', score: -16.738380483252893 }
{ rank: 248, text: 'คอยง่ายวัน', score: -16.743844545147297 }
{ rank: 249, text: 'คาดท่านอัน', score: -16.745156232726583 }
{ rank: 250, text: 'คงกล่าวฝัน', score: -16.748860065070918 }
{ rank: 251, text: 'ครบร่างฉัน', score: -16.785674325445168 }
{ rank: 252, text: 'คณะง่ายอัน', score: -16.788470089795844 }
{ rank: 253, text: 'คณะท่านหัน', score: -16.792046709260713 }
{ rank: 254, text: 'ครบง่ายมัน', score: -16.80106258823726 }
{ rank: 255, text: 'คอยต่างหัน', score: -16.80583262269598 }
{ rank: 256, text: 'คะกล่าวหัน', score: -16.814174529887932 }
{ rank: 257, text: 'คอยร่างมัน', score: -16.817149950088687 }
{ rank: 258, text: 'คาดห่างกัน', score: -16.821491731656575 }
{ rank: 259, text: 'ควรท่านคัน', score: -16.83772895675409 }
{ rank: 260, text: 'คอยจ่ายฉัน', score: -16.850813483435836 }
{ rank: 261, text: 'คอยผ่านอัน', score: -16.8538987912957 }
{ rank: 262, text: 'คณะต่างพัน', score: -16.854163518242608 }
{ rank: 263, text: 'คาดอ่านวัน', score: -16.858433717523845 }
{ rank: 264, text: 'ควรฝ่ายพัน', score: -16.859804398132695 }
{ rank: 265, text: 'ครบข่าวฉัน', score: -16.87704218247576 }
{ rank: 266, text: 'คณะช่างวัน', score: -16.887487782990046 }
{ rank: 267, text: 'ควรห่างอัน', score: -16.887492508583847 }
{ rank: 268, text: 'คงกล่าวคัน', score: -16.89350829780178 }
{ rank: 269, text: 'ควรง่ายหัน', score: -16.895422202160812 }
{ rank: 270, text: 'คอยข่าวมัน', score: -16.908517807119278 }
{ rank: 271, text: 'ครบฝ่ายอัน', score: -16.926494666387118 }
{ rank: 272, text: 'คาดร่างฉัน', score: -16.937480338313172 }
{ rank: 273, text: 'คาดง่ายมัน', score: -16.952868601105266 }
{ rank: 274, text: 'ครบง่ายวัน', score: -16.965817821313316 }
{ rank: 275, text: 'คอยร่างวัน', score: -16.981905183164745 }
{ rank: 276, text: 'คณะห่างมัน', score: -16.99182938406243 }
{ rank: 277, text: 'ควรผ่านพัน', score: -17.009181799207298 }
{ rank: 278, text: 'คณะต่างฝัน', score: -17.02058429066168 }
{ rank: 279, text: 'ควรฝ่ายฝัน', score: -17.02622517055177 }
{ rank: 280, text: 'คณะร่างอัน', score: -17.026530727813288 }
{ rank: 281, text: 'ครบต่างหัน', score: -17.027805898862 }
{ rank: 282, text: 'คาดข่าวฉัน', score: -17.028848195343762 }
{ rank: 283, text: 'คอยช่างฉัน', score: -17.03881687369722 }
{ rank: 284, text: 'ครบร่างมัน', score: -17.039123226254706 }
{ rank: 285, text: 'ครบจ่ายฉัน', score: -17.072786759601854 }
{ rank: 286, text: 'คอยข่าววัน', score: -17.073273040195332 }
{ rank: 287, text: 'ครบผ่านอัน', score: -17.075872067461717 }
{ rank: 288, text: 'คาดฝ่ายอัน', score: -17.078300679255122 }
{ rank: 289, text: 'คอยอ่านอัน', score: -17.098813197731136 }
{ rank: 290, text: 'คอยจ่ายมัน', score: -17.104262384245374 }
{ rank: 291, text: 'คาดง่ายวัน', score: -17.11762383418132 }
{ rank: 292, text: 'คณะข่าวอัน', score: -17.11789858484388 }
{ rank: 293, text: 'คณะฝ่ายหัน', score: -17.125191155789253 }
{ rank: 294, text: 'ครบข่าวมัน', score: -17.130491083285296 }
{ rank: 295, text: 'ควรร่างหัน', score: -17.13348284017826 }
{ rank: 296, text: 'คณะห่างวัน', score: -17.15658461713849 }
{ rank: 297, text: 'คณะต่างคัน', score: -17.165232523392543 }
{ rank: 298, text: 'ควรฝ่ายคัน', score: -17.17087340328263 }
{ rank: 299, text: 'ควรผ่านฝัน', score: -17.175602571626367 }
{ rank: 300, text: 'คาดต่างหัน', score: -17.179611911730003 }
{ rank: 301, text: 'คาดร่างมัน', score: -17.19092923912271 }
{ rank: 302, text: 'ครบร่างวัน', score: -17.203878459330763 }
{ rank: 303, text: 'คาดจ่ายฉัน', score: -17.224592772469858 }
{ rank: 304, text: 'ควรข่าวหัน', score: -17.224850697208847 }
{ rank: 305, text: 'คาดผ่านอัน', score: -17.22767808032972 }
{ rank: 306, text: 'ควรอ่านพัน', score: -17.254096205642735 }
{ rank: 307, text: 'ครบช่างฉัน', score: -17.26079014986324 }
{ rank: 308, text: 'คอยจ่ายวัน', score: -17.269017617321428 }
{ rank: 309, text: 'คณะผ่านหัน', score: -17.274568556863855 }
{ rank: 310, text: 'คาดข่าวมัน', score: -17.2822970961533 }
{ rank: 311, text: 'คอยช่างมัน', score: -17.292265774506756 }
{ rank: 312, text: 'ครบข่าววัน', score: -17.295246316361354 }
{ rank: 313, text: 'คอยห่างฉัน', score: -17.30791370784566 }
{ rank: 314, text: 'คณะจ่ายอัน', score: -17.313643161969974 }
{ rank: 315, text: 'ควรผ่านคัน', score: -17.32025080435723 }
{ rank: 316, text: 'ครบอ่านอัน', score: -17.320786473897158 }
{ rank: 317, text: 'ครบจ่ายมัน', score: -17.326235660411392 }
{ rank: 318, text: 'คาดร่างวัน', score: -17.355684472198767 }
{ rank: 319, text: 'คอยง่ายอัน', score: -17.35800331438861 }
{ rank: 320, text: 'คอยท่านหัน', score: -17.361579933853484 }
{ rank: 321, text: 'คณะท่านพัน', score: -17.40991082940011 }
{ rank: 322, text: 'คาดช่างฉัน', score: -17.412596162731244 }
{ rank: 323, text: 'ควรอ่านฝัน', score: -17.42051697806181 }
{ rank: 324, text: 'ควรจ่ายหัน', score: -17.420595274334943 }
{ rank: 325, text: 'คอยต่างพัน', score: -17.42369674283538 }
{ rank: 326, text: 'คะกล่าวพัน', score: -17.43203865002733 }
{ rank: 327, text: 'คาดข่าววัน', score: -17.447052329229358 }
{ rank: 328, text: 'คอยช่างวัน', score: -17.457021007582814 }
{ rank: 329, text: 'คาดอ่านอัน', score: -17.47259248676516 }
{ rank: 330, text: 'คาดจ่ายมัน', score: -17.478041673279396 }
{ rank: 331, text: 'ครบจ่ายวัน', score: -17.49099089348745 }
{ rank: 332, text: 'คณะช่างอัน', score: -17.50164655223136 }
{ rank: 333, text: 'ควรง่ายพัน', score: -17.51328632230021 }
{ rank: 334, text: 'ครบช่างมัน', score: -17.514239050672778 }
{ rank: 335, text: 'คณะอ่านหัน', score: -17.519482963299293 }
{ rank: 336, text: 'ครบห่างฉัน', score: -17.529886984011682 }
{ rank: 337, text: 'คอยห่างมัน', score: -17.561362608655198 }
{ rank: 338, text: 'ควรอ่านคัน', score: -17.56516521079267 }
{ rank: 339, text: 'คณะท่านฝัน', score: -17.576331601819184 }
{ rank: 340, text: 'ครบง่ายอัน', score: -17.57997659055463 }
{ rank: 341, text: 'ครบท่านหัน', score: -17.583553210019502 }
{ rank: 342, text: 'คอยต่างฝัน', score: -17.59011751525445 }
{ rank: 343, text: 'คอยร่างอัน', score: -17.59606395240606 }
{ rank: 344, text: 'คะกล่าวฝัน', score: -17.598459422446403 }
{ rank: 345, text: 'ควรช่างหัน', score: -17.60859866459633 }
{ rank: 346, text: 'คาดจ่ายวัน', score: -17.642796906355454 }
{ rank: 347, text: 'ครบต่างพัน', score: -17.645670019001397 }
{ rank: 348, text: 'คาดช่างมัน', score: -17.666045063540782 }
{ rank: 349, text: 'ครบช่างวัน', score: -17.678994283748835 }
{ rank: 350, text: 'ควรง่ายฝัน', score: -17.679707094719284 }
{ rank: 351, text: 'คาดห่างฉัน', score: -17.681692996879686 }
{ rank: 352, text: 'คอยข่าวอัน', score: -17.687431809436646 }
{ rank: 353, text: 'คอยฝ่ายหัน', score: -17.69472438038202 }
{ rank: 354, text: 'คณะท่านคัน', score: -17.720979834550047 }
{ rank: 355, text: 'คอยห่างวัน', score: -17.726117841731256 }
{ rank: 356, text: 'คาดง่ายอัน', score: -17.731782603422637 }
{ rank: 357, text: 'คอยต่างคัน', score: -17.734765747985314 }
{ rank: 358, text: 'คาดท่านหัน', score: -17.735359222887507 }
{ rank: 359, text: 'คณะฝ่ายพัน', score: -17.74305527592865 }
{ rank: 360, text: 'คะกล่าวคัน', score: -17.743107655177266 }
{ rank: 361, text: 'ควรร่างพัน', score: -17.751346960317655 }
{ rank: 362, text: 'คณะห่างอัน', score: -17.770743386379802 }
{ rank: 363, text: 'คณะง่ายหัน', score: -17.778673079956768 }
{ rank: 364, text: 'ครบห่างมัน', score: -17.78333588482122 }
{ rank: 365, text: 'คาดต่างพัน', score: -17.7974760318694 }
{ rank: 366, text: 'ครบต่างฝัน', score: -17.81209079142047 }
{ rank: 367, text: 'ครบร่างอัน', score: -17.818037228572077 }
{ rank: 368, text: 'ควรง่ายคัน', score: -17.824355327450146 }
{ rank: 369, text: 'คาดช่างวัน', score: -17.83080029661684 }
{ rank: 370, text: 'ควรข่าวพัน', score: -17.842714817348245 }
{ rank: 371, text: 'คอยผ่านหัน', score: -17.844101781456622 }
{ rank: 372, text: 'ควรห่างหัน', score: -17.87769549874477 }
{ rank: 373, text: 'คอยจ่ายอัน', score: -17.883176386562745 }
{ rank: 374, text: 'คณะผ่านพัน', score: -17.89243267700325 }
{ rank: 375, text: 'ครบข่าวอัน', score: -17.909405085602668 }
{ rank: 376, text: 'คณะฝ่ายฝัน', score: -17.909476048347724 }
{ rank: 377, text: 'ครบฝ่ายหัน', score: -17.916697656548042 }
{ rank: 378, text: 'ควรร่างฝัน', score: -17.917767732736728 }
{ rank: 379, text: 'คาดห่างมัน', score: -17.935141897689224 }
{ rank: 380, text: 'ครบห่างวัน', score: -17.948091117897278 }
{ rank: 381, text: 'ครบต่างคัน', score: -17.956739024151332 }
{ rank: 382, text: 'คาดต่างฝัน', score: -17.963896804288474 }
{ rank: 383, text: 'คาดร่างอัน', score: -17.96984324144008 }
{ rank: 384, text: 'คอยท่านพัน', score: -17.97944405399288 }
{ rank: 385, text: 'ควรข่าวฝัน', score: -18.009135589767318 }
{ rank: 386, text: 'คณะร่างหัน', score: -18.016733717974216 }
{ rank: 387, text: 'ควรจ่ายพัน', score: -18.03845939447434 }
{ rank: 388, text: 'คณะฝ่ายคัน', score: -18.054124281078586 }
{ rank: 389, text: 'คณะผ่านฝัน', score: -18.058853449422323 }
{ rank: 390, text: 'คาดข่าวอัน', score: -18.06121109847067 }
{ rank: 391, text: 'ควรร่างคัน', score: -18.06241596546759 }
{ rank: 392, text: 'ครบผ่านหัน', score: -18.06607505762264 }
{ rank: 393, text: 'คาดฝ่ายหัน', score: -18.068503669416046 }
{ rank: 394, text: 'คอยช่างอัน', score: -18.071179776824128 }
{ rank: 395, text: 'คอยอ่านหัน', score: -18.08901618789206 }
{ rank: 396, text: 'คาดห่างวัน', score: -18.09989713076528 }
{ rank: 397, text: 'ครบจ่ายอัน', score: -18.105149662728763 }
{ rank: 398, text: 'คณะข่าวหัน', score: -18.108101575004802 }
{ rank: 399, text: 'คาดต่างคัน', score: -18.108545037019336 }
{ rank: 400, text: 'คณะอ่านพัน', score: -18.13734708343869 }
{ rank: 401, text: 'คอยท่านฝัน', score: -18.14586482641195 }
{ rank: 402, text: 'ควรข่าวคัน', score: -18.15378382249818 }
{ rank: 403, text: 'ครบท่านพัน', score: -18.2014173301589 }
{ rank: 404, text: 'คณะผ่านคัน', score: -18.203501682153185 }
{ rank: 405, text: 'ควรจ่ายฝัน', score: -18.204880166893414 }
{ rank: 406, text: 'คาดผ่านหัน', score: -18.217881070490645 }
{ rank: 407, text: 'ควรช่างพัน', score: -18.226462784735727 }
{ rank: 408, text: 'คาดจ่ายอัน', score: -18.256955675596767 }
{ rank: 409, text: 'คอยท่านคัน', score: -18.290513059142814 }
{ rank: 410, text: 'ครบช่างอัน', score: -18.29315305299015 }
{ rank: 411, text: 'คณะอ่านฝัน', score: -18.303767855857764 }
{ rank: 412, text: 'คณะจ่ายหัน', score: -18.303846152130898 }
{ rank: 413, text: 'ครบอ่านหัน', score: -18.310989464058082 }
{ rank: 414, text: 'คอยฝ่ายพัน', score: -18.312588500521418 }
{ rank: 415, text: 'คอยห่างอัน', score: -18.34027661097257 }
{ rank: 416, text: 'คอยง่ายหัน', score: -18.348206304549535 }
{ rank: 417, text: 'ควรจ่ายคัน', score: -18.349528399624276 }
{ rank: 418, text: 'คาดท่านพัน', score: -18.353223343026905 }
{ rank: 419, text: 'ครบท่านฝัน', score: -18.367838102577974 }
{ rank: 420, text: 'ควรช่างฝัน', score: -18.3928835571548 }
{ rank: 421, text: 'คณะง่ายพัน', score: -18.396537200096166 }
{ rank: 422, text: 'คาดช่างอัน', score: -18.444959065858153 }
{ rank: 423, text: 'คณะอ่านคัน', score: -18.448416088588626 }
{ rank: 424, text: 'คอยผ่านพัน', score: -18.46196590159602 }
{ rank: 425, text: 'คาดอ่านหัน', score: -18.462795476926086 }
{ rank: 426, text: 'คอยฝ่ายฝัน', score: -18.47900927294049 }
{ rank: 427, text: 'คณะช่างหัน', score: -18.491849542392284 }
{ rank: 428, text: 'ควรห่างพัน', score: -18.49555961888417 }
{ rank: 429, text: 'ครบท่านคัน', score: -18.512486335308836 }
{ rank: 430, text: 'คาดท่านฝัน', score: -18.519644115445978 }
{ rank: 431, text: 'ครบฝ่ายพัน', score: -18.53456177668744 }
{ rank: 432, text: 'ควรช่างคัน', score: -18.537531789885662 }
{ rank: 433, text: 'ครบห่างอัน', score: -18.56224988713859 }
{ rank: 434, text: 'คณะง่ายฝัน', score: -18.56295797251524 }
{ rank: 435, text: 'ครบง่ายหัน', score: -18.570179580715557 }
{ rank: 436, text: 'คอยร่างหัน', score: -18.586266942566983 }
{ rank: 437, text: 'คอยฝ่ายคัน', score: -18.623657505671353 }
{ rank: 438, text: 'คอยผ่านฝัน', score: -18.628386674015093 }
{ rank: 439, text: 'คณะร่างพัน', score: -18.634597838113613 }
{ rank: 440, text: 'ควรห่างฝัน', score: -18.661980391303242 }
{ rank: 441, text: 'คาดท่านคัน', score: -18.66429234817684 }
{ rank: 442, text: 'คอยข่าวหัน', score: -18.677634799597573 }
{ rank: 443, text: 'ครบผ่านพัน', score: -18.68393917776204 }
{ rank: 444, text: 'คาดฝ่ายพัน', score: -18.686367789555444 }
{ rank: 445, text: 'ครบฝ่ายฝัน', score: -18.700982549106513 }
{ rank: 446, text: 'คอยอ่านพัน', score: -18.706880308031458 }
{ rank: 447, text: 'คณะง่ายคัน', score: -18.7076062052461 }
{ rank: 448, text: 'คาดห่างอัน', score: -18.714055900006596 }
{ rank: 449, text: 'คาดง่ายหัน', score: -18.72198559358356 }
{ rank: 450, text: 'คณะข่าวพัน', score: -18.7259656951442 }
{ rank: 451, text: 'คณะห่างหัน', score: -18.760946376540726 }
{ rank: 452, text: 'คอยผ่านคัน', score: -18.773034906745956 }
{ rank: 453, text: 'คณะร่างฝัน', score: -18.801018610532683 }
{ rank: 454, text: 'ควรห่างคัน', score: -18.806628624034104 }
{ rank: 455, text: 'ครบร่างหัน', score: -18.808240218733 }
{ rank: 456, text: 'คาดผ่านพัน', score: -18.835745190630043 }
{ rank: 457, text: 'ครบฝ่ายคัน', score: -18.845630781837375 }
{ rank: 458, text: 'ครบผ่านฝัน', score: -18.85035995018111 }
{ rank: 459, text: 'คาดฝ่ายฝัน', score: -18.852788561974517 }
{ rank: 460, text: 'คอยอ่านฝัน', score: -18.87330108045053 }
{ rank: 461, text: 'คอยจ่ายหัน', score: -18.87337937672367 }
{ rank: 462, text: 'คณะข่าวฝัน', score: -18.892386467563274 }
{ rank: 463, text: 'ครบข่าวหัน', score: -18.89960807576359 }
{ rank: 464, text: 'คณะจ่ายพัน', score: -18.921710272270296 }
{ rank: 465, text: 'ครบอ่านพัน', score: -18.928853584197476 }
{ rank: 466, text: 'คณะร่างคัน', score: -18.945666843263545 }
{ rank: 467, text: 'คาดร่างหัน', score: -18.960046231601005 }
{ rank: 468, text: 'คอยง่ายพัน', score: -18.966070424688933 }
{ rank: 469, text: 'ครบผ่านคัน', score: -18.995008182911974 }
{ rank: 470, text: 'คาดฝ่ายคัน', score: -18.99743679470538 }
{ rank: 471, text: 'คาดผ่านฝัน', score: -19.002165963049116 }
{ rank: 472, text: 'คอยอ่านคัน', score: -19.017949313181393 }
{ rank: 473, text: 'คณะข่าวคัน', score: -19.037034700294136 }
{ rank: 474, text: 'คาดข่าวหัน', score: -19.051414088631596 }
{ rank: 475, text: 'คอยช่างหัน', score: -19.06138276698505 }
{ rank: 476, text: 'คาดอ่านพัน', score: -19.080659597065484 }
{ rank: 477, text: 'คณะจ่ายฝัน', score: -19.08813104468937 }
{ rank: 478, text: 'ครบอ่านฝัน', score: -19.09527435661655 }
{ rank: 479, text: 'ครบจ่ายหัน', score: -19.095352652889687 }
{ rank: 480, text: 'คณะช่างพัน', score: -19.109713662531682 }
{ rank: 481, text: 'คอยง่ายฝัน', score: -19.132491197108006 }
{ rank: 482, text: 'คาดผ่านคัน', score: -19.146814195779978 }
{ rank: 483, text: 'ครบง่ายพัน', score: -19.188043700854955 }
{ rank: 484, text: 'คอยร่างพัน', score: -19.20413106270638 }
{ rank: 485, text: 'คณะจ่ายคัน', score: -19.23277927742023 }
{ rank: 486, text: 'ครบอ่านคัน', score: -19.23992258934741 }
{ rank: 487, text: 'คาดอ่านฝัน', score: -19.247080369484554 }
{ rank: 488, text: 'คาดจ่ายหัน', score: -19.24715866575769 }
{ rank: 489, text: 'คณะช่างฝัน', score: -19.276134434950755 }
{ rank: 490, text: 'คอยง่ายคัน', score: -19.27713942983887 }
{ rank: 491, text: 'ครบช่างหัน', score: -19.283356043151073 }
{ rank: 492, text: 'คอยข่าวพัน', score: -19.29549891973697 }
{ rank: 493, text: 'คอยห่างหัน', score: -19.330479601133494 }
{ rank: 494, text: 'คาดง่ายพัน', score: -19.339849713722955 }
{ rank: 495, text: 'ครบง่ายฝัน', score: -19.354464473274025 }
{ rank: 496, text: 'คอยร่างฝัน', score: -19.370551835125454 }
{ rank: 497, text: 'คณะห่างพัน', score: -19.378810496680124 }
{ rank: 498, text: 'คาดอ่านคัน', score: -19.391728602215416 }
{ rank: 499, text: 'คณะช่างคัน', score: -19.420782667681618 }
{ rank: 500, text: 'ครบร่างพัน', score: -19.4261043388724 }
{ rank: 501, text: 'คาดช่างหัน', score: -19.435162056019077 }
{ rank: 502, text: 'คอยข่าวฝัน', score: -19.46191969215604 }
{ rank: 503, text: 'คอยจ่ายพัน', score: -19.491243496863063 }
{ rank: 504, text: 'ครบง่ายคัน', score: -19.499112706004887 }
{ rank: 505, text: 'คาดง่ายฝัน', score: -19.50627048614203 }
{ rank: 506, text: 'คอยร่างคัน', score: -19.515200067856316 }
{ rank: 507, text: 'ครบข่าวพัน', score: -19.51747219590299 }
{ rank: 508, text: 'คณะห่างฝัน', score: -19.545231269099197 }
{ rank: 509, text: 'ครบห่างหัน', score: -19.552452877299515 }
{ rank: 510, text: 'คาดร่างพัน', score: -19.577910351740403 }
{ rank: 511, text: 'ครบร่างฝัน', score: -19.592525111291472 }
{ rank: 512, text: 'คอยข่าวคัน', score: -19.606567924886903 }
{ rank: 513, text: 'คาดง่ายคัน', score: -19.65091871887289 }
{ rank: 514, text: 'คอยจ่ายฝัน', score: -19.657664269282137 }
{ rank: 515, text: 'คาดข่าวพัน', score: -19.669278208770994 }
{ rank: 516, text: 'คอยช่างพัน', score: -19.67924688712445 }
{ rank: 517, text: 'ครบข่าวฝัน', score: -19.683892968322063 }
{ rank: 518, text: 'คณะห่างคัน', score: -19.68987950183006 }
{ rank: 519, text: 'คาดห่างหัน', score: -19.70425889016752 }
{ rank: 520, text: 'ครบจ่ายพัน', score: -19.713216773029085 }
{ rank: 521, text: 'ครบร่างคัน', score: -19.737173344022334 }
{ rank: 522, text: 'คาดร่างฝัน', score: -19.744331124159476 }
{ rank: 523, text: 'คอยจ่ายคัน', score: -19.802312502013 }
{ rank: 524, text: 'ครบข่าวคัน', score: -19.828541201052925 }
{ rank: 525, text: 'คาดข่าวฝัน', score: -19.835698981190067 }
{ rank: 526, text: 'คอยช่างฝัน', score: -19.845667659543523 }
{ rank: 527, text: 'คาดจ่ายพัน', score: -19.86502278589709 }
{ rank: 528, text: 'ครบจ่ายฝัน', score: -19.87963754544816 }
{ rank: 529, text: 'คาดร่างคัน', score: -19.88897935689034 }
{ rank: 530, text: 'ครบช่างพัน', score: -19.90122016329047 }
{ rank: 531, text: 'คอยห่างพัน', score: -19.94834372127289 }
{ rank: 532, text: 'คาดข่าวคัน', score: -19.98034721392093 }
{ rank: 533, text: 'คอยช่างคัน', score: -19.990315892274385 }
{ rank: 534, text: 'ครบจ่ายคัน', score: -20.02428577817902 }
{ rank: 535, text: 'คาดจ่ายฝัน', score: -20.031443558316163 }
{ rank: 536, text: 'คาดช่างพัน', score: -20.053026176158475 }
{ rank: 537, text: 'ครบช่างฝัน', score: -20.067640935709544 }
{ rank: 538, text: 'คอยห่างฝัน', score: -20.114764493691965 }
{ rank: 539, text: 'ครบห่างพัน', score: -20.170316997438913 }
{ rank: 540, text: 'คาดจ่ายคัน', score: -20.176091791047025 }
{ rank: 541, text: 'ครบช่างคัน', score: -20.212289168440407 }
{ rank: 542, text: 'คาดช่างฝัน', score: -20.21944694857755 }
{ rank: 543, text: 'คอยห่างคัน', score: -20.259412726422827 }
{ rank: 544, text: 'คาดห่างพัน', score: -20.322123010306917 }
{ rank: 545, text: 'ครบห่างฝัน', score: -20.336737769857987 }
{ rank: 546, text: 'คาดช่างคัน', score: -20.36409518130841 }
{ rank: 547, text: 'ครบห่างคัน', score: -20.48138600258885 }
{ rank: 548, text: 'คาดห่างฝัน', score: -20.48854378272599 }
{ rank: 549, text: 'คาดห่างคัน', score: -20.633192015456853 }
{ rank: 1, text: 'คนอย่างฉัน', score: -44.690447669361376 }
{ rank: 2, text: 'คนอย่างมัน', score: -47.2251058293311 }
{ rank: 3, text: 'คนกล่าวกัน', score: -56.29595951475635 }
{ rank: 4, text: 'คนอย่างกัน', score: -56.325614806511055 }
{ rank: 5, text: 'คนอย่างวัน', score: -57.13401657637402 }
{ rank: 6, text: 'คนอย่างอัน', score: -58.122868795056746 }
{ rank: 7, text: 'คนอย่างพัน', score: -62.128831178155444 }
{ rank: 8, text: 'คนอย่างหัน', score: -65.24024776184243 }
{ rank: 9, text: 'คนอย่างฝัน', score: -66.02453265440089 }
{ rank: 10, text: 'คงอย่างฉัน', score: -67.30995675781212 }
{ rank: 11, text: 'คณะต่างกัน', score: -67.34764930514609 }
{ rank: 12, text: 'ควรอ่านกัน', score: -67.73259684262938 }
{ rank: 13, text: 'คงอย่างมัน', score: -68.08102632552047 }
{ rank: 14, text: 'คนกล่าวมัน', score: -68.23539914688956 }
{ rank: 15, text: 'คนกล่าวอัน', score: -68.60884804109877 }
{ rank: 16, text: 'คงอย่างกัน', score: -69.54759298908016 }
{ rank: 17, text: 'ควรอ่านมัน', score: -70.07734848037622 }
{ rank: 18, text: 'คงอย่างวัน', score: -70.35599475894313 }
{ rank: 19, text: 'ควรอ่านฉัน', score: -71.3155544563444 }
{ rank: 20, text: 'คงอย่างอัน', score: -71.34484697762585 }
{ rank: 21, text: 'คนกล่าวฉัน', score: -71.7112309499064 }
{ rank: 22, text: 'คนกล่าววัน', score: -72.12943508379198 }
{ rank: 23, text: 'ควรอ่านวัน', score: -72.54468880644632 }
{ rank: 24, text: 'ควรจ่ายกัน', score: -73.03147584918095 }
{ rank: 25, text: 'ควรอ่านอัน', score: -73.44652964813942 }
{ rank: 26, text: 'คนกล่าวหัน', score: -73.73379684319423 }
{ rank: 27, text: 'ควรท่านกัน', score: -73.9653623429455 }
{ rank: 28, text: 'ควรต่างกัน', score: -74.11992871726984 }
{ rank: 29, text: 'คนกล่าวพัน', score: -74.35166096333361 }
{ rank: 30, text: 'คนกล่าวฝัน', score: -74.5180817357527 }
{ rank: 31, text: 'คณะต่างหัน', score: -74.93150270647496 }
{ rank: 32, text: 'ควรจ่ายฉัน', score: -74.99028940307217 }
{ rank: 33, text: 'คณะต่างวัน', score: -75.34204396761498 }
{ rank: 34, text: 'คงอย่างพัน', score: -75.35080936072454 }
{ rank: 35, text: 'คณะต่างมัน', score: -75.87043591509888 }
{ rank: 36, text: 'ควรจ่ายมัน', score: -75.93688548444166 }
{ rank: 37, text: 'ควรท่านวัน', score: -76.01695763028768 }
{ rank: 38, text: 'ควรท่านมัน', score: -76.03452395400558 }
{ rank: 39, text: 'ควรจ่ายวัน', score: -76.10164071751771 }
{ rank: 40, text: 'คอยอ่านกัน', score: -76.27907973179501 }
{ rank: 41, text: 'ควรท่านฉัน', score: -76.29190067696203 }
{ rank: 42, text: 'ควรท่านหัน', score: -76.64049013667818 }
{ rank: 43, text: 'คณะต่างอัน', score: -76.64934991741625 }
{ rank: 44, text: 'ควรท่านอัน', score: -76.81343795632294 }
{ rank: 45, text: 'ควรจ่ายอัน', score: -77.12126459486718 }
{ rank: 46, text: 'คงกล่าวกัน', score: -77.45435510583097 }
{ rank: 47, text: 'คณะต่างพัน', score: -77.85195191960841 }
{ rank: 48, text: 'ควรห่างกัน', score: -78.12945634221295 }
{ rank: 49, text: 'ควรผ่านกัน', score: -78.28374775808999 }
{ rank: 50, text: 'คณะต่างฝัน', score: -78.42383780013564 }
{ rank: 51, text: 'คงอย่างหัน', score: -78.46222594441151 }
{ rank: 52, text: 'ควรอ่านหัน', score: -78.57147845023488 }
{ rank: 53, text: 'คอยอ่านมัน', score: -78.62383136954185 }
{ rank: 54, text: 'ควรท่านฝัน', score: -78.81106939035655 }
{ rank: 55, text: 'ควรผ่านมัน', score: -78.85267074868096 }
{ rank: 56, text: 'ควรอ่านพัน', score: -79.18934257037427 }
{ rank: 57, text: 'คงอย่างฝัน', score: -79.24651083696997 }
{ rank: 58, text: 'คณะต่างฉัน', score: -79.34626771811571 }
{ rank: 59, text: 'ควรอ่านฝัน', score: -79.35576334279335 }
{ rank: 60, text: 'ควรผ่านฉัน', score: -79.46672241557614 }
{ rank: 61, text: 'คอยอ่านฉัน', score: -79.86203734551003 }
{ rank: 62, text: 'ควรผ่านวัน', score: -80.03907722928899 }
{ rank: 63, text: 'คอยอ่านวัน', score: -81.09117169561195 }
{ rank: 64, text: 'ควรต่างหัน', score: -81.70378211859871 }
{ rank: 65, text: 'ควรจ่ายหัน', score: -81.84074828885448 }
{ rank: 66, text: 'คอยอ่านอัน', score: -81.99301253730505 }
{ rank: 67, text: 'คณะช่างมัน', score: -82.03475891748909 }
{ rank: 68, text: 'ควรต่างวัน', score: -82.11432337973872 }
{ rank: 69, text: 'ควรผ่านอัน', score: -82.15731339530657 }
{ rank: 70, text: 'ควรจ่ายพัน', score: -82.45861240899387 }
{ rank: 71, text: 'ควรจ่ายฝัน', score: -82.62503318141296 }
{ rank: 72, text: 'ควรต่างมัน', score: -82.64271532722262 }
{ rank: 73, text: 'ควรผ่านพัน', score: -82.84908977373274 }
{ rank: 74, text: 'ควรท่านพัน', score: -83.0670765023238 }
{ rank: 75, text: 'ควรต่างอัน', score: -83.42162932954 }
{ rank: 76, text: 'คงกล่าวมัน', score: -83.55161189357196 }
{ rank: 77, text: 'คณะฝ่ายกัน', score: -83.70706383519949 }
{ rank: 78, text: 'คอยต่างกัน', score: -83.78295228896394 }
{ rank: 79, text: 'คงกล่าวอัน', score: -83.92506078778116 }
{ rank: 80, text: 'คณะห่างกัน', score: -84.06413469423696 }
{ rank: 81, text: 'ควรห่างฉัน', score: -84.22076622429064 }
{ rank: 82, text: 'ควรช่างมัน', score: -84.25178915367778 }
{ rank: 83, text: 'คณะช่างฉัน', score: -84.45231894610141 }
{ rank: 84, text: 'คณะอ่านกัน', score: -84.52009333314187 }
{ rank: 85, text: 'ควรต่างพัน', score: -84.62423133173215 }
{ rank: 86, text: 'ควรข่าวกัน', score: -84.73225276911955 }
{ rank: 87, text: 'ควรต่างฝัน', score: -85.1961172122594 }
{ rank: 88, text: 'ควรฝ่ายกัน', score: -85.23094689082822 }
{ rank: 89, text: 'คณะฝ่ายมัน', score: -85.33153962499813 }
{ rank: 90, text: 'คณะฝ่ายฉัน', score: -85.48355583229676 }
{ rank: 91, text: 'ควรร่างฉัน', score: -85.50108617731208 }
{ rank: 92, text: 'ควรร่างกัน', score: -85.65248582376745 }
{ rank: 93, text: 'คณะผ่านกัน', score: -85.82786402254808 }
{ rank: 94, text: 'คณะช่างฝัน', score: -86.0194788450197 }
{ rank: 95, text: 'ควรข่าวมัน', score: -86.1037320444543 }
{ rank: 96, text: 'ควรต่างฉัน', score: -86.11854713023945 }
{ rank: 97, text: 'คณะฝ่ายหัน', score: -86.1198273644647 }
{ rank: 98, text: 'ควรร่างอัน', score: -86.12798397233082 }
{ rank: 99, text: 'คอยท่านกัน', score: -86.14675316331362 }
{ rank: 100, text: 'คณะท่านกัน', score: -86.14768864746989 }
{ rank: 101, text: 'ควรห่างหัน', score: -86.24333211757849 }
{ rank: 102, text: 'คณะผ่านมัน', score: -86.39678701313906 }
{ rank: 103, text: 'คณะฝ่ายอัน', score: -86.51591873542367 }
{ rank: 104, text: 'ควรช่างฉัน', score: -86.66934918229009 }
{ rank: 105, text: 'ควรง่ายกัน', score: -86.8007195468699 }
{ rank: 106, text: 'ควรฝ่ายมัน', score: -86.85542268062687 }
{ rank: 107, text: 'คณะอ่านมัน', score: -86.86484497088871 }
{ rank: 108, text: 'คณะข่าวกัน', score: -86.9376504173172 }
{ rank: 109, text: 'ควรฝ่ายฉัน', score: -87.00743888792549 }
{ rank: 110, text: 'คณะผ่านฉัน', score: -87.01083868003425 }
{ rank: 111, text: 'คงกล่าวฉัน', score: -87.02744369658879 }
{ rank: 112, text: 'ควรร่างมัน', score: -87.05381806225188 }
{ rank: 113, text: 'คอยอ่านหัน', score: -87.11796133940051 }
{ rank: 114, text: 'คอยจ่ายกัน', score: -87.33313020574917 }
{ rank: 115, text: 'คณะจ่ายกัน', score: -87.33406568990544 }
{ rank: 116, text: 'คงกล่าววัน', score: -87.44564783047437 }
{ rank: 117, text: 'ควรง่ายมัน', score: -87.50890460479438 }
{ rank: 118, text: 'ควรผ่านหัน', score: -87.56994426985383 }
{ rank: 119, text: 'คณะผ่านวัน', score: -87.5831934937471 }
{ rank: 120, text: 'ควรฝ่ายหัน', score: -87.64371042009344 }
{ rank: 121, text: 'คอยร่างฉัน', score: -87.70554834135345 }
{ rank: 122, text: 'คณะร่างฉัน', score: -87.70648382550972 }
{ rank: 123, text: 'คอยอ่านพัน', score: -87.73582545953991 }
{ rank: 124, text: 'คอยห่างกัน', score: -87.79247991390706 }
{ rank: 125, text: 'คอยร่างกัน', score: -87.85694798780882 }
{ rank: 126, text: 'คณะร่างกัน', score: -87.85788347196508 }
{ rank: 127, text: 'คอยอ่านฝัน', score: -87.90224623195897 }
{ rank: 128, text: 'ควรข่าวฉัน', score: -87.99034930714103 }
{ rank: 129, text: 'ควรฝ่ายอัน', score: -88.0398017910524 }
{ rank: 130, text: 'คณะอ่านฉัน', score: -88.1030509468569 }
{ rank: 131, text: 'คะอย่างฉัน', score: -88.18734602899663 }
{ rank: 132, text: 'คอยท่านวัน', score: -88.1983484506558 }
{ rank: 133, text: 'คณะท่านวัน', score: -88.19928393481207 }
{ rank: 134, text: 'คอยท่านมัน', score: -88.2159147743737 }
{ rank: 135, text: 'คณะท่านมัน', score: -88.21685025852997 }
{ rank: 136, text: 'ควรช่างฝัน', score: -88.23650908120838 }
{ rank: 137, text: 'คณะข่าวมัน', score: -88.30912969265195 }
{ rank: 138, text: 'คอยร่างอัน', score: -88.3324461363722 }
{ rank: 139, text: 'คณะร่างอัน', score: -88.33338162052846 }
{ rank: 140, text: 'ควรผ่านฝัน', score: -88.3542291624123 }
{ rank: 141, text: 'ควรข่าววัน', score: -88.40855344102664 }
{ rank: 142, text: 'คอยท่านฉัน', score: -88.47329149733017 }
{ rank: 143, text: 'คณะท่านฉัน', score: -88.47422698148642 }
{ rank: 144, text: 'ควรข่าวอัน', score: -88.61724710215978 }
{ rank: 145, text: 'ควรง่ายอัน', score: -88.6932837152199 }
{ rank: 146, text: 'คอยท่านหัน', score: -88.82188095704632 }
{ rank: 147, text: 'คณะท่านหัน', score: -88.82281644120258 }
{ rank: 148, text: 'ควรห่างมัน', score: -88.8966430094865 }
{ rank: 149, text: 'คะอย่างมัน', score: -88.95841559670498 }
{ rank: 150, text: 'คอยท่านอัน', score: -88.99482877669107 }
{ rank: 151, text: 'คณะท่านอัน', score: -88.99576426084734 }
{ rank: 152, text: 'คณะง่ายกัน', score: -89.00611719506753 }
{ rank: 153, text: 'คณะช่างกัน', score: -89.0261464769431 }
{ rank: 154, text: 'คงกล่าวหัน', score: -89.05000958987662 }
{ rank: 155, text: 'ควรห่างวัน', score: -89.06139824256255 }
{ rank: 156, text: 'คอยร่างมัน', score: -89.25828022629325 }
{ rank: 157, text: 'คณะร่างมัน', score: -89.25921571044952 }
{ rank: 158, text: 'คอยจ่ายฉัน', score: -89.29194375964039 }
{ rank: 159, text: 'คณะจ่ายฉัน', score: -89.29287924379666 }
{ rank: 160, text: 'คณะอ่านวัน', score: -89.33218529695881 }
{ rank: 161, text: 'คอยผ่านกัน', score: -89.55620924221819 }
{ rank: 162, text: 'คณะฝ่ายวัน', score: -89.63104067000873 }
{ rank: 163, text: 'คงกล่าวพัน', score: -89.66787371001601 }
{ rank: 164, text: 'ควรห่างอัน', score: -89.67555701180387 }
{ rank: 165, text: 'คณะผ่านอัน', score: -89.70142965976468 }
{ rank: 166, text: 'คณะง่ายมัน', score: -89.71430225299201 }
{ rank: 167, text: 'คงกล่าวฝัน', score: -89.8342944824351 }
{ rank: 168, text: 'คอยผ่านมัน', score: -90.12513223280916 }
{ rank: 169, text: 'คณะห่างฉัน', score: -90.15544457631465 }
{ rank: 170, text: 'คอยช่างมัน', score: -90.18553202154551 }
{ rank: 171, text: 'คณะข่าวฉัน', score: -90.19574695533868 }
{ rank: 172, text: 'คณะอ่านอัน', score: -90.23402613865191 }
{ rank: 173, text: 'คอยจ่ายมัน', score: -90.23853984100988 }
{ rank: 174, text: 'คณะจ่ายมัน', score: -90.23947532516615 }
{ rank: 175, text: 'คณะช่างวัน', score: -90.3045518760518 }
{ rank: 176, text: 'คณะผ่านพัน', score: -90.39320603819085 }
{ rank: 177, text: 'คอยจ่ายวัน', score: -90.40329507408593 }
{ rank: 178, text: 'คณะจ่ายวัน', score: -90.4042305582422 }
{ rank: 179, text: 'คะอย่างกัน', score: -90.42498226026467 }
{ rank: 180, text: 'คณะข่าววัน', score: -90.61395108922427 }
{ rank: 181, text: 'คอยข่าวกัน', score: -90.6659956369873 }
{ rank: 182, text: 'คอยผ่านฉัน', score: -90.73918389970436 }
{ rank: 183, text: 'คณะข่าวอัน', score: -90.82264475035743 }
{ rank: 184, text: 'คณะง่ายอัน', score: -90.89868136341755 }
{ rank: 185, text: 'คณะช่างอัน', score: -90.91871064529312 }
{ rank: 186, text: 'คอยท่านฝัน', score: -90.99246021072469 }
{ rank: 187, text: 'คณะท่านฝัน', score: -90.99339569488095 }
{ rank: 188, text: 'ควรฝ่ายวัน', score: -91.15492372563745 }
{ rank: 189, text: 'คอยฝ่ายกัน', score: -91.16468975869597 }
{ rank: 190, text: 'คะอย่างวัน', score: -91.23338403012764 }
{ rank: 191, text: 'ควรช่างกัน', score: -91.24317671313179 }
{ rank: 192, text: 'ควรห่างพัน', score: -91.28362412210419 }
{ rank: 193, text: 'คอยผ่านวัน', score: -91.3115387134172 }
{ rank: 194, text: 'ครบต่างกัน', score: -91.36094198124383 }
{ rank: 195, text: 'คอยต่างหัน', score: -91.36680569029281 }
{ rank: 196, text: 'ควรง่ายฉัน', score: -91.39020151591939 }
{ rank: 197, text: 'คอยจ่ายอัน', score: -91.4229189514354 }
{ rank: 198, text: 'คณะจ่ายอัน', score: -91.42385443559168 }
{ rank: 199, text: 'ควรห่างฝัน', score: -91.45004489452327 }
{ rank: 200, text: 'คอยต่างวัน', score: -91.77734695143283 }
{ rank: 201, text: 'ควรง่ายวัน', score: -91.80840564980497 }
{ rank: 202, text: 'คณะฝ่ายพัน', score: -91.85326654955037 }
{ rank: 203, text: 'คณะช่างหัน', score: -91.90891363545404 }
{ rank: 204, text: 'คณะฝ่ายฝัน', score: -92.01968732196943 }
{ rank: 205, text: 'คอยข่าวมัน', score: -92.03747491232205 }
{ rank: 206, text: 'ควรร่างวัน', score: -92.04646628782241 }
{ rank: 207, text: 'คณะห่างหัน', score: -92.1780104696025 }
{ rank: 208, text: 'คะอย่างอัน', score: -92.22223624881036 }
{ rank: 209, text: 'คอยต่างมัน', score: -92.30573889891673 }
{ rank: 210, text: 'ควรช่างวัน', score: -92.52158211224048 }
{ rank: 211, text: 'คณะช่างพัน', score: -92.52677775559344 }
{ rank: 212, text: 'คอยช่างฉัน', score: -92.60309205015784 }
{ rank: 213, text: 'คอยง่ายกัน', score: -92.73446241473764 }
{ rank: 214, text: 'คอยฝ่ายมัน', score: -92.78916554849461 }
{ rank: 215, text: 'คอยฝ่ายฉัน', score: -92.94118175579322 }
{ rank: 216, text: 'คอยต่างอัน', score: -93.0846529012341 }
{ rank: 217, text: 'ควรช่างอัน', score: -93.13574088148181 }
{ rank: 218, text: 'ควรฝ่ายพัน', score: -93.37714960517908 }
{ rank: 219, text: 'ควรง่ายหัน', score: -93.41276740920722 }
{ rank: 220, text: 'คอยผ่านอัน', score: -93.42977487943479 }
{ rank: 221, text: 'คอยง่ายมัน', score: -93.44264747266212 }
{ rank: 222, text: 'ควรฝ่ายฝัน', score: -93.54357037759817 }
{ rank: 223, text: 'คอยฝ่ายหัน', score: -93.57745328796118 }
{ rank: 224, text: 'คณะง่ายฉัน', score: -93.59559916411702 }
{ rank: 225, text: 'ควรร่างหัน', score: -93.65082804722465 }
{ rank: 226, text: 'ควรข่าวหัน', score: -93.74219590425525 }
{ rank: 227, text: 'คอยห่างฉัน', score: -93.88378979598475 }
{ rank: 228, text: 'คอยข่าวฉัน', score: -93.92409217500878 }
{ rank: 229, text: 'คอยฝ่ายอัน', score: -93.97354465892013 }
{ rank: 230, text: 'คณะง่ายวัน', score: -94.01380329800261 }
{ rank: 231, text: 'ควรง่ายพัน', score: -94.0306315293466 }
{ rank: 232, text: 'คอยผ่านพัน', score: -94.12155125786096 }
{ rank: 233, text: 'ควรช่างหัน', score: -94.12594387164273 }
{ rank: 234, text: 'คอยช่างฝัน', score: -94.17025194907612 }
{ rank: 235, text: 'ควรง่ายฝัน', score: -94.19705230176568 }
{ rank: 236, text: 'คอยร่างวัน', score: -94.25092845186379 }
{ rank: 237, text: 'คณะร่างวัน', score: -94.25186393602004 }
{ rank: 238, text: 'ควรร่างพัน', score: -94.26869216736405 }
{ rank: 239, text: 'คอยต่างพัน', score: -94.28725490342626 }
{ rank: 240, text: 'คอยข่าววัน', score: -94.34229630889438 }
{ rank: 241, text: 'ควรข่าวพัน', score: -94.36006002439464 }
{ rank: 242, text: 'ควรร่างฝัน', score: -94.43511293978312 }
{ rank: 243, text: 'คะกล่าวกัน', score: -94.48424118106153 }
{ rank: 244, text: 'ควรข่าวฝัน', score: -94.52648079681371 }
{ rank: 245, text: 'คอยข่าวอัน', score: -94.55098997002753 }
{ rank: 246, text: 'คอยง่ายอัน', score: -94.62702658308766 }
{ rank: 247, text: 'ควรช่างพัน', score: -94.74380799178212 }
{ rank: 248, text: 'คณะห่างมัน', score: -94.8313213615105 }
{ rank: 249, text: 'คอยต่างฝัน', score: -94.85914078395349 }
{ rank: 250, text: 'คณะห่างวัน', score: -94.99607659458655 }
{ rank: 251, text: 'คณะผ่านหัน', score: -95.11406053431193 }
{ rank: 252, text: 'คอยท่านพัน', score: -95.24846732269192 }
{ rank: 253, text: 'คณะท่านพัน', score: -95.2494028068482 }
{ rank: 254, text: 'คณะอ่านหัน', score: -95.35897494074737 }
{ rank: 255, text: 'ครบห่างกัน', score: -95.37046960618694 }
{ rank: 256, text: 'คณะห่างอัน', score: -95.61023536382788 }
{ rank: 257, text: 'คณะง่ายหัน', score: -95.61816505740485 }
{ rank: 258, text: 'คอยต่างฉัน', score: -95.78157070193356 }
{ rank: 259, text: 'ครบอ่านกัน', score: -95.82642824509186 }
{ rank: 260, text: 'คอยร่างหัน', score: -95.85529021126604 }
{ rank: 261, text: 'คณะร่างหัน', score: -95.8562256954223 }
{ rank: 262, text: 'คณะผ่านฝัน', score: -95.8983454268704 }
{ rank: 263, text: 'คอยห่างหัน', score: -95.9063556892726 }
{ rank: 264, text: 'คณะข่าวหัน', score: -95.94759355245289 }
{ rank: 265, text: 'คณะอ่านพัน', score: -95.97683906088676 }
{ rank: 266, text: 'คอยจ่ายหัน', score: -96.14240264542272 }
{ rank: 267, text: 'คณะอ่านฝัน', score: -96.14325983330585 }
{ rank: 268, text: 'คณะจ่ายหัน', score: -96.14333812957898 }
{ rank: 269, text: 'คะอย่างพัน', score: -96.22819863190905 }
{ rank: 270, text: 'คณะง่ายพัน', score: -96.23602917754425 }
{ rank: 271, text: 'คณะง่ายฝัน', score: -96.40244994996331 }
{ rank: 272, text: 'คอยร่างพัน', score: -96.47315433140542 }
{ rank: 273, text: 'คณะร่างพัน', score: -96.47408981556168 }
{ rank: 274, text: 'คณะข่าวพัน', score: -96.56545767259229 }
{ rank: 275, text: 'คอยร่างฝัน', score: -96.6395751038245 }
{ rank: 276, text: 'คณะร่างฝัน', score: -96.64051058798077 }
{ rank: 277, text: 'คณะข่าวฝัน', score: -96.73187844501135 }
{ rank: 278, text: 'คอยจ่ายพัน', score: -96.76026676556211 }
{ rank: 279, text: 'คณะจ่ายพัน', score: -96.76120224971837 }
{ rank: 280, text: 'คอยจ่ายฝัน', score: -96.92668753798118 }
{ rank: 281, text: 'คณะจ่ายฝัน', score: -96.92762302213745 }
{ rank: 282, text: 'คอยฝ่ายวัน', score: -97.0886665935052 }
{ rank: 283, text: 'ครบผ่านกัน', score: -97.13419893449807 }
{ rank: 284, text: 'คอยช่างกัน', score: -97.17691958099952 }
{ rank: 285, text: 'คณะห่างพัน', score: -97.2183024741282 }
{ rank: 286, text: 'คอยง่ายฉัน', score: -97.32394438378712 }
{ rank: 287, text: 'คณะห่างฝัน', score: -97.38472324654728 }
{ rank: 288, text: 'ครบท่านกัน', score: -97.45402355941988 }
{ rank: 289, text: 'ครบผ่านมัน', score: -97.70312192508905 }
{ rank: 290, text: 'คอยง่ายวัน', score: -97.74214851767272 }
{ rank: 291, text: 'ครบช่างมัน', score: -97.7635217138254 }
{ rank: 292, text: 'ครบอ่านมัน', score: -98.1711798828387 }
{ rank: 293, text: 'ครบข่าวกัน', score: -98.24398532926719 }
{ rank: 294, text: 'ครบผ่านฉัน', score: -98.31717359198424 }
{ rank: 295, text: 'คอยช่างวัน', score: -98.45532498010823 }
{ rank: 296, text: 'คอยห่างมัน', score: -98.55966658118061 }
{ rank: 297, text: 'ครบจ่ายกัน', score: -98.64040060185543 }
{ rank: 298, text: 'คอยห่างวัน', score: -98.72442181425666 }
{ rank: 299, text: 'ครบฝ่ายกัน', score: -98.74267945097586 }
{ rank: 300, text: 'คอยผ่านหัน', score: -98.84240575398204 }
{ rank: 301, text: 'ครบผ่านวัน', score: -98.88952840569709 }
{ rank: 302, text: 'ครบต่างหัน', score: -98.94479538257269 }
{ rank: 303, text: 'ครบร่างฉัน', score: -99.01281873745971 }
{ rank: 304, text: 'คอยช่างอัน', score: -99.06948374934954 }
{ rank: 305, text: 'ครบร่างกัน', score: -99.16421838391507 }
{ rank: 306, text: 'คอยฝ่ายพัน', score: -99.31089247304683 }
{ rank: 307, text: 'คอยห่างอัน', score: -99.33858058349799 }
{ rank: 308, text: 'คะอย่างหัน', score: -99.33961521559603 }
{ rank: 309, text: 'คอยง่ายหัน', score: -99.34651027707496 }
{ rank: 310, text: 'ครบต่างวัน', score: -99.35533664371272 }
{ rank: 311, text: 'ครบอ่านฉัน', score: -99.40938585880689 }
{ rank: 312, text: 'คอยฝ่ายฝัน', score: -99.47731324546591 }
{ rank: 313, text: 'ครบท่านวัน', score: -99.50561884676206 }
{ rank: 314, text: 'ครบท่านมัน', score: -99.52318517047996 }
{ rank: 315, text: 'ครบข่าวมัน', score: -99.61546460460194 }
{ rank: 316, text: 'คอยผ่านฝัน', score: -99.62669064654051 }
{ rank: 317, text: 'ครบร่างอัน', score: -99.63971653247845 }
{ rank: 318, text: 'คอยข่าวหัน', score: -99.67593877212299 }
{ rank: 319, text: 'ครบท่านฉัน', score: -99.78056189343641 }
{ rank: 320, text: 'ครบต่างมัน', score: -99.88372859119661 }
{ rank: 321, text: 'คอยง่ายพัน', score: -99.96437439721436 }
{ rank: 322, text: 'คอยช่างหัน', score: -100.05968673951047 }
{ rank: 323, text: 'คะอย่างฝัน', score: -100.12390010815449 }
{ rank: 324, text: 'ครบท่านหัน', score: -100.12915135315257 }
{ rank: 325, text: 'คอยง่ายฝัน', score: -100.13079516963342 }
{ rank: 326, text: 'ครบช่างฉัน', score: -100.18108174243773 }
{ rank: 327, text: 'คอยข่าวพัน', score: -100.29380289226239 }
{ rank: 328, text: 'ครบท่านอัน', score: -100.30209917279733 }
{ rank: 329, text: 'ครบง่ายกัน', score: -100.31245210701752 }
{ rank: 330, text: 'ครบฝ่ายมัน', score: -100.36715524077451 }
{ rank: 331, text: 'คอยข่าวฝัน', score: -100.46022366468145 }
{ rank: 332, text: 'ครบฝ่ายฉัน', score: -100.51917144807312 }
{ rank: 333, text: 'ครบร่างมัน', score: -100.56555062239951 }
{ rank: 334, text: 'คะกล่าวมัน', score: -100.58149796880252 }
{ rank: 335, text: 'ครบจ่ายฉัน', score: -100.59921415574665 }
{ rank: 336, text: 'ครบอ่านวัน', score: -100.6385202089088 }
{ rank: 337, text: 'ครบต่างอัน', score: -100.66264259351398 }
{ rank: 338, text: 'คอยช่างพัน', score: -100.67755085964987 }
{ rank: 339, text: 'คอยห่างพัน', score: -100.9466476937983 }
{ rank: 340, text: 'คะกล่าวอัน', score: -100.95494686301173 }
{ rank: 341, text: 'ครบผ่านอัน', score: -101.00776457171467 }
{ rank: 342, text: 'ครบง่ายมัน', score: -101.020637164942 }
{ rank: 343, text: 'คอยห่างฝัน', score: -101.11306846621738 }
{ rank: 344, text: 'ครบฝ่ายหัน', score: -101.15544298024108 }
{ rank: 345, text: 'ครบห่างฉัน', score: -101.46177948826464 }
{ rank: 346, text: 'ครบข่าวฉัน', score: -101.50208186728867 }
{ rank: 347, text: 'ครบอ่านอัน', score: -101.5403610506019 }
{ rank: 348, text: 'ครบจ่ายมัน', score: -101.54581023711614 }
{ rank: 349, text: 'ครบฝ่ายอัน', score: -101.55153435120003 }
{ rank: 350, text: 'ครบผ่านพัน', score: -101.69954095014084 }
{ rank: 351, text: 'ครบจ่ายวัน', score: -101.7105654701922 }
{ rank: 352, text: 'ครบช่างฝัน', score: -101.748241641356 }
{ rank: 353, text: 'ครบต่างพัน', score: -101.86524459570614 }
{ rank: 354, text: 'ครบข่าววัน', score: -101.92028600117426 }
{ rank: 355, text: 'ครบข่าวอัน', score: -102.12897966230742 }
{ rank: 356, text: 'ครบง่ายอัน', score: -102.20501627536754 }
{ rank: 357, text: 'ครบท่านฝัน', score: -102.29973060683093 }
{ rank: 358, text: 'ครบต่างฝัน', score: -102.43713047623338 }
{ rank: 359, text: 'ครบจ่ายอัน', score: -102.73018934754167 }
{ rank: 360, text: 'ครบต่างฉัน', score: -103.35956039421345 }
{ rank: 361, text: 'ครบห่างหัน', score: -103.48434538155249 }
{ rank: 362, text: 'คะกล่าวฉัน', score: -104.05732977181935 }
{ rank: 363, text: 'คะกล่าววัน', score: -104.47553390570494 }
{ rank: 364, text: 'ครบฝ่ายวัน', score: -104.66665628578508 }
{ rank: 365, text: 'ครบช่างกัน', score: -104.75490927327941 }
{ rank: 366, text: 'ครบง่ายฉัน', score: -104.90193407606701 }
{ rank: 367, text: 'ครบง่ายวัน', score: -105.3201382099526 }
{ rank: 368, text: 'ครบร่างวัน', score: -105.55819884797003 }
{ rank: 369, text: 'ครบช่างวัน', score: -106.03331467238812 }
{ rank: 370, text: 'คะกล่าวหัน', score: -106.07989566510719 }
{ rank: 371, text: 'ครบห่างมัน', score: -106.1376562734605 }
{ rank: 372, text: 'ครบห่างวัน', score: -106.30241150653654 }
{ rank: 373, text: 'ครบผ่านหัน', score: -106.42039544626192 }
{ rank: 374, text: 'ครบท่านพัน', score: -106.55573771879818 }
{ rank: 375, text: 'ครบช่างอัน', score: -106.64747344162943 }
{ rank: 376, text: 'ครบอ่านหัน', score: -106.66530985269736 }
{ rank: 377, text: 'คะกล่าวพัน', score: -106.69775978524657 }
{ rank: 378, text: 'คะกล่าวฝัน', score: -106.86418055766566 }
{ rank: 379, text: 'ครบฝ่ายพัน', score: -106.88888216532672 }
{ rank: 380, text: 'ครบห่างอัน', score: -106.91657027577787 }
{ rank: 381, text: 'ครบง่ายหัน', score: -106.92449996935484 }
{ rank: 382, text: 'ครบฝ่ายฝัน', score: -107.05530293774581 }
{ rank: 383, text: 'ครบร่างหัน', score: -107.16256060737228 }
{ rank: 384, text: 'ครบผ่านฝัน', score: -107.2046803388204 }
{ rank: 385, text: 'ครบข่าวหัน', score: -107.25392846440288 }
{ rank: 386, text: 'ครบอ่านพัน', score: -107.28317397283675 }
{ rank: 387, text: 'ครบอ่านฝัน', score: -107.44959474525584 }
{ rank: 388, text: 'ครบจ่ายหัน', score: -107.44967304152897 }
{ rank: 389, text: 'ครบง่ายพัน', score: -107.54236408949424 }
{ rank: 390, text: 'ครบช่างหัน', score: -107.63767643179035 }
{ rank: 391, text: 'ครบง่ายฝัน', score: -107.7087848619133 }
{ rank: 392, text: 'ครบร่างพัน', score: -107.78042472751167 }
{ rank: 393, text: 'ครบข่าวพัน', score: -107.87179258454228 }
{ rank: 394, text: 'ครบร่างฝัน', score: -107.94684549993076 }
{ rank: 395, text: 'ครบข่าวฝัน', score: -108.03821335696134 }
{ rank: 396, text: 'ครบจ่ายพัน', score: -108.06753716166835 }
{ rank: 397, text: 'ครบจ่ายฝัน', score: -108.23395793408744 }
{ rank: 398, text: 'ครบช่างพัน', score: -108.25554055192976 }
{ rank: 399, text: 'ครบห่างพัน', score: -108.52463738607818 }
{ rank: 400, text: 'ครบห่างฝัน', score: -108.69105815849727 }
const fs = require('fs')
const bigram = require('./bigram')
const trigram = require('./trigram')
const wordlist = fs.readFileSync('./thaiwordlist.txt', 'utf8')
.split('\n')
.map(l => l.trim())
.filter(w => (w.length >= 2 && !/[^\u0E01-\u0EFF]/.test(w)))
.slice(0, 1000)
// let found = 0
const floatingHanging = new Set('ัิีึืฺุู็่้๊๋์ํ๎ำ')
const ok = c => !floatingHanging.has(c)
const solutions = []
function search(text, wordBeforePrevious, previousWord, score) {
// Base case
if (text.length === 10) {
// console.log(++found, text, score)
solutions.push({ text, score })
return
}
// Recursive
for (let i = 0; i < wordlist.length; i++) {
const word = wordlist[i]
const next = text + word
if (next.length > 10) continue
if (next.length >= 1 && next[0] !== 'ค') continue
if (next.length >= 2 && !ok(next[1])) continue
if (next.length >= 3 && !ok(next[2])) continue
if (next.length >= 4 && !ok(next[3])) continue
if (next.length >= 5 && next[4] !== '่') continue
if (next.length >= 6 && next[5] !== 'า') continue
if (next.length >= 7 && !ok(next[6])) continue
if (next.length >= 8 && !ok(next[7])) continue
if (next.length >= 9 && next[8] !== 'ั') continue
if (next.length >= 10 && next[9] !== 'น') continue
const thisScore = Math.log(Math.max(
trigram(wordBeforePrevious, previousWord, word),
1e-7
)) + Math.log(Math.max(
bigram(previousWord, word),
1e-7
)) + Math.log(1 / (i + 1))
const nextScore = score + thisScore
search(next, previousWord, word, nextScore)
}
}
search('', '<s/>', '<s/>', 0)
solutions.sort((a, b) => b.score - a.score)
for (const [index, solution] of solutions.entries()) {
console.log({ rank: index + 1, ...solution })
}
ที่
การ
เป็น
ใน
จะ
ของ
มี
และ
ไม่
ได้
ให้
ว่า
ไป
มา
ก็
ความ
คน
กับ
แล้ว
อยู่
หรือ
กัน
นี้
จาก
แต่
อย่าง
ต้อง
เขา
ด้วย
ขึ้น
นั้น
ผู้
ซึ่ง
ตาม
มาก
โดย
ใช้
เรื่อง
ทาง
ยัง
เรา
ทำ
ผม
เพื่อ
อีก
เมื่อ
หนึ่ง
เข้า
ถึง
ดี
เพราะ
ฉัน
ออก
เห็น
เกิด
คือ
จึง
ทำให้
กว่า
เธอ
ไทย
ตัว
ไว้
ปี
คุณ
เลย
มัน
ทั้ง
ต่อ
ถ้า
อะไร
ลง
เวลา
ต่าง
ส่วน
อาจ
ประเทศ
แบบ
วัน
ถูก
ทุก
ก่อน
ดู
อื่น
เช่น
รู้
ครั้ง
เอา
สอง
นะ
งาน
หน้า
นำ
นาย
บอก
กลับ
แห่ง
สามารถ
บาง
จน
ได้รับ
เด็ก
คิด
ด้าน
เหมือน
พระ
พูด
ชีวิต
สิ่ง
นี่
บ้าน
รับ
เคย
หลาย
ใหม่
ใคร
กลุ่ม
ปัญหา
สังคม
หา
อยาก
เสียง
คำ
คง
มอง
ใด
น้ำ
ใช่
ท่าน
ระหว่าง
สำหรับ
กำลัง
แสดง
ผล
ช่วย
เงิน
จริง
โลก
ขอ
สร้าง
ลูก
ทำงาน
พอ
เอง
ใหญ่
อัน
กำหนด
แม่
ที่สุด
2
เดิน
ระบบ
พี่
พบ
บน
เสีย
สี
แก่
น้อย
น่า
ควร
ใจ
เมือง
พัฒนา
ร่วม
มาตรา
สูง
หาก
กิน
เดียว
ตัวเอง
อาหาร
แรก
ระดับ
ส่ง
1
นัก
กล่าว
กรณี
เกี่ยวกับ
พวก
ฝ่าย
หลัง
กฎหมาย
ช่วง
จัด
เพียง
สาว
เพื่อน
ดังกล่าว
ครับ
ลักษณะ
ถาม
ตน
เริ่ม
บ้าง
ข้อ
จำนวน
รัก
รวม
บุคคล
ตา
3
ภาพ
ห้อง
อำนาจ
วันที่
หนังสือ
พิจารณา
ไหน
ยิ่ง
ผ่าน
พ่อ
ดัง
เศรษฐกิจ
ชอบ
ตั้งแต่
ตอน
เข้าใจ
ตรง
ทรง
เรียน
ตั้ง
เปิด
เพิ่ม
ภาษา
ต่อไป
ค่า
สำคัญ
รู้สึก
กระทำ
ก็ได้
การศึกษา
นั่ง
รัฐ
เท่านั้น
ข้อมูล
พ.ศ.
ขนาด
นาน
เดือน
ชื่อ
ชาติ
รัฐบาล
ฟัง
เล็ก
จีน
รถ
มือ
ละ
ตาย
ผิด
หญิง
เรียก
ภายใน
หลัก
ต้องการ
ยา
บาท
แต่ละ
เล่น
มนุษย์
ประชาชน
หมด
สาม
ซื้อ
ลด
การเมือง
ล่ะ
ผลิต
อ่าน
เสนอ
ค่ะ
อย่างไร
รักษา
ปฏิบัติ
ขาย
ก็คือ
มัก
รูป
ชาว
พร้อม
เลือก
ระยะ
ตลอด
เขียน
ใส่
ผู้หญิง
ประชุม
ติด
หน้าที่
สู่
ศึกษา
คะ
เจ้า
ความคิด
คณะกรรมการ
แค่
หรือไม่
ชั้น
เดียวกัน
สิทธิ
ราคา
ทำไม
ประโยชน์
เปลี่ยน
พยายาม
อย่า
ตอบ
ตำแหน่ง
นั่น
เก็บ
ประจำ
ปัจจุบัน
สมัย
วิธี
แม้
สัก
พื้นที่
วัฒนธรรม
โอกาส
ประเภท
สัมพันธ์
4
เนื่องจาก
เล่า
เดิม
ตนเอง
แล้วก็
จำเป็น
กระทรวง
เปลี่ยนแปลง
ถือ
ใบ
นอน
ชาย
เหตุ
ครู
ประกอบ
ชนิด
ปรากฏ
สุข
รู้จัก
รอบ
ดำเนินการ
เกิน
ร้าน
โดยเฉพาะ
หรอก
ข้าง
ง่าย
บริการ
ประมาณ
ทั้งหมด
แก
บริษัท
อาการ
โรค
ทราบ
หมอ
โครงการ
จังหวัด
ภาค
พา
คืน
น้อง
เรียกว่า
ความรู้สึก
สินค้า
ดังนั้น
อายุ
จุด
ไหม
ราชการ
เหล่านี้
ยาว
นา
แทน
เชื่อ
แตกต่าง
ครอบครัว
5
ตัวอย่าง
สภา
พรรค
วิธีการ
ที
ล้าน
โรงเรียน
หัว
ที่อยู่
นาง
คณะ
กลาง
เดินทาง
แรง
ประกาศ
วัด
หัน
จับ
สภาพ
คู่
น่ะ
ข้าว
วิจัย
นโยบาย
กลายเป็น
แนว
หนู
ตลาด
ยอม
ยืน
ไม่ว่า
ชุด
ย่อม
/
ยก
อาศัย
เท่า
เฉพาะ
สิ
บริหาร
ส่วนใหญ่
ธรรมชาติ
ความรู้
อนุญาต
วาง
เปล่า
นิยม
ควบคุม
สมาชิก
ราย
รอ
ญี่ปุ่น
ปกติ
ต้น
สอน
ประการ
ปาก
ยิ้ม
สิบ
ใกล้
หลังจาก
เพลง
ทางการ
ร่าง
หาย
ไม้
สัตว์
สัมภาษณ์
พิเศษ
นอก
จัดการ
เป็นต้น
ดูแล
รวมทั้ง
แก้ไข
ทั้งนี้
สาย
ยุค
ผู้ชาย
จบ
ทันที
เขต
ยาก
ไง
บริเวณ
ความหมาย
ยังไง
บท
สำนักงาน
ตรวจ
อา
สวย
นอกจาก
เจอ
อัตรา
วันนี้
เจ้าของ
ชุมชน
บังคับ
.&quot;
ได้แก่
มิ
หล่อน
ยอมรับ
โต
ขาด
ข่าว
ทั่ว
สถาบัน
ฐานะ
แดง
ประธาน
สัญญา
ตอนนี้
ฉบับ
สนับสนุน
อารมณ์
รายงาน
รีบ
จิต
เหลือ
แพทย์
ทหาร
ปลา
เสมอ
ปล่อย
ปรับ
เครื่อง
ขาว
สั่ง
เชิง
แก้
ช่วยเหลือ
ระเบียบ
เกี่ยวข้อง
เจ้าหน้าที่
ประตู
ยังคง
มิได้
ปกครอง
เน้น
เหตุผล
หัวใจ
เต็ม
คุย
วิเคราะห์
หยุด
เรือ
ดิฉัน
อาจารย์
ต่างประเทศ
ร้อน
ถือว่า
แบ่ง
ดังนี้
ร่างกาย
สนใจ
ชัดเจน
หมายถึง
โอ
นับ
กลัว
พัก
สาร
อังกฤษ
แยก
ไอ้
ดำ
แรงงาน
ปิด
ใต้
วิ่ง
นึก
จำ
ต่อมา
ต่ำ
เหนือ
ได้ยิน
ศาล
ทั่วไป
สี่
มหาวิทยาลัย
รูปแบบ
ทอง
มากมาย
ความสำคัญ
สุดท้าย
วัย
เหรอ
ตก
แน่
ธุรกิจ
ร้อง
รายได้
ความผิด
กรุงเทพ
ป่า
เหตุการณ์
กระบวนการ
กรรมการ
ถนน
สายตา
หัวเราะ
เส้น
อธิบาย
เย็น
พระราชบัญญัติ
6
ที่สำคัญ
แจ้ง
เหมาะสม
จ่าย
สุด
คำถาม
เร็ว
ป้องกัน
ปัจจัย
ตัดสินใจ
ธรรม
ทำการ
ที่ดิน
พฤติกรรม
ทะเล
อุตสาหกรรม
ซี
ห้า
กรม
เลี้ยง
รุ่น
ทิ้ง
เพิ่ง
ไม่ค่อย
แก้ว
ชน
ศรี
ค้า
ค่อย
เสร็จ
เลิก
เก่า
คดี
รายการ
ขณะที่
ผู้นำ
ดาว
หนุ่ม
นอกจากนี้
ความจริง
จนถึง
ศาสนา
ที่ผ่านมา
ตำรวจ
ข้าพเจ้า
กิจการ
ค.ศ.
ร้อยละ
ส่งเสริม
ที่มา
เช่นนี้
ผ้า
ตรวจสอบ
คุณภาพ
หน่อย
ร้อย
แน่นอน
ตัด
อดีต
เกือบ
หนัง
บทบาท
แหล่ง
ขั้น
ชาวบ้าน
ราช
หน่วยงาน
โครงสร้าง
กิจกรรม
อาชีพ
ระบุ
ก็ตาม
เพศ
หมู่บ้าน
แทบ
สถานที่
ปลาย
นักเรียน
ไกล
ไฟ
ความสามารถ
พวกเขา
ทฤษฎี
โทษ
พระองค์
ยื่น
ถูกต้อง
หนี
หน่วย
รอง
เลือด
เตรียม
วิชา
หนัก
เกษตร
ติดต่อ
เจริญ
ตกลง
ชา
สำนัก
จิตใจ
อากาศ
มาตรฐาน
คอย
ประเด็น
สังเกต
เรื่อย
แสน
มั้ย
ข้าราชการ
เสื้อ
น้ำมัน
หมายความ
ดำเนิน
!&quot;
ประสบ
งบประมาณ
เนื้อ
ห้าม
สบาย
ลอง
อย่างไรก็ตาม
สา
คนใน
องค์กร
ขา
ช่าง
ยาย
สรุป
สหรัฐ
สื่อสาร
ทีม
แข่งขัน
ในขณะที่
ฟ้า
เบา
วรรค
ภาวะ
บ้า
เอ
คล้าย
ขยาย
ดิน
คำสั่ง
7
ทุกข์
ลา
ผิว
สงสัย
เจตนา
พัน
กล้า
แปลก
รา
ชวน
สงบ
สั้น
สวน
มุม
ชม
กว้าง
ม.ร.ว.
นิติกรรม
หลักฐาน
สื่อ
ลืม
คราว
10
บัญชี
บ่อย
ย้าย
อันเป็น
เมืองไทย
พลัง
ธรรมดา
แม้แต่
นายกรัฐมนตรี
เกินไป
พื้น
เอกสาร
สาเหตุ
เล่ม
นก
โต๊ะ
ทั้งหลาย
เช้า
ทำหน้าที่
ไหล
กรรม
เอกชน
ศพ
ลุก
ดำรง
โดน
จำกัด
พ่อแม่
เดี๋ยว
กา
โน้ต
ยอด
แนวทาง
กี่
หวัง
ไร้
ทรัพย์สิน
ลำดับ
ช้า
ป้า
อ่อน
เรียบร้อย
องค์
เที่ยว
กอง
ชิ้น
บันทึก
แนวคิด
วง
หนี้
ค่อนข้าง
งั้น
งาม
สุ
สามี
มั่นคง
ปริมาณ
พิมพ์
สม
คำตอบ
สถาน
สถานการณ์
ลึก
ฆ่า
ดวง
ชั่วโมง
ตะวันตก
กาย
อันตราย
นิ่ง
ชายหนุ่ม
อิทธิพล
ยาม
ครึ่ง
ศูนย์
กล่าวถึง
พร้อมกับ
เรียนรู้
ประกอบด้วย
ศิลปะ
ทุน
ฝน
ซ้ำ
รัฐธรรมนูญ
แฟน
สิ่งแวดล้อม
สุขภาพ
พื้นฐาน
ความต้องการ
แต่ง
ฯลฯ
อี
เป้าหมาย
หลวง
แต่งตั้ง
นคร
ผู้ใหญ่
ชี้
รายละเอียด
ตั้งใจ
เงียบ
อย่างยิ่ง
แผน
อะ
ประสบการณ์
เทคโนโลยี
พ้น
ซะ
เกาะ
ครบ
แต่งงาน
มหา
ลม
พระเจ้า
ละคร
ภายใต้
ฝัน
ฝึก
ภาพยนตร์
มติ
เยอะ
สาขา
แปล
เท่ากับ
เปรียบเทียบ
เปิดเผย
แท้จริง
โทรศัพท์
อนาคต
กรุง
สมบูรณ์
ภายนอก
ส่งผล
ชัย
พอใจ
ประสิทธิภาพ
ก้าว
ชัด
ข้า
ผู้คน
ประวัติศาสตร์
ญาติ
ขณะ
เงื่อนไข
ปลูก
แม้ว่า
ท่า
ท้องถิ่น
เถอะ
โรง
ผลกระทบ
ตี
สอบ
นั่นเอง
8
สูงสุด
นาที
สนิท
ซา
ดอก
ผลงาน
ส่วนตัว
บุญ
พวกเรา
รวดเร็ว
ต่อเนื่อง
เพชร
อาคาร
กลิ่น
ข้าม
ปรับปรุง
ปลอดภัย
กระจาย
ฐาน
ประโยค
ทำลาย
รับรู้
พืช
เหล่านั้น
แถว
ห่าง
พลังงาน
ยัย
เรื่องราว
อ้าง
ระ
แถม
แนะนำ
ความสำเร็จ
เข้าสู่
แขน
ที่ไหน
เท้า
ประ
หู
สมเด็จ
ให้การ
ข้อความ
นักศึกษา
โรงพยาบาล
สมอง
แง่
วิชาชีพ
แผ่นดิน
เอ่ย
หลับ
ต่อไปนี้
ความเชื่อ
เก่ง
ทำนอง
เนี่ย
ตลอดจน
ภาษี
ล้วน
บัญญัติ
ลูกจ้าง
หิน
หัวหน้า
บางที
เพิ่มเติม
แสง
โบราณ
ธนาคาร
หายใจ
ดนตรี
เติบโต
ต่อสู้
const fs = require('fs')
const data = fs.readFileSync('dataset/201705_3gram.txt', 'utf8')
.split('\n')
const map = new Map()
for (const line of data) {
const [a, b, c, frequency] = line.split('\t')
if (+frequency) map.set(a + b + c, +frequency)
}
module.exports = function bigram (wordA, wordB, wordC) {
return (map.get(wordA + wordB + wordC) || 0) / 58050
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment