क्या यह एक शब्द भी है?


54

आपके पास एक प्रोग्राम या फ़ंक्शन लिखना चाहिए जो इनपुट के रूप में 4-वर्ण स्ट्रिंग लेता है और यह दर्शाता है कि स्ट्रिंग एक अंग्रेजी शब्द है या नहीं, एक मान को आउटपुट करता है। आपको प्रदान किए गए टेस्टकेस के 15% में गलतियाँ करने की अनुमति है।

इनपुट विवरण:

इनपुट एक 4-वर्ण स्ट्रिंग है जिसमें केवल लोअरकेस अंग्रेजी अक्षर (az) है।

आउटपुट विवरण:

इनपुट तो है किसी अंग्रेज़ी शब्द आप उत्पादन करना चाहिए एक बूलियन trueया एक पूर्णांक 1

यदि इनपुट एक अंग्रेजी शब्द नहीं है , तो आपको एक बूलियन falseया पूर्णांक आउटपुट करना चाहिए 0

शब्द सूची

4-अक्षर वाले अंग्रेजी शब्दों की सूची (2236 शब्द)

4-अक्षर गैर-शब्द स्ट्रिंग्स की सूची (2236 स्ट्रिंग्स)

गैर-शब्द सूची में समान रूप से यादृच्छिक रूप से उत्पन्न अक्षर अनुक्रम होते हैं, जिसमें से हटाए गए वास्तविक शब्द होते हैं।

परिक्षण

आपके प्रोग्राम या फ़ंक्शन को दिए गए शब्द सूचियों पर 15% से अधिक गलतियाँ नहीं करनी चाहिए। इसका मतलब है कि आप 4472 प्रदान किए गए इनपुट में से 670 के लिए गलत आउटपुट दे सकते हैं।

आपको परीक्षण कार्यक्रम या फ़ंक्शन पोस्ट करना चाहिए ताकि अन्य आपके उत्तर की जांच कर सकें। आपके परीक्षण कार्यक्रम की लंबाई आपके सबमिशन स्कोर में नहीं गिनी जाती है।

मानक खामियों को अस्वीकार कर दिया जाता है।

आपके प्रोग्राम को किसी भी बाहरी स्रोत का उपयोग नहीं करना चाहिए जैसे कि वेब तक पहुंचना या फ़ाइल से पढ़ना।

यह कोड-गोल्फ है इसलिए सबसे छोटा कार्यक्रम या फ़ंक्शन जीतता है।


4
उस सरणी को कोड का हिस्सा होना चाहिए। (मेरा अनुमान)। @randomra - यह उल्लेख करते हुए कि आप कहीं से भी शब्द सूची को नहीं पढ़ / एक्सेस कर सकते हैं ..
अनुकूलक

3
@BryanDevaney आपको सूची में केवल हार्ड कोड 85% होना चाहिए
dwana

1
@TeunPronk हां।
यादृच्छिक

2
@ शेपर समस्या को करने के लिए अभी भी अन्य तरीके हैं, जैसे इस प्रश्न में
Sp3000

5
"क्या यह भी एक शब्द है?" हाँ। [<- ४
श्लोक

जवाबों:


62

रूबी, 29 बाइट्स

->s{!s[/[^aeiou]{3}|[jqxz]/]}

उम्मीद है कि मुझे यह अधिकार मिल गया है - यह रूबी में मेरी पहली प्रोग्रामिंग है। मैंने वास्तव में पायथन में अपना सारा परीक्षण किया import reथा , लेकिन मेरे लिए बहुत लंबा था।

यह एक अनाम फ़ंक्शन है जो एक स्ट्रिंग में लेता है और true/falseतदनुसार आउटपुट करता है । यह एक regex का उपयोग करता है जो निम्नलिखित दो चीजों में से एक को देखता है:

  • एक पंक्ति में तीन व्यंजन
  • इनमें से एक है jqxz

यदि इनमें से कोई भी मौजूद है, तो हम इनपुट को एक शब्द के रूप में वर्गीकृत करते हैं।

फ़ंक्शन 2030 शब्द (206 पर गलत तरीके से विफल) और 1782 गैर-शब्दों (गलत तरीके से मिलान 454) पर विफल रहता है, कुल 660 मिसकैरेज के लिए। आइडोन पर परीक्षण किया गया

रूबी मदद के लिए @ मार्टिनबटनर को धन्यवाद। मार्टिन यह भी बताते हैं कि एक पूर्ण कार्यक्रम बाइट्स की समान संख्या लेता है:

p !gets[/[^aeiou]{3}|[jqxz]/]

Regex को सरल बनाने के लिए user20150203 का भी धन्यवाद।


रूबी, 1586 1488 1349 1288 1203 बाइट्स

एक बोनस के लिए, यहां बहुत अधिक रेगेक्स के साथ एक फ़ंक्शन है:

->s{!s[/[^aeiouyhs]{3}|[^aeiouy]{4}|q[^u]|^x|^[bdf][^aeioulry]|^[cgkprtwy][mfdsbktjgxpc]|^a[aoz]|^e[hf]|^i[ea]|^o[ecy]|^u[^ltnspgr]|[bdgktyz][cgmpw]$|[fhpvx][^aieoflnrsty]$|eh$|i[iyh]|[wkybp]z|[dghz]t|[fjzsv]y.|h[ns].|ae.|y.?[yifj]|[ejo]..[iuw]|[inv]..[gpuvz]|[eu].[jqwx]|[vyz][^t][fhmpqy]|i[^ae][fjqrv]|[ospen].?j|[ceg][iuy][ghkoux]|[bcpx]f|[hnuy]w|[ghnw]b|[txz]n|[jk]r|.[fjuyz]u|[hnt]ia|lsy|.p.o|.l.l|.tas|zal|f.p|eeb|wei|.sc.|.pl|yat|hov|hab|aug|v.re|aba|ohu|ned|s.dd|uc$|nux|oo$|dgo|lix|wua|v.o|vo$|ryo|wue|dk|oic|yol|.tr|yrb|oba|ruh|c.ls|idd|chn|doy|ekh|tk|lke|asl|cir|eez|asc|uil|iou|m..p|awt|irp|zaa|td|swk|ors|phe|aro|yps|q.e|ati|ibt|e.mo|we.y|p.de|ley|eq|tui|e..g|sps|akh|dny|swr|iul|.t.t|.tao|rcy|.p.y|idi|j.o|.kl|oms|ogi|jat|.lis|mye|uza|rsi|.ala|ibo|ipi|yaa|eun|ruy|wog|mm$|oex|koi|uyn|.hid|osc|ofe|w.op|auc|uzy|yme|aab|slm|oza|.fi|bys|z.e|nse|faf|l.h|f.va|nay|hag|opo|lal|seck|z.b|kt|agl|epo|roch|ix.|pys|oez|h.zi|nan|jor|c.ey|dui|ry.d|.sn|sek|w.no|iaz|ieb|irb|tz.|ilz|oib|cd|bye|ded|f.b|if$|mig|kue|ki.w|yew|dab|kh.|grs|no.t|cs.|.n.m|iea|y.na|vev|eag|el[uz]|eo[dkr]|e[hlsu]e|e[dho]l|eov|e[adp]y|r[grt]u|yn[klo]|.[^ilv].v|s[bdgqrz]|m[dfghrz]|[vpcwx]{2}|^[hjlmnvz][^aeiouy]|^[drw]l|l[hnr]/]}

मैं यह दिखाना चाहता था कि रेगेक्स अभी भी संपीड़न को हरा सकता है, इसलिए यह हर दिए गए मामले को सही ढंग से वर्गीकृत करता है । रेगेक्स अपने आप में एक सा है जैसे घातीय क्षय - पहले बिट्स बहुत सारे गैर-शब्दों से मेल खाते हैं, फिर हर मैच के बाद कम से कम तब तक जब तक मैंने हार नहीं मानी और बस अंत में बाकी (लगभग 200 या तो) को मिलाया। जो कि छोड़ दिया गया के कुछ आश्चर्यजनक रूप से वास्तविक शब्द (जैसे की तरह दिखाई देता chiaहै, जो है एक शब्द)।

मैंने अपने रेगेक्स गोल्फ क्लीनर में रेगेक्स को फेंक दिया, जिसे मैंने एक और चुनौती के लिए लिखा था - यह लगभग 300 बाइट्स का गोल्फ था, इससे पहले कि मुझे मैन्युअल रूप से चीजों को फेरबदल करने की कोशिश करनी पड़े। हालांकि अभी भी थोड़ा सा गोल्फ होना है।


1
user20150203 (टिप्पणी को निरस्त करने का अभाव) ने एक संपादन में निम्नलिखित का सुझाव दिया जिसे मैंने इस चर्चा के आधार पर अस्वीकार कर दिया : "बिना प्रतिष्ठा के एक नए उपयोगकर्ता द्वारा संपादित: ->s{!s[/[^aeiou]{3}|[jqxz]/]}केवल 29 बाइट्स हैं और 2030 शब्दों (गलत तरीके से 206 पर विफल) और 1782 गैर में मेल खाता है -शब्द (गलत तरीके से मिलान करने वाला 454), कुल 660 गर्भपात के लिए। "
मार्टिन एंडर

यह अजीब है, मैंने सोचा कि मैं प्रत्येक चार को हटाकर परीक्षण करूंगा - के बारे में भूल गया होगा v। धन्यवाद user20150203!
213 बजे Sp3000

@ Sp3000 क्या आप मुझे मेरे लिए एक जवाब में अपने regex का उपयोग करने के लिए प्राधिकरण प्रदान करते हैं? मैं आपको प्रतिष्ठा के साथ श्रेय दूंगा (यदि संभव हो) और सभी क्रेडिट उत्तर में बताए जाएंगे।
इस्माइल मिगुएल

@IsmaelMiguel क्या यह सिर्फ एक भाषा है जहाँ एक रेगेक्स मैच के लिए एक फ़ंक्शन लिखना बहुत कम है? यदि मैं मानता हूँ तो मैं थोड़ा उत्सुक हूँ ... (इसलिए मैं इसे अगली बार चुरा सकता हूँ!)
Sp3000

@ Sp3000 यह कम नहीं है। लेकिन मैं सिर्फ कुछ पोस्ट करना चाहता हूं। एक लंबा समय हो गया है क्योंकि मैंने यहाँ कुछ भी पोस्ट किया है। और यह मेरे ज्ञान का थोड़ा विस्तार करेगा। इसलिए, यह मेरे लिए जीत की स्थिति है। और मैं आपको कुछ प्रतिष्ठा प्रदान करूंगा, यदि संभव हो, तो, यह आपके लिए भी एक जीत है (संभवतः)।
इस्माइल मिगुएल

13

ग्रूवी, 77 74

x={it==~/^(?!.+[jq]|[^aeiou][^aeiouhlr]|.[^aeiouy]{3}|.[x-z])|^s[cknptw]/}

मैंने जावा में परीक्षण कार्यक्रम लिखा था, जिसे आप जीथ पर इस जिस्ट में पा सकते हैं । यहाँ मेरे परीक्षण कार्यक्रम से उत्पादन है:

Good: 2135 1708
Bad: 101 528

(629 परीक्षण मामलों में विफल)

पीएस मुझे लगता है कि यह एक रेगीक्स गोल्फ समस्या को बहुत जल्द खत्म करने जा रहा है ...

यदि Sp3000 का उत्तर (फ़ंक्शन) ग्रूवी में परिवर्तित किया जाना है, तो यह उसी वर्ण गणना के साथ समाप्त हो जाएगा। नामित कार्य के रूप में:

x={it!=~/[^aeiou]{3}|[jqxz]/}

या अनाम फ़ंक्शन:

{i->i!=~/[^aeiou]{3}|[jqxz]/}

यह केवल 335 मामलों को विफल कर सकता है;) लेकिन फिर भी बहुत साफ-सुथरा हालांकि
Teun Pronk

यह बहुत गलत लगता है, फिर भी यह ^ ^
dwana

@TeunPronk: (2236 + 2236) * 0.15 = 670.8। इसलिए आप 670 असफल हो सकते हैं। मुझे लगता है कि आप गैर-शब्दों को सही ढंग से वर्गीकृत करने के बारे में भूल गए हैं। "आपका कार्यक्रम या समारोह नहीं 15% से अधिक गलतियों दिए गए शब्द को सूचीबद्ध करता है पर करना चाहिए एक साथ ।" (जोर मेरा)
नील स्लेटर

@NeilSlater आह, हाँ, मैं केवल सही लोगों पर विचार किया। मेरा बुरा ^ ^
Teun Pronk

9

जावास्क्रिप्ट, 1626 बाइट्स:

मैं एक ऐसे समाधान के लिए जाना चाहता था जिसके लिए प्रत्येक चरित्र का एक सुराग हो, जिसके बाद कोई भी आ सकता है। यह छोटा नहीं है, लेकिन रेगेक्स और काफी अच्छा परिणाम (शब्द: 101 गलतियाँ, गैर-शब्द, 228 गलतियाँ)

v=function(w){var g={a:{b:3,c:4,d:4,m:6,f:1,r:14,g:4,i:6,x:2,k:2,l:10,n:12,s:6,p:4,t:7,u:2,v:3,w:3,y:3,h:1,z:1},b:{b:3,a:19,e:19,y:3,l:6,o:17,u:12,i:9,s:9,r:6},e:{d:7,l:8,t:4,s:10,n:11,e:10,r:10,c:2,x:2,w:4,a:13,f:1,p:2,g:2,v:1,b:1,m:3,u:1,i:1,k:1,y:2},l:{e:16,y:5,a:16,b:1,f:2,l:12,m:2,o:14,p:1,s:2,u:8,d:4,i:10,k:3,t:5},o:{s:7,g:3,e:3,k:3,n:10,m:4,p:5,w:6,b:3,c:2,t:6,a:5,d:5,h:1,i:2,l:8,o:9,r:8,u:4,y:2,v:2,z:1,f:2,x:1},u:{t:8,e:5,m:7,s:11,a:2,n:13,r:15,d:6,c:4,f:1,g:5,l:9,y:1,z:1,b:5,j:1,x:1,p:2,k:1,i:2},c:{e:9,h:12,i:2,r:6,t:3,o:20,k:15,a:16,l:6,u:8,y:1},h:{e:21,r:2,a:22,i:15,o:20,u:15,n:3,l:1,y:1},i:{d:8,m:5,n:18,r:7,a:2,s:8,v:2,l:13,t:10,b:1,e:6,k:2,p:5,g:3,c:6,o:2,f:2,z:1},m:{e:19,s:8,a:21,i:12,m:1,o:15,y:2,b:4,p:8,n:1,u:8},n:{e:18,u:3,a:9,d:10,n:4,o:7,s:11,t:11,g:10,k:6,i:5,y:2,c:1},r:{e:18,s:4,y:4,a:16,c:1,g:1,i:12,m:3,p:2,t:4,b:1,d:4,k:4,n:5,r:2,o:11,l:2,u:6,f:1},t:{a:14,s:17,e:18,i:9,o:15,h:10,t:3,y:2,c:1,z:1,u:5,r:5,w:2},d:{a:14,d:4,s:10,e:22,y:8,i:12,o:14,r:4,u:10,l:1},f:{a:16,f:6,e:12,y:1,i:14,l:13,o:16,r:7,u:7,t:7,n:1,s:1},g:{a:16,e:12,o:17,u:7,s:18,g:1,y:2,i:8,l:4,n:2,h:3,r:9,w:1},j:{a:25,i:7,e:14,o:25,u:29},k:{i:23,s:6,e:41,u:6,a:10,l:2,n:8,o:2,h:1,y:1},p:{s:12,e:20,a:19,y:2,i:13,t:2,u:10,l:5,o:13,r:4},s:{o:8,i:8,e:13,k:6,h:10,s:8,t:14,y:1,p:5,c:2,l:6,a:10,m:1,n:2,u:4,w:2},v:{a:18,e:47,i:22,o:8,y:6},y:{l:4,e:18,s:20,d:3,n:8,r:8,t:4,a:14,k:1,m:1,o:8,x:3,p:3,u:4,v:1},q:{u:100},w:{a:24,e:17,l:4,r:3,s:10,n:6,y:2,k:1,d:1,t:1,i:17,u:1,o:10,h:4},x:{e:35,i:18,l:6,o:6,a:6,t:12,y:18},z:{z:10,y:10,a:3,e:43,r:3,o:17,i:10,u:3}},p=1,x,y,i=0;for(;i<3;){x=w[i],y=w[++i];p*=g[x]&&g[x][y]||0}return p>60}

यहाँ एक कार्यशील कार्यान्वयन है http://fiddle.jshell.net/jc73sjyn/

संक्षेप में: ऑब्जेक्ट g वर्णों को a से z (कुंजियों के रूप में) रखता है, और उनमें से प्रत्येक के लिए, वर्णों का एक समूह (कुंजियों के रूप में भी) होता है, जो प्रत्येक वर्ण का प्रतिनिधित्व करता है, जो कि उसके संभाव्यता प्रतिशत के साथ हो सकता है । जहाँ कोई वस्तु मौजूद नहीं है, वहाँ कोई संभावना नहीं है।

3 स्कोर (4 अक्षर -> 3 मूल्यांकन) को गुणा किया जाता है, और 60 और ऊपर के स्कोर वाले शब्द को एक वास्तविक शब्द माना जाता है।

उदाहरण: शब्द 'सामना' के लिए तीन लुकअप हैं:

जी [सी] [ओ] = २०

जी [ओ] [पी] = ५

जी [पी] [ई] = २०

स्कोर = 20 * 5 * 20 = 2000, जो 60 से अधिक है, ताकि एक वैध हो।

(मैं जावास्क्रिप्ट के साथ काफी नया हूं, इसलिए इसे छोटा करने के तरीके हो सकते हैं जो मुझे नहीं पता।)

LATE EDIT:

अब तक पूरी तरह से अप्रासंगिक, लेकिन मैंने अपने तरीके से अधिक सही जी का मूल्यांकन किया:

g={a:{b:7,c:4,d:4,m:6,f:2,r:14,g:4,i:6,x:2,k:2,l:10,n:12,s:6,p:4,t:7,u:2,v:3,w:12,y:3,h:1,z:1},b:{b:10,a:19,e:19,y:3,l:6,o:17,u:10,i:9,s:9,r:3},e:{d:7,l:8,t:4,s:10,n:11,e:10,r:10,c:2,x:2,w:4,a:13,f:1,p:2,g:2,v:20,b:3,m:3,u:1,i:1,k:1,y:2},l:{e:16,y:5,a:16,b:1,f:2,l:12,m:2,o:14,p:1,s:6,u:61,d:1,i:10,k:3,t:5},o:{s:7,g:3,e:3,k:3,n:20,m:4,p:5,w:6,b:3,c:2,t:6,a:5,d:5,h:10,i:2,l:8,o:3,r:8,u:4,y:2,v:2,z:1,f:20,x:1},u:{t:8,e:5,m:7,s:11,a:2,n:13,r:15,d:6,c:1,f:10,g:5,l:9,y:1,z:1,b:5,j:1,x:1,p:2,k:1,i:2},c:{e:9,h:20,i:2,r:6,t:20,o:15,k:15,a:15,l:6,u:8,y:1},h:{e:21,r:2,a:7,i:15,o:20,u:15,n:10,l:0,y:1},i:{d:8,m:5,n:18,r:7,a:5,s:8,v:2,l:13,t:20,b:1,e:21,k:2,p:5,g:20,c:4,o:2,f:2,z:1},m:{e:10,s:8,a:21,i:12,m:1,o:15,y:2,b:4,p:2,n:1,u:8},n:{e:18,u:3,a:9,d:3,n:4,o:20,s:2,t:11,g:10,k:6,i:5,y:2,c:1},r:{e:15,s:4,y:4,a:16,c:1,g:1,i:12,m:3,p:2,t:4,b:1,d:4,k:4,n:5,r:2,o:11,l:2,u:20,f:1},t:{a:14,s:15,e:18,i:2,o:15,h:10,t:3,y:2,c:1,z:1,u:5,r:5,w:2},d:{a:14,d:4,s:10,e:61,y:8,i:12,o:7,r:3,u:10,l:0},f:{a:5,f:6,e:12,y:1,i:3,l:13,o:16,r:7,u:20,t:4,n:1,s:1},g:{a:16,e:12,o:17,u:7,s:18,g:0,y:2,i:8,l:3,n:2,h:3,r:9,w:1},j:{a:8,i:7,e:14,o:5,u:29},k:{i:3,s:20,e:41,u:6,a:10,l:20,n:8,o:2,h:1,y:1},p:{s:12,e:20,a:5,y:2,i:13,t:4,u:10,l:3,o:13,r:4},s:{o:8,i:8,e:13,k:6,h:10,s:8,t:14,y:1,p:5,c:2,l:2,a:10,m:2,n:6,u:8,w:2},v:{a:10,e:20,i:22,o:6,y:6},y:{l:6,e:15,s:20,d:3,n:8,r:8,t:4,a:4,k:1,m:1,o:3,x:3,p:3,u:1,v:1},q:{u:100},w:{a:24,e:17,l:4,r:2,s:3,n:6,y:20,k:1,d:1,t:1,i:17,u:6,o:10,h:20},x:{e:35,i:6,l:3,o:6,a:6,t:3,y:7},z:{z:10,y:10,a:3,e:43,r:1,o:8,i:7,u:1}}

नए परिणाम:

शब्द: 53 गलतियाँ, गैर-शब्द: 159 गलतियाँ

http://fiddle.jshell.net/jc73sjyn/2/


मुझे यह जोड़ना चाहिए कि 2236 सही शब्दों के मूल्यांकन के माध्यम से नंबर पाए गए थे। प्रत्येक अक्षर के लिए मैं बस प्रत्येक उत्तराधिकारी के गोल प्रतिशत की गणना करूंगा। मैंने गलत शब्दों के लिए ऐसा ही करने पर विचार किया और किसी तरह उन्हें घटाया, लेकिन मुझे लगता है कि इससे मूल्यांकन कम चालाक होगा और गलत शब्दों के सीमित सेट का अधिक लाभ उठाया जा सकता है।
हेनरिक क्रिस्टेंसन

2
मैं आपके कोड को जितना मैं कर सकता था, कम करने में कामयाब रहा। मैं लगभग 80 बाइट्स खा चुका हूं। ज्यादा नहीं, लेकिन यह छोटा है। यहाँ कोड है: pastebin.com/fkPW0D92 । मैंने उन सभी नंबरों को बदल दिया है जो 3 से अधिक बार दोहराए गए थे और अभी भी आपके forलूप से बहुत सारे ब्लोट को हटा दिया है ।
इस्माइल मिगुएल

उल्लेख करना भूल गए: यह केवल फ़ायरफ़ॉक्स / फायरबग कंसोल पर काम करता है। यह फ़ंक्शन बनाने के लिए नए ES6 बड़े-तीर संकेतन का उपयोग करता है। आप की जगह ले सकता w=>द्वारा function(w)और प्रत्येक ब्राउज़र के लिए काम करेंगे।
इस्माइल मिगुएल

6

पायथन 2, 5254 बाइट्स

यह समाधान अच्छे शब्दों को दो हिस्सों में अलग करता है। लुकअप पहले सही स्ट्रिंग को खोजने के लिए पहले 2 वर्णों की जांच करता है, फिर उस स्ट्रिंग में दूसरे 2 वर्णों की तलाश करता है। बहुत कॉम्पैक्ट नहीं है, लेकिन लिखने के लिए जल्दी है। यह तरीका बिना गलतियों के हर शब्द से मेल खाता है।

d='''gwenyn
guamlflllpmsnsrushsttsys
grabadamayegeweyidiminipisitowub
gyro
gearldlsmsnentrmts
gagsilinitlellltmengpepsrbryshspteulvewkze
goadalatbidsesffghldlfnengodofreryshtoutwn
gnataw
gladeeenowueut
giftldllltnannnonsrdrlrtstve
wrapenit
leadafakanaparekeresftgsnandnsntonsssttsvivywd
labsceckcydsdygsidinirkembmempnandnengospsrdrkrsshssstteuevawnwsyszy
loadafanbecickebftgogsiniskilambmenengokomonopotrdresesssttsudutvewews
tubebsckftgsnerfrn
trapayeeekimioipodotoyueuk
liarceckdsedeneseufeftkelalymambmempndnenkntonpssasespssstve
toadbyddesgoilldllmbneninsokolpsrernrysstourwnys
luckcyiskellmpndngrarerkshsttetz
thaianataweaemeneyinisorudugus
tickdedyedereslellltmemsnansntnypsretots
teamarasemenllndnsntrmssstxt
lylennnxonrare
dockdderesgegslellmenensomorperasetetsugvewnze
typepo
yokerkstur
dialcedoedemesetgskellmemsnengntonpsrertscshskve
yagilenkrdrnwn
deadafalanarbtckedemeperfyllmonsntnyskuswy
yearaslllp
dadadedshllelilymemnmpmsnanererkrnrtshtatevevywnysze
dyadedereskene
dualbsckctelesetkelllymbmpnengnknnpeskstty
drabagamawewipopugum
yves
yubakiri
quadayipitiz
iranaqesisksmaon
emilitma
elbakslamsse
endsidosvy
eire
zincon
ekedes
eels
eddyengeitna
egangsos
eachrlrnrprssestsyts
echo
ebbsen
eyederes
examecit
ezra
etch
ewenes
eveneril
wokelfmbngntodofolosrdrerkrmrnve
epic
espy
erasgoicieikisneosrs
rubebsbydedygsinlempngnsntshssstthts
ryan
readalamapardodsedefelidinlymynandnenontstub
raceckftgegsidilinkemompmsndngnkntpepsptreshsptetsulveysze
itchelem
roadamarbebsckdedslellmempofokomotpesasesssythtsutvewewsxy
rhea
ribscacechckcodedsftgagsllmemsndngnkotpepsscsesktetz
beadakamanaratauckdsefeneperesetgslallltlyndntnzrnrtsssttatsvy
weakanarbbbsdsedekephrldllntptrestts
babebychckdegsilitjakekuldlelilklllmndnengnknsrbrdrerkrnrrrsrtseshskssthtsudwlys
wacodeftgegshlilitkelkllltndnengntrdrermrnrprsrtryshspvexyys
blabedewipobocotowueumur
juandddedodygslympnengnknorareryst
boaratbscadedyergshrilisldllltmbndnengnnnyobokomonorosotrergrnsessthutwlwsydys
biasbsdedsenerkelelkllndngninsrdtets
wickdeerfegsldlellltlyndnengnknspereryseshspthtstt
whatenimipitizom
buckdddsffgslblkllmpmsnknsntoyrlrnrprrrtryshssstsyttyszz
joanbsdyelesgshninkeltsetsveys
jigsll
braeaganasatayedewieigimowyn
jeaneperffrksttsws
byrdte
wynn
ooze
onceeslytousyx
omanenit
olafavdyeggain
okay
oilsly
ohio
offs
oddsesinor
obeyoe
oaksrsthts
ivan
stabaganarayemepewiropowubudunyx
oxen
owedeneslsns
ovalenerid
ouchrsstts
otisto
oslo
oralesgyinly
opalecelentsus
vialcedaederesetewlenesatato
citety
chadaoaparatefenewicinipitopouum
coalataxbbcackcodedyedgshnilinkeldleltmbmeneokolonoppepspyrdrerkrnstsytsvewlwszy
cladamanapawayioipodogotubueuj
cabsdyfegeinkelflllmmempnensntpepsrdrerlrprrrsrtseshsksttsve
cedellltntrn
czar
cyst
zoneomosrn
crabagamayeeewibopowuduxuz
cubabebsedesffllltpsrbrdrerlrsrtsptets
vealdaergailinlannntrarbrnrystto
prayepeyimodoposow
pubsffghkelllpmampnsntnypapsrerrshsststt
smogugut
pylere
jabsckdeilkemsnersvawszz
paceckctdsgeidilinirlelllmlolsnengnsntparcrerkrrrsrtsosssttethtsulvewnwsys
peakalarasatckekelepergsltndnhnnnsntrkrusttetsws
phil
picackcteresgskelellmpnengnknsntonpesassthtstttyus
isisle
planayeaodotowoyugumus
hydemn
hubsckeseygeghgollmempmsngnknsntrdrlrtshskts
hickdeghkellltndntpsresstsve
hoaresffgsldlelmlymemoneodofokopotpepipsrnsesturwewlyt
haagasckhnilirlelfllltmsndngnsrdrerkrmrprtshtetsulvewkyszezy
headalaparatbeckedelirldlllmlpmpmsnsrarbrdrerorrrsssws
meadalanateketltmondnsnureshsstatetsws
macechdeidiliminkelelillltmanennnsnypsrcrerkrsrtrxryshsksssttethtsttulwryayoze
utah
moanatbsckdeenhrldlellnankntodonorotpsrernssstthvews
micaceckenkeldlelkllmindneninkntpsraressst
upon
twasiginos
podsemetgokelelklllompndngnyolorpepsrerkrtseshsttsurut
muchckddffgsirlellngseshsksttettzo
ulan
undoitixixto
imps
ugly
tabsckctftgsilkelelkllmengnkospepsrartskssteutxi
myrath
illsly
vailinlenensrysestts
acesheidmeneretats
abbabebyedeletlelyosut
adamdsen
agaredeeeresogue
afar
aidadedsmsnursry
swabamanapatayimum
akin
ajarax
amenesidmookosyl
alanarasbaeceeexfagalymamsoepssoumva
analdyewnaneonsitetitsus
aqua
apedesexse
asiaks
arabchcocseaesgoidmsmypats
auntrato
atomop
awayedlsry
averidisivonow
ayes
axedeleresisleon
icedeson
ibexidis
ideaemlelyol
igor
ifni
niceckghlenaneps
usederes
noahdedselllneokonrarmseteun
nagsgyilirmepsrysashtetourvyzi
nealaratckedffilllonrosssttsvawswtxt
voidltsstews
zulu
nudellmbnsts
franauayedeeeteyogomye
urdugeisnssa
fueljillmendnkrsrysesszz
ionstawa
facectdegsilinirkelkllmengnsrermsttetsunwnze
fearatedelesetllltndrnssud
zealrostus
fiateffegsjilelllmndnenknnnsrermshsksttsve
flagakamapatawaxeaedeeewexipitogopowueux
foalamciesgsgyilldlkndntodolotrdrerkrmrtssulurwl
kahnlinentrlrptetz
incachdodyksnsto
keelenepmpntptrnrrys
kickdselevllndngnkrksstets
spanatecedinitotunur
kochng
kneeewitobotowox
subschckdsedesezitlkmsngnknsrerf
klanux
skewidiminipisitye
siamanckdeftghgnkhlkllloltmsnengnknspsrerstetstuvaze
shameaedinipitodoeopotowunut
soakaparbsckdadsfaftilldlelomengnsnyonotrertulupurwnya
snagapipobowubug
kudohnrdrt
slabamapatavayedewidimipitobopotowugumur
scabanarotowud
sackfegagegsidilkelelkltlzmenandnengnkpsrarishteudulvewsys
sealamanarasatctedekemenepereslfllmindntptrfthtswsxy'''
w=raw_input()
s=[t[2:] for t in d.split() if t[:2]==w[:2]]
print s and w[2:] in [s[0][i:i+2] for i in range(0,len(s[0]),2)]

5

सी # डब्ल्यूपीएफ, 110 139

छोटा

bool F(string s){var t=new TextBox();t.SpellCheck.IsEnabled=true;t.Text=s;return t.GetSpellingError(0)==null;}

पुराना उत्तर

public bool F(string s){TextBox t=new TextBox();t.SpellCheck.IsEnabled=true;t.Text=s;SpellingError e=t.GetSpellingError(0);return e==null;}

1
क्या यह डिफ़ॉल्ट लोकेल लेता है? :)
रोबाू

@RobAu यकीन नहीं, पहली बार मैंने इसका इस्तेमाल किया।
bacchusbeale

varजब तक आवश्यक न हो तब तक चर का उपयोग करके और परिचय न देकर आप इसे काफी छोटा बना सकते हैं ।
गोलंबर

3

शब्द VBA, 25 बाइट्स

बेनामी VBE तत्काल विंडो फ़ंक्शन जो वर्तमान चयन के रूप में इनपुट लेता है और आउटपुट अगर यह VBE तत्काल विंडो के लिए बूलियन के रूप में एक शब्द है।

?CheckSpelling(Selection)

परीक्षक समारोह

नीचे दिए गए फ़ंक्शन का उपयोग टेस्टकेस के खिलाफ उपरोक्त फ़ंक्शन का परीक्षण करने के लिए किया गया था। यह कार्य 9.07 प्रतिशत मामलों (वास्तविक शब्दों के 396 और नकली शब्दों के 10) में विफल रहा

i=0:For Each w In Split(Selection,vbcr):i=i-CheckSpelling(w):Next:?i" were recognized as words

2

गणितज्ञ, 33 बाइट्स

अरे, किसी को तो करना ही था!

Length[DictionaryLookup[Input[]]]

आत्म व्याख्यात्मक।


0

जावास्क्रिप्ट ईएस 6, 32 बाइट्स:

@ Sp3000 उत्तर से regex का उपयोग करना :

s=>!/[^aeiou]{3}|[jqxz]/.test(s)

यह एक अनाम फ़ंक्शन बनाता है। इसका उपयोग करने के लिए, आप बस इसे चारों ओर लपेटते हैं ()

उदाहरण:

(s=>!/[^aeiou]{3}|[jqxz]/.test(s))('word')

यह है वास्तव में एक ही रूप में @ Sp3000 दर असफल, और रिटर्न trueया falseतदनुसार।

मुझे अपने regex का उपयोग करने देने के लिए @ Sp3000 के कारण सभी क्रेडिट।


@ Sp3000 लेकिन तब आप इसे कॉल नहीं कर पाएंगे। यह भी ऐसा ही है F = function(s) { return /[^aeiou]{3}|[jqxz]/.test(s) }
इस्माइल मिगुएल

@ Sp3000 मुझे पता है कि यह काम करता है, लेकिन आपको इसका उपयोग करने के लिए अधिक बाइट्स खर्च करने होंगे।
इस्माइल मिगुएल

@ Sp3000 इसे खोदो! इसे छोटा करने से एक कदम दूर: / टिप के लिए धन्यवाद। मैंने इसे अपडेट किया है।
इस्माइल मिगुएल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.