पुलिस और लुटेरे: रिवर्स रेक्स गोल्फ


76

नोट : यह चुनौती अब बंद हो गई है। किसी भी भावी पुलिस की अधीनता को स्वीकृत उत्तर के लिए नहीं माना जाएगा। यह सुनिश्चित करने के लिए है कि कोई भी भविष्य में बहुत ही सरल रेक्सक्स पोस्ट नहीं कर सकता है जो केवल अनियंत्रित रहता है क्योंकि कोई भी किसी भी चुनौती में दिलचस्पी नहीं रखता है।

पुलिस की चुनौती

आपको एक छोटा, ओफ़्सेटेड रेगेक्स लिखना है, जो निम्नलिखित कल्पना को संतुष्ट करता है:

  • आप ऐसे किसी भी स्वाद का चयन कर सकते हैं जो स्वतंत्र रूप से ऑनलाइन परीक्षण योग्य हो। StackOverflow पर ऑनलाइन परीक्षकों की एक अच्छी सूची है । विशेष रूप से, Regex101 आपको शुरू करने के लिए अच्छा होना चाहिए, क्योंकि यह PCRE, ECMAScript और पायथन फ्लेवर का समर्थन करता है। यदि आवश्यक हो तो आप शीर्ष दाएं कोने में रिंच पर क्लिक करके टाइमआउट सीमा बढ़ा सकते हैं। कृपया अपने उत्तर में चुने गए परीक्षक को शामिल करें।

    यदि आपकी पसंद के स्वाद के लिए कोई उपयुक्त परीक्षक उपलब्ध नहीं है, तो आप विचारक की तरह एक ऑनलाइन दुभाषिया का उपयोग भी कर सकते हैं और मेजबान भाषा में थोड़ी स्क्रिप्ट लिख सकते हैं, जिसका उपयोग लोग आपके प्रस्तुतिकरण का परीक्षण करने के लिए कर सकते हैं।

  • आप उस स्वाद की किसी भी विशेषता का उपयोग कर सकते हैं, जो सीधे मेजबान भाषा (जैसे पर्ल कोड मूल्यांकन सुविधाओं) का आह्वान नहीं करता है।
  • इसी तरह, आप किसी भी संशोधक का उपयोग कर सकते हैं (यदि आपका स्वाद उन्हें है), जब तक कि वे कोड मूल्यांकन में परिणाम न करें।
  • आपके रेगेक्स को कम से कम एक स्ट्रिंग एस को स्वीकार करना चाहिए और कम से कम एक स्ट्रिंग टी को अस्वीकार करना चाहिए , जिनमें से प्रत्येक कम से कम 16 और लंबाई में 256 से अधिक वर्ण नहीं है, उचित समय में (एक मिनट से अधिक लंबे समय तक नहीं)। S और T में यूनिकोड वर्ण हो सकते हैं जो ASCII नहीं हैं, जब तक कि ऑनलाइन परीक्षक में उन्हें दर्ज करने का कोई तरीका नहीं है। तार की ऐसी कोई भी जोड़ी आपके सबमिशन की एक कुंजी होगी ।
  • आपका regex किसी अन्य इनपुट पर मनमाने ढंग से लंबा समय ले सकता है।

चुनौती का मूल रीजेक्स को तैयार करना है जिसकी कुंजी को ढूंढना मुश्किल है। यही है, यह या तो यह बताना कठिन होना चाहिए कि यह किस स्ट्रिंग से मेल नहीं खाता है या यह किस स्ट्रिंग से मेल खाता है (या संभावित रूप से दोनों भले ही रेगेक्स को समाप्त होने में दिन लगें लेकिन कुंजी के तार)।

लुटेरों की चुनौती

सभी उपयोगकर्ता, जिनमें अपने स्वयं के रेगेक्स (एस) जमा किए गए हैं, उन्हें अन्य सबमिशन को "क्रैक" करने के लिए प्रोत्साहित किया जाता है। जब एक कुंजी संबंधित टिप्पणी अनुभाग में पोस्ट की जाती है, तो सबमिशन क्रैक हो जाता है।

महत्वपूर्ण: सुनिश्चित करें कि आपके द्वारा पोस्ट किए गए दोनों तार 16 और 256 वर्णों के बीच हैं, भले ही लगभग किसी भी स्ट्रिंग का उपयोग कुंजी के एक भाग के लिए किया जा सके।

यदि कोई संशोधन संशोधित या क्रैक किए बिना 72 घंटे तक रहता है, तो लेखक उसके जवाब में एक स्पॉइलर-टैग को संपादित करके एक वैध कुंजी प्रकट कर सकता है। इससे उसका उत्तर "सुरक्षित" हो जाएगा, अर्थात अब उसे नहीं फटा जा सकता।

प्रति उपयोगकर्ता प्रति सबमिट केवल एक क्रैकिंग प्रयास की अनुमति है। उदाहरण के लिए, यदि मैं उपयोगकर्ता X को प्रस्तुत करता हूं: "आपकी कुंजी 0123456789abcdef/ है fedcba9876543210।" और मैं गलत हूं, उपयोगकर्ता एक्स मेरे अनुमान को गलत बताएगा और मैं अब उस सबमिशन के लिए अतिरिक्त अनुमान प्रस्तुत नहीं कर पाऊंगा, लेकिन मैं अभी भी अन्य सबमिशन में दरार कर सकता हूं (और अन्य अभी भी उस सबमिशन को क्रैक कर सकते हैं)।

क्रैक किए गए सबमिशन को विवाद से समाप्त कर दिया जाता है (बशर्ते वे "सुरक्षित" न हों)। उन्हें संपादित या हटाया नहीं जाना चाहिए। यदि कोई लेखक एक नया रेगेक्स प्रस्तुत करना चाहता है, तो उसे एक अलग उत्तर में ऐसा करना चाहिए।

अपनी खुद की सबमिशन क्रैक न करें!

नोट: रिक्त स्थान के बिना टिप्पणियों में लंबे तार के लिए, एसई दो यूनिकोड वर्णों के रूप में मैनुअल लाइन टूटता है। इसलिए यदि आप बैकटिक्स में एक कुंजी पोस्ट करते हैं जो इतनी लंबी है कि यह गैर-अंतरिक्ष वर्णों के बीच लाइन-रैप करता है, तो कुंजी को वापस रेगेक्स परीक्षक में कॉपी करना संभव नहीं होगा। इस मामले में, कृपया पुलिस के रेगेक्स और आपकी कुंजी के साथ प्रासंगिक रेगेक्स परीक्षक को एक पर्मलिंक प्रदान करें - अधिकांश परीक्षकों में यह सुविधा शामिल है।

स्कोरिंग

एक पुलिस का स्कोर बाइट्स (पैटर्न प्लस संशोधक, संभावित सीमांकक नहीं गिना जाता है) में उनके रेगेक्स का आकार होगा, बशर्ते कि यह दरार न हो। "सुरक्षित" सबमिशन का सबसे कम स्कोर जीत जाएगा।

एक लुटेरा का स्कोर उनके द्वारा फटे हुए सबमिशन की संख्या होगी। एक टाई होने की स्थिति में, उनके द्वारा फटे हुए सबमिशन का कुल बाइट आकार टाई-ब्रेकर का उपयोग किया जाएगा। यहाँ, उच्चतम बाइट गिनती जीत है।

जैसा कि ऊपर कहा गया है, कोई भी पुलिस लुटेरा और इसके विपरीत भाग ले सकता है।

मैं चुनौती के दो हिस्सों के लिए अलग लीडरबोर्ड बनाए रखूंगा।

लीडरबोर्ड

अंतिम अपडेट: 19/10/2014, 20:33 यूटीसी

पुलिस:

इटैलिक में प्रस्तुतियाँ अभी तक सुरक्षित नहीं हैं।

  1. nneonneo , 841 बाइट्स
  2. Wumpus Q. Wumbley , 10,602 बाइट्स
  3. Sp3000 , 52,506 बाइट्स
  4. user23013 , 53,884 बाइट्स
  5. nneonneo , 656,813 बाइट्स

लुटेरों:

  1. user23013 , क्रैक किया गया: 11, कुल आकार: 733 + 30 + 2,447 + 71 + 109 + 121 + 97 + 60 + 141 + 200,127 + 7,563 = 211,499 बाइट्स
  2. नेनेनो , क्रैक: 10, कुल आकार: 4,842 + 12,371 + 150 + 3,571 + 96 + 168 + 395 + 1,043 + 458 + 17,372 = 40,466 बाइट्स
  3. Wumpus Q. Wumbley , Cracked: 6, कुल आकार: 22 + 24 + 158 + 32 + 145,245 + 145,475 = 290,956 बाइट्स
  4. डेनिस , क्रैक: 2, कुल आकार: 70 + 73 = 143 बाइट्स
  5. हेरियस , क्रैक: 1, कुल आकार: 9,998 बाइट्स
  6. g.rocket , क्रैक किया गया: 1, कुल आकार: 721 बाइट्स
  7. stokastic , Cracked: 1, कुल आकार: 211 बाइट्स
  8. Sp3000 , फटा: 1, कुल आकार: 133 बाइट्स
  9. ट्विननाइट , क्रैक: 1, कुल आकार: 39 बाइट्स

6
मुझे आश्चर्य है कि कोड की कितनी पंक्तियाँ हमने सामूहिक रूप से इन पहेलियों का निर्माण करते हुए लिखी हैं और उन्हें हल करने का प्रयास किया जा रहा है ... और क्या यह सब प्राप्त करना सार्थक होगा और जब हम काम करेंगे तब इसे जीथब पर चिपका देंगे। जो कुछ भी उन्हें मिला है, उसमें हर कोई योगदान दे सकता है (एन्कोडर, डिकोडर, दोनों सफल और असफल), जैसे-वे, असुविधाजनक और हैकिश हो सकते हैं। README के ​​साथ यदि आपको ऐसा लगता है। यह हमारे सम्मेलन की कार्यवाही की तरह होगा।

हालांकि अब कोई नया उत्तर पोस्ट नहीं किया जा रहा है, यह किसी बिंदु पर प्रश्न को "बंद" करने के लायक हो सकता है। अन्यथा, किसी के लिए यह जवाब देना संभव हो सकता है कि ब्याज कब खत्म हो गया है, और लंबी अवधि के लिए निर्विरोध खड़ा है।
nnonneo

@nneonneo हम्म, मैं आमतौर पर अपनी चुनौतियों को बंद करना पसंद नहीं करता, लेकिन इस मामले में यह एक अच्छा विचार हो सकता है। मुझे भी लगता है कि पिछली 3 प्रविष्टियों को पहले से ही कम ध्यान देने से फायदा हुआ था। मैं शुक्रवार के लिए एक समय सीमा तय करूँगा।
मार्टिन एंडर

@ मार्टिनबटनर: मुझे लगता है कि पुलिस और लुटेरों के लिए यह एक एक्सपायरी डेट होने के लिए मानक होना चाहिए। चुनौतियां केवल इतने लंबे समय तक दिलचस्प रहती हैं। (रिकॉर्ड के लिए, यह चुनौती शायद अभी भी मेरी निजी पसंदीदा है, लेकिन मैं उस राय में पक्षपाती हो सकता हूं :)
nnonneo

जवाबों:


19

.NET रेगेक्स, 841 बाइट्स [सुरक्षित!]

अब जब मुझे एक सुरक्षित प्रविष्टि मिल गई है, तो मैं देखता हूं कि मैं कितना छोटा बना सकता हूं!

^(?<a>){53}((0(((?<-a>)(?<A>){7}|){997}((?<-b>)(?<B>){7}|){997}((?<-c>)(?<C>){7}|){997}((?<-d>)(?<D>){7}|){997}((?<-e>)(?<E>){7}|){997}((?<-f>)(?<F>){7}|){997}((?<-g>)(?<G>){7}|){997}(?<A>){5})|1(((?<-a>)(?<A>){3}|){997}((?<-b>)(?<B>){3}|){997}((?<-c>)(?<C>){3}|){997}((?<-d>)(?<D>){3}|){997}((?<-e>)(?<E>){3}|){997}((?<-f>)(?<F>){3}|){997}((?<-g>)(?<G>){3}|){997}(?<A>)))((?<-A>){997}(?<B>)|){9}((?<-A>)(?<a>)|){997}((?<-B>){997}(?<C>)|){9}((?<-B>)(?<b>)|){997}((?<-C>){997}(?<D>)|){9}((?<-C>)(?<c>)|){997}((?<-D>){997}(?<E>)|){9}((?<-D>)(?<d>)|){997}((?<-E>){997}(?<F>)|){9}((?<-E>)(?<e>)|){997}((?<-F>){997}(?<G>)|){9}((?<-F>)(?<f>)|){997}((?<-G>){997}|){9}((?<-G>)(?<g>)|){997}){256}$(?<-a>){615}(?(a)(?!))(?<-b>){59}(?(b)(?!))(?<-c>){649}(?(c)(?!))(?<-d>){712}(?(d)(?!))(?<-e>){923}(?(e)(?!))(?<-f>){263}(?(f)(?!))(?<-g>){506}(?(g)(?!))

पूर्वनिर्धारित :

^(?<a>){53}
(
    (0(
        ((?<-a>)(?<A>){7}|){997}
        ((?<-b>)(?<B>){7}|){997}
        ((?<-c>)(?<C>){7}|){997}
        ((?<-d>)(?<D>){7}|){997}
        ((?<-e>)(?<E>){7}|){997}
        ((?<-f>)(?<F>){7}|){997}
        ((?<-g>)(?<G>){7}|){997}
        (?<A>){5})
    |1(
        ((?<-a>)(?<A>){3}|){997}
        ((?<-b>)(?<B>){3}|){997}
        ((?<-c>)(?<C>){3}|){997}
        ((?<-d>)(?<D>){3}|){997}
        ((?<-e>)(?<E>){3}|){997}
        ((?<-f>)(?<F>){3}|){997}
        ((?<-g>)(?<G>){3}|){997}
        (?<A>))
    )
    ((?<-A>){997}(?<B>)|){9}((?<-A>)(?<a>)|){997}
    ((?<-B>){997}(?<C>)|){9}((?<-B>)(?<b>)|){997}
    ((?<-C>){997}(?<D>)|){9}((?<-C>)(?<c>)|){997}
    ((?<-D>){997}(?<E>)|){9}((?<-D>)(?<d>)|){997}
    ((?<-E>){997}(?<F>)|){9}((?<-E>)(?<e>)|){997}
    ((?<-F>){997}(?<G>)|){9}((?<-F>)(?<f>)|){997}
    ((?<-G>){997}|){9}      ((?<-G>)(?<g>)|){997}
){256}$

(?<-a>){615}(?(a)(?!))
(?<-b>){59}(?(b)(?!))
(?<-c>){649}(?(c)(?!))
(?<-d>){712}(?(d)(?!))
(?<-e>){923}(?(e)(?!))
(?<-f>){263}(?(f)(?!))
(?<-g>){506}(?(g)(?!))

विशेषताएं:

  • लघु , 841 बाइट्स
  • गोल्फ और हाथ से लिखा हुआ
  • एनपी-हार्ड समस्या को एनकोड करने के लिए नहीं जाना जाता है
  • सबसे अमान्य इनपुट पर टाइम्स आउट :)
  • Http://regexhero.net/tester/ पर परीक्षण किया गया, वैध इनपुट के लिए ~ 5 सेकंड लगते हैं

.NET रेगेक्स में मुझे क्लू करने के लिए Sp3000 और user23013 का धन्यवाद।


72 घंटों के बाद, मैं इस सबमिशन को सुरक्षित बनाने की कुंजी प्रकट कर रहा हूं।

मैच :

1110111111110010000110011000001011011110101111000011101011110011001000000111111111001010000111100011111000000100011110110111001101011001000101111110010111100000000010110001111011011111100000011001101110011111011010100111011101111001110111010001111011000000

गैर-मैच :Aren'tHashFunctionsFun?

स्पष्टीकरण:

यह नियमित अभिव्यक्ति एक बहुत ही सरल और बल्कि बेवकूफ हैश फ़ंक्शन को लागू करती है। हैश फ़ंक्शन xआउटपुट के रूप में एक पूर्णांक की गणना करता है । x53 के बराबर शुरू होता है। यह सामने आए प्रत्येक वर्ण के आधार पर समायोजित किया जाता है: यदि यह a देखता है 0, तो यह सेट हो जाएगा x = 7x + 5, और यदि यह a को देखता है 1, तो यह सेट हो जाएगा x = 3x + 1xउसके बाद mod 997 7 घटाया गया । अंतिम परिणाम एक पूर्वनिर्धारित स्थिरांक के खिलाफ जांचा जाता है; यदि हैश मान बराबर नहीं है, तो regex मेल नहीं खाता।

सात कैप्चर ग्रुप (एजी) का उपयोग आधार -997 अंकों को स्टोर करने के लिए किया जाता है x, जिसमें सात और कैप्चर ग्रुप (एजी) अस्थायी स्टोरेज के रूप में काम करते हैं। मैं कैप्चर समूहों में पूर्णांकों को संग्रहीत करने के लिए .NET रेगेक्स के "बैलेंसिंग कैप्चर ग्रुप्स" एक्सटेंशन का उपयोग करता हूं। तकनीकी रूप से, प्रत्येक कैप्चर ग्रुप से जुड़ा पूर्णांक उस समूह द्वारा कैप्चर किए गए असंतुलित मैचों की संख्या है; "कैप्चरिंग" एक खाली स्ट्रिंग (?<X>)को कैद करने की संख्या का उपयोग करके , और "बैलेंसिंग" समूह का उपयोग करके (?<-X>)कैप्शन की संख्या को घटाता है (जो समूह के पास कोई कैप्चर नहीं होने पर मैच की विफलता का कारण होगा)। दोनों को स्थिर स्थिरांक को जोड़ने और घटाने के लिए दोहराया जा सकता है।

यह हैश एल्गोरिथ्म सिर्फ एक है जिसे मैंने जल्दी में पकाया था, और सबसे छोटा हैश एल्गोरिथ्म है जो कि केवल जोड़ और गुणा का उपयोग करके यथोचित रूप से सुरक्षित लग सकता है। यह निश्चित रूप से क्रिप्टो गुणवत्ता नहीं है, और कमजोरियों जिनके कारण कम से कम 997 में एक टक्कर खोजने के लिए कर होने की संभावना देखते हैं 7 /2 हैश मूल्यांकन।


मुझे अंदाजा था ... तब मैंने हार मान ली क्योंकि मेरी हार्ड ड्राइव पर 500 + जीबी फ्री स्पेस नहीं है।
jimmy23013

3
अब इसे 3 अनियोजित सबमिशन में देखकर, मैं आधिकारिक तौर पर निर्माण के उद्देश्य के बारे में अपनी पूरी अनभिज्ञता दर्ज कर रहा हूं (?<a>){53}। यह खाली पैटर्न को a53 बार नामित समूह में कैप्चर करता प्रतीत होता है । तो a=""फिर 52 बार और सेट करें ? लेकिन मैं वास्तव में नहीं जानता कि क्या (?<Microsoft regexp के विचार में एक ही बात का मतलब है। उनका प्रलेखन भी इसका उल्लेख करने में विफल रहता है । यहां तक ​​कि अगर कोई regexp प्रतियोगिता अनएक्सपेक्टेड माइक्रोसॉफ्ट एक्सटेंशन के साथ यूनिक्स लोगों पर चलती है, तो मेरे अस्तित्व का कोई उद्देश्य नहीं है।

यह एक समूह पर कब्जा है जो 53 बार कुछ भी नहीं पकड़ता है। .NET के पास एक एक्सटेंशन है जिसे बैलेंसिंग ग्रुप कैप्चर कहा जाता है, जो कि मिलान के लिए उनका उत्तर है। प्रत्येक नामित समूह एक स्टैक की तरह काम करता है, इसलिए (?<a>){53}53 बार खाली स्ट्रिंग को धक्का देता है। आप स्टैक का उपयोग करके पॉप कर सकते हैं (?<-a>)। उम्मीद है कि अब यह स्पष्ट है कि यह निर्माण इतना उपयोगी क्यों है।
nnonneo

2
@ WumpusQ.Wumbley मैं यूनिक्स के लोग हैं जिन्होंने इसे उपयोगी पाया।
jimmy23013

4
@ WumpusQ.Wumbley MSDN के पास समूहीकरण निर्माणों के बारे में एक पूरा पृष्ठ है । जो त्वरित संदर्भ से पाया जा सकता है । कौन सा है ".net regex संदर्भ" के लिए पहली हिट तुलनात्मक रूप से अपने पर्ल खोज शब्द के लिए,। ("सिंटैक्स", "मैनुअल" या "विनिर्देश" के लिए समान)।
मार्टिन एंडर

29

बेसिक रेगेक्स, 656813 बाइट्स [सुरक्षित!]

Regex सभी regexes को समाप्त करने के लिए। रात में एक अंतिम तूफान।

पीसीआरई, पर्ल, पायथन और कई अन्य लोगों के तहत परीक्षण योग्य है।

Pastebin पर bzip2'd और base64- एन्कोडेड संस्करण: http://pastebin.com/9kprSWBn ( पास्टेबिन कच्चे संस्करण नहीं चाहता था क्योंकि यह बहुत बड़ा था)।

यह सुनिश्चित करने के लिए कि आपको सही regex मिलता है, आप यह सत्यापित कर सकते हैं कि इसका MD5 हैश है

c121a7604c6f819d3805231c6241c4ef

या जांचें कि यह किसके साथ शुरू होता है

^(?:.*[^!0-9@-Za-z].*|.{,255}|.{257,}|.[U-Za-z].{34}[12569@CDGHKLOPSTWXabefijmnqruvyz].{8}[02468@BDFHJLNPRTVXZbdfhjlnprtvxz].{210}

और के साथ समाप्त होता है

.{56}[7-9@-DM-Tc-js-z].{121}[3-6A-DI-LQ-TYZabg-jo-rw-z].{28}[!0-9@-T].{48})$

कुंजी अभी भी एक अच्छा आरामदायक 256 बाइट्स है।

मैंने पायगेन के साथ इस रेगेक्स का परीक्षण किया, लेकिन ध्यान दें कि यह रेगेक्स पायथन की किसी विशेष विशेषता का उपयोग नहीं करता है। वास्तव में, (?:)(एक समूहीकरण तंत्र के रूप में) के अपवाद के साथ , यह वास्तव में किसी भी रेगेक्स इंजन की कोई विशेष सुविधाओं का उपयोग नहीं करता है: बस मूल चरित्र वर्ग, पुनरावृत्ति और एंकरिंग। इस प्रकार, यह नियमित अभिव्यक्ति इंजनों की एक बड़ी संख्या में परीक्षण योग्य होना चाहिए।

ठीक है, वास्तव में, मैं अभी भी कठिनाई को क्रैक कर सकता हूं, यह मानकर कि कोई व्यक्ति छोटी समस्याओं को तुरंत हल नहीं करता है ... लेकिन मैं दांव लगाता हूं कि लोगों को 1 जीबी रेगेक्स से परेशानी होगी ...


72 घंटे के बाद, यह सबमिशन अनियंत्रित रहता है! इस प्रकार, मैं अब सबमिशन को सुरक्षित बनाने की कुंजी प्रकट कर रहा हूं। यह पहला सुरक्षित सबमिशन है, 30 से अधिक सबमिशन के बाद लगातार लुटेरों द्वारा एक पंक्ति में क्रैक किया गया था।

मैच : Massive Regex Problem Survives The Night!
गैर मैच :rae4q9N4gMXG3QkjV1lvbfN!wI4unaqJtMXG9sqt2Tb!0eonbKx9yUt3xcZlUo5ZDilQO6Wfh25vixRzgWUDdiYgw7@J8LgYINiUzEsIjc1GPV1jpXqGcbS7JETMBAqGSlFC3ZOuCJroqcBeYQtOiEHRpmCM1ZPyRQg26F5Cf!5xthgWNiK!8q0mS7093XlRo7YJTgZUXHEN!tXXhER!Kenf8jRFGaWu6AoQpj!juLyMuUO5i0V5cz7knpDX0nsL

रेगेक्स स्पष्टीकरण:

रेगेक्स "हार्ड" 3SAT समस्या से जानबूझकर शुरू किए गए यादृच्छिक समाधान के साथ उत्पन्न हुआ था। [जिया, मूर एंड स्ट्रेन, 2007] से एल्गोरिथ्म का उपयोग करके यह समस्या उत्पन्न की गई थी: "हिडिंग सॉल्यूशंस द्वारा भ्रामक रूप से हार्ड सैटिस्फैक्टिव फॉर्मूले बनाना"। कुल 1536 चर के लिए छह बूलियन चर को कुंजी के प्रत्येक बाइट में पैक किया जाता है।
रेगेक्स स्वयं काफी सरल है: यह 7680 3SAT क्लॉस में से प्रत्येक को एक औंधा स्थिति (डी मॉर्गन के नियमों द्वारा) के रूप में व्यक्त करता है, और किसी भी स्ट्रिंग से मेल खाता है जो 3SAT क्लॉस में से एक को पूरा नहीं करता है। इसलिए, कुंजी एक स्ट्रिंग है जो रेगेक्स से मेल नहीं खाती है, अर्थात जो क्लॉस के हर एक को संतुष्ट करता है।


1
इसलिए, मैंने अभी पायथन में 60MB रेगेक्स लोड करने की कोशिश की है। जाहिर है, यह बहुत खुश नहीं था। संकलित करने में कई मिनट लग गए, लेकिन शांत भाग यह है कि प्रश्नों का उत्तर देने के लिए लगभग तुरंत था। मुझे संदेह है कि पायथन में 1GB रेगेक्स लोड करने में कुछ घंटे लगेंगे ...
nneonneo

3
या इतना आसान नहीं है। इसे हल करने के लिए मेरे पहले प्रयास के आधार पर, हमें समय समाप्त करने के लिए लगभग 2 ** 61 सीपीयू की आवश्यकता होगी।

12
चुनौती शुरू होती है, "आप एक छोटी ,
ओफ़्फ़ुसेटेड

5
@Ypnypn अब तक की चुनौती बोर्ड पर किसी भी तरह के नायाब रिजेक्स को पाने की रही है - यह ऐसा दिखता है कि यह उस अवरोध को तोड़ने वाला पहला होगा :)
Sp3000

3
@ मार्टिनबटनर: धन्यवाद! मैंने ऐसा किया है। अब मुझे दूर जाना है और इन अन्य एनपी-हार्ड रेगेक्स समस्याओं में से कुछ का प्रयास करना है ...
nneonneo

17

ECMAScript (10602 बाइट्स)

(भाषा नोट: मुझे बहुत सारे पोस्ट दिखाई दे रहे हैं जिनमें माणिक, या अजगर, या जो कुछ भी है, जब वे वास्तव में किसी भी भाषा-विशिष्ट सुविधाओं का उपयोग नहीं करते हैं। यह केवल आवश्यक है (?!...)और (?=...)बैकरेफेर के साथ पॉस ईआरई के शीर्ष पर हैं। वे विशेषताएं संभवतः हैं। आपकी पसंदीदा भाषा का रेगेक्स इंजन, इसलिए चुनौती को आज़माने से हतोत्साहित न हों क्योंकि मैंने जावास्क्रिप्ट ऑनलाइन परीक्षक का उपयोग करने का विकल्प चुना है।)

बस थोड़ा सा मज़ा, कुछ दूसरों के रूप में कम्प्यूटेशनल रूप से मुश्किल नहीं है।

^(?!(.).*\1.|.+(.).*\2)(?=(.))(?=(((?![ҁѧѦЩ]{2}).)*(?=[ҁѧѦЩ]{2}).){2}(?!.*[ЩѦҁѧ]{2}))(?=(((?![ɿqԼϚ]{2}).)*(?=[ϚqԼɿ]{2}).){2}(?!.*[ԼϚɿq]{2}))(?=((?![ϼλҡՄ]{2}).)*(?=[ҡλϼՄ]{2}).(?!.*[Մλϼҡ]{2}))(?=(((?![ʯֆɎF]{2}).)*(?=[FֆʯɎ]{2}).){2}(?!.*[FɎֆʯ]{2}))(?=(((?![AɔbУ]{2}).)*(?=[ɔbAУ]{2}).){3}(?!.*[ɔAbУ]{2}))(?=(((?![ʈͽՄɒ]{2}).)*(?=[ͽՄɒʈ]{2}).){2}(?!.*[ͽՄɒʈ]{2}))(?=(((?![ϙшѭϢ]{2}).)*(?=[Ϣϙѭш]{2}).){2}(?!.*[ѭшϙϢ]{2}))(?=(((?![ՐɏƋѠ]{2}).)*(?=[ƋՐɏѠ]{2}).){2}(?!.*[ѠƋՐɏ]{2}))(?=(((?![Жտʓo]{2}).)*(?=[Жտʓo]{2}).){2}(?!.*[Жʓտo]{2}))(?=(((?![ƆʙƸM]{2}).)*(?=[ƆʙMƸ]{2}).){2}(?!.*[ƆʙMƸ]{2}))(?=(((?![dNѤѯ]{2}).)*(?=[ѤѯNd]{2}).){2}(?!.*[ѤѯdN]{2}))(?=(((?![ҎvȵҜ]{2}).)*(?=[vҜȵҎ]{2}).){2}(?!.*[ҎvҜȵ]{2}))(?=(((?![ҹɀҀҤ]{2}).)*(?=[ɀҤҀҹ]{2}).){2}(?!.*[ҹҤҀɀ]{2}))(?=(((?![OɄfC]{2}).)*(?=[fOɄC]{2}).){3}(?!.*[ɄOfC]{2}))(?=((?![ǷϗЋԒ]{2}).)*(?=[ЋϗԒǷ]{2}).(?!.*[ԒϗЋǷ]{2}))(?=((?![էҹϞҀ]{2}).)*(?=[ҹҀէϞ]{2}).(?!.*[ϞէҹҀ]{2}))(?=(((?![QԶϧk]{2}).)*(?=[QkϧԶ]{2}).){2}(?!.*[ϧԶkQ]{2}))(?=(((?![cիYt]{2}).)*(?=[իYct]{2}).){2}(?!.*[tcYի]{2}))(?=(((?![ɐҷCɄ]{2}).)*(?=[CɄɐҷ]{2}).){3}(?!.*[CҷɐɄ]{2}))(?=(((?![ҥմѾϢ]{2}).)*(?=[ϢѾմҥ]{2}).){2}(?!.*[մϢѾҥ]{2}))(?=((?![Ϛǝjɰ]{2}).)*(?=[Ϛǝjɰ]{2}).(?!.*[jɰϚǝ]{2}))(?=((?![ϭBѾҸ]{2}).)*(?=[ѾҸϭB]{2}).(?!.*[ѾҸBϭ]{2}))(?=((?![ϼλyՎ]{2}).)*(?=[λՎyϼ]{2}).(?!.*[λՎyϼ]{2}))(?=((?![MԋƆƻ]{2}).)*(?=[ƻƆԋM]{2}).(?!.*[MƆԋƻ]{2}))(?=(((?![uԳƎȺ]{2}).)*(?=[uԳƎȺ]{2}).){3}(?!.*[ȺƎuԳ]{2}))(?=((?![ɂƐϣq]{2}).)*(?=[qϣƐɂ]{2}).(?!.*[ɂƐϣq]{2}))(?=(((?![ϫճωƺ]{2}).)*(?=[ωϫճƺ]{2}).){2}(?!.*[ճƺϫω]{2}))(?=((?![ζɏΞƋ]{2}).)*(?=[ɏƋζΞ]{2}).(?!.*[ɏƋζΞ]{2}))(?=(((?![Ӄxԏϣ]{2}).)*(?=[Ӄxԏϣ]{2}).){2}(?!.*[ԏxϣӃ]{2}))(?=(((?![ԈʄʫԻ]{2}).)*(?=[ԻʄԈʫ]{2}).){2}(?!.*[ʫԈԻʄ]{2}))(?=(((?![ɒէƣʈ]{2}).)*(?=[ʈɒէƣ]{2}).){2}(?!.*[ʈƣɒէ]{2}))(?=(((?![Ϥϟƺϫ]{2}).)*(?=[Ϥϫϟƺ]{2}).){3}(?!.*[ƺϫϤϟ]{2}))(?=((?![ɋȡþͼ]{2}).)*(?=[ȡþͼɋ]{2}).(?!.*[þͼȡɋ]{2}))(?=((?![ҡʈԄՄ]{2}).)*(?=[ʈԄՄҡ]{2}).(?!.*[ՄԄҡʈ]{2}))(?=(((?![ʌkȿՌ]{2}).)*(?=[Ռȿkʌ]{2}).){3}(?!.*[kՌȿʌ]{2}))(?=(((?![gǝժʮ]{2}).)*(?=[ǝgʮժ]{2}).){2}(?!.*[gǝʮժ]{2}))(?=((?![ɧƸȝՊ]{2}).)*(?=[ƸɧȝՊ]{2}).(?!.*[ՊȝɧƸ]{2}))(?=(((?![ɜȶʟɀ]{2}).)*(?=[ɀȶʟɜ]{2}).){3}(?!.*[ȶɀʟɜ]{2}))(?=((?![ƅѿOf]{2}).)*(?=[ѿfƅO]{2}).(?!.*[Oѿfƅ]{2}))(?=(((?![GҠƪԅ]{2}).)*(?=[ҠGԅƪ]{2}).){2}(?!.*[GԅƪҠ]{2}))(?=(((?![Һӻѩͽ]{2}).)*(?=[ӻͽҺѩ]{2}).){2}(?!.*[ͽҺѩӻ]{2}))(?=(((?![ʊLՅϪ]{2}).)*(?=[ՅʊLϪ]{2}).){3}(?!.*[LʊϪՅ]{2}))(?=(((?![ɅՈƪԅ]{2}).)*(?=[ƪԅՈɅ]{2}).){2}(?!.*[ԅՈƪɅ]{2}))(?=((?![ʇɊƈѹ]{2}).)*(?=[Ɋƈʇѹ]{2}).(?!.*[ʇƈѹɊ]{2}))(?=(((?![նЏYI]{2}).)*(?=[IYնЏ]{2}).){2}(?!.*[նЏIY]{2}))(?=((?![ͼխɷȡ]{2}).)*(?=[ͼȡɷխ]{2}).(?!.*[ɷխȡͼ]{2}))(?=((?![ҝɞҎv]{2}).)*(?=[ɞҎvҝ]{2}).(?!.*[Ҏҝvɞ]{2}))(?=(((?![eƪGω]{2}).)*(?=[Geƪω]{2}).){3}(?!.*[ƪeGω]{2}))(?=(((?![ɂɿƱq]{2}).)*(?=[Ʊqɿɂ]{2}).){2}(?!.*[Ʊqɂɿ]{2}))(?=((?![ƣЖoɒ]{2}).)*(?=[Жɒoƣ]{2}).(?!.*[ƣoɒЖ]{2}))(?=(((?![Ҵԉձϻ]{2}).)*(?=[ձԉϻҴ]{2}).){2}(?!.*[ϻԉձҴ]{2}))(?=((?![ɆɟѧE]{2}).)*(?=[EѧɆɟ]{2}).(?!.*[ѧEɆɟ]{2}))(?=((?![ѪɝȾѸ]{2}).)*(?=[ѪѸɝȾ]{2}).(?!.*[ѪѸȾɝ]{2}))(?=(((?![ßΩԂɥ]{2}).)*(?=[ɥΩßԂ]{2}).){2}(?!.*[ɥßԂΩ]{2}))(?=(((?![ӃդƐϣ]{2}).)*(?=[ƐդӃϣ]{2}).){2}(?!.*[ϣդƐӃ]{2}))(?=(((?![ѪլѸԿ]{2}).)*(?=[ԿѪѸլ]{2}).){2}(?!.*[ԿѪլѸ]{2}))(?=((?![ɉшƻϙ]{2}).)*(?=[ɉƻшϙ]{2}).(?!.*[ϙƻɉш]{2}))(?=((?![ѹփʯΨ]{2}).)*(?=[ʯփΨѹ]{2}).(?!.*[ѹʯփΨ]{2}))(?=((?![ƕϯʮҏ]{2}).)*(?=[ƕҏʮϯ]{2}).(?!.*[ҏϯʮƕ]{2}))(?=((?![ՌȿSբ]{2}).)*(?=[բՌSȿ]{2}).(?!.*[SȿբՌ]{2}))(?=(((?![ИщɌK]{2}).)*(?=[ɌщИK]{2}).){2}(?!.*[ɌИщK]{2}))(?=(((?![aҵɸւ]{2}).)*(?=[ւҵaɸ]{2}).){2}(?!.*[aւɸҵ]{2}))(?=(((?![լѸխɷ]{2}).)*(?=[ɷѸլխ]{2}).){2}(?!.*[խɷլѸ]{2}))(?=(((?![ՉLʝϥ]{2}).)*(?=[LϥʝՉ]{2}).){2}(?!.*[ՉϥʝL]{2}))(?=((?![ʬϬȝɣ]{2}).)*(?=[Ϭɣȝʬ]{2}).(?!.*[ȝɣϬʬ]{2}))(?=(((?![ɺȴҵւ]{2}).)*(?=[ȴɺҵւ]{2}).){3}(?!.*[ҵȴɺւ]{2}))(?=(((?![ΞʇɊζ]{2}).)*(?=[ζɊʇΞ]{2}).){2}(?!.*[ΞɊζʇ]{2}))(?=(((?![դփӃΨ]{2}).)*(?=[ΨփդӃ]{2}).){2}(?!.*[ΨփդӃ]{2}))(?=((?![ԳuҦc]{2}).)*(?=[uԳҦc]{2}).(?!.*[ҦucԳ]{2}))(?=(((?![ԻЭɌщ]{2}).)*(?=[ԻɌщЭ]{2}).){2}(?!.*[ɌщԻЭ]{2}))(?=((?![ЉջѮӺ]{2}).)*(?=[ӺЉѮջ]{2}).(?!.*[ѮӺЉջ]{2}))(?=(((?![ӿѤɹN]{2}).)*(?=[ӿɹѤN]{2}).){3}(?!.*[ѤNɹӿ]{2}))(?=(((?![ƕʮBg]{2}).)*(?=[Bʮgƕ]{2}).){3}(?!.*[Bʮgƕ]{2}))(?=((?![կƛȸԓ]{2}).)*(?=[ƛȸԓկ]{2}).(?!.*[կԓƛȸ]{2}))(?=(((?![ɥДȸh]{2}).)*(?=[ɥhДȸ]{2}).){2}(?!.*[ɥhȸД]{2}))(?=(((?![ʁԺեW]{2}).)*(?=[եWԺʁ]{2}).){2}(?!.*[ԺʁWե]{2}))(?=((?![ɮςϿʢ]{2}).)*(?=[ʢϿɮς]{2}).(?!.*[ɮςʢϿ]{2}))(?=(((?![ձУAƾ]{2}).)*(?=[ƾУձA]{2}).){2}(?!.*[УAձƾ]{2}))(?=(((?![ԻϠɌʄ]{2}).)*(?=[ʄɌԻϠ]{2}).){2}(?!.*[ϠɌʄԻ]{2}))(?=((?![ɜҥմȶ]{2}).)*(?=[ҥȶɜմ]{2}).(?!.*[ҥȶɜմ]{2}))(?=(((?![ƏՀթϞ]{2}).)*(?=[թՀƏϞ]{2}).){2}(?!.*[ƏՀթϞ]{2}))(?=((?![ҩɃȽϛ]{2}).)*(?=[ɃȽϛҩ]{2}).(?!.*[ҩϛɃȽ]{2}))(?=((?![ҠȺԃD]{2}).)*(?=[ȺҠԃD]{2}).(?!.*[DԃҠȺ]{2}))(?=((?![ɆʊLϥ]{2}).)*(?=[LϥʊɆ]{2}).(?!.*[ʊϥɆL]{2}))(?=(((?![ͽѩɒЖ]{2}).)*(?=[ͽɒѩЖ]{2}).){2}(?!.*[ѩɒЖͽ]{2}))(?=(((?![ςϪʢƩ]{2}).)*(?=[ƩʢςϪ]{2}).){3}(?!.*[ςƩϪʢ]{2}))(?=(((?![ҁϥѧɆ]{2}).)*(?=[ϥѧҁɆ]{2}).){2}(?!.*[ѧҁϥɆ]{2}))(?=((?![Жϗѩʓ]{2}).)*(?=[ʓϗЖѩ]{2}).(?!.*[ʓЖϗѩ]{2}))(?=(((?![ʁեɋþ]{2}).)*(?=[ʁɋեþ]{2}).){2}(?!.*[þեʁɋ]{2}))(?=((?![Mnƻɉ]{2}).)*(?=[Mɉƻn]{2}).(?!.*[ƻMnɉ]{2}))(?=(((?![HʬϬѺ]{2}).)*(?=[HѺʬϬ]{2}).){2}(?!.*[ϬѺʬH]{2}))(?=(((?![cիըҦ]{2}).)*(?=[ըҦիc]{2}).){2}(?!.*[cիҦը]{2}))(?=((?![ȸɥկΩ]{2}).)*(?=[ɥΩկȸ]{2}).(?!.*[ɥȸկΩ]{2}))(?=(((?![ʫҝԲɞ]{2}).)*(?=[ʫԲɞҝ]{2}).){2}(?!.*[ʫɞԲҝ]{2}))(?=(((?![ҺЋϗѩ]{2}).)*(?=[ѩҺϗЋ]{2}).){3}(?!.*[ҺѩЋϗ]{2}))(?=((?![ʯΨɎч]{2}).)*(?=[ʯΨɎч]{2}).(?!.*[ʯΨɎч]{2}))(?=(((?![ѮɔЉA]{2}).)*(?=[ЉɔѮA]{2}).){2}(?!.*[ѮɔAЉ]{2}))(?=(((?![ʞӶdN]{2}).)*(?=[dNʞӶ]{2}).){2}(?!.*[ӶNdʞ]{2}))(?=(((?![ԀŋҔɴ]{2}).)*(?=[ŋԀҔɴ]{2}).){3}(?!.*[ҔɴŋԀ]{2}))(?=(((?![ΠЪƏթ]{2}).)*(?=[ƏΠթЪ]{2}).){3}(?!.*[ΠթЪƏ]{2}))(?=(((?![OՌѿբ]{2}).)*(?=[ՌOբѿ]{2}).){2}(?!.*[OբՌѿ]{2}))(?=((?![ɮȾʢѪ]{2}).)*(?=[ɮȾʢѪ]{2}).(?!.*[ѪȾɮʢ]{2}))(?=((?![ЪϤՋΠ]{2}).)*(?=[ϤΠЪՋ]{2}).(?!.*[ՋΠЪϤ]{2}))(?=((?![Մͽӻϼ]{2}).)*(?=[ͽϼՄӻ]{2}).(?!.*[ϼͽՄӻ]{2}))(?=((?![ԋҳѦЩ]{2}).)*(?=[ѦԋЩҳ]{2}).(?!.*[ѦЩҳԋ]{2}))(?=((?![gҶҸB]{2}).)*(?=[BҶgҸ]{2}).(?!.*[ҸBgҶ]{2}))(?=(((?![ɢλҡѥ]{2}).)*(?=[λҡɢѥ]{2}).){2}(?!.*[ѥλɢҡ]{2}))(?=(((?![AϻЉձ]{2}).)*(?=[ϻձЉA]{2}).){2}(?!.*[ϻձЉA]{2}))(?=((?![tRիp]{2}).)*(?=[Rtpի]{2}).(?!.*[tpRի]{2}))(?=(((?![ɮȹϿÞ]{2}).)*(?=[ϿɮÞȹ]{2}).){2}(?!.*[ϿɮȹÞ]{2}))(?=((?![ϯժʮџ]{2}).)*(?=[ժџϯʮ]{2}).(?!.*[џϯʮժ]{2}))(?=(((?![HʬȠҨ]{2}).)*(?=[HҨȠʬ]{2}).){2}(?!.*[ȠҨʬH]{2}))(?=((?![ՒԉPϻ]{2}).)*(?=[ԉϻPՒ]{2}).(?!.*[PϻԉՒ]{2}))((?=Գ[նƎuc]|ƕ[Bʮȴҏ]|ϣ[ԏɂӃƐ]|Ʊ[ɿϬӄɂ]|Ѿ[ϭϢҸҥ]|ͽ[ѩӻՄɒ]|ɷ[խͼլ]|փ[դiѹΨ]|ϛ[ɅɃȽՀ]|Ԃ[ɥѭմß]|խ[ȡɐѸɷ]|P[ȠՒԉ]|ӷ[ЩEՊƆ]|Ə[ΠթƣϞ]|ч[xɎΨ]|ʄ[ԈϠԻҺ]|Љ[AѮϻջ]|ɒ[ʈƣЖͽ]|ʞ[ӶɔNЦ]|Ɛ[ϣɰqդ]|ʮ[ϯժƕg]|ɥ[ȸДԂΩ]|Ҕ[ŋՐɺɴ]|χ[Ԏѯ]|Ջ[ΠϤԾտ]|Ɏ[чʯֆ]|ҥ[մѬѾȶ]|ɞ[ҝҎԲ]|ҏ[ƕՐϯɺ]|Հ[ϛթϞw]|y[ϼԈҝՎ]|λ[ѥՎϼҡ]|Մ[ͽҡϼʈ]|ϟ[ϫϤԾ]|Ћ[ǷϠҺϗ]|ʫ[ԲԈҝԻ]|ǝ[gjɰժ]|Ԅ[ҡҹʟʈ]|ʌ[kՌэC]|ȶ[ҥЊɜʟ]|Ɍ[щИԻϠ]|ի[Rtըc]|Ո[ƪƺЪɅ]|ƺ[ՈϤϫω]|ß[ԂΩɜҤ]|I[նЏљ]|ҷ[ȡэCɐ]|Ц[ςbʞɹ]|Ǝ[ǂȺԳG]|ӄ[ƱӾѺ]|ʇ[ζiɊѹ]|ֆ[ɎF]|ɏ[ѠΞƋ]|Բ[ɞʫЭ]|Ի[ɌЭʫʄ]|ƪ[ԅωGՈ]|ȡ[խɋͼҷ]|Ϡ[ɌдʄЋ]|ɋ[эʁþȡ]|U[ɝɄՅʝ]|ɺ[ҵȴҏҔ]|Ƚ[ԅϛDҩ]|Ɋ[ƈʇΞ]|ժ[Φʮǝџ]|Ӿ[ӄɂԏ]|Ψ[Ӄчʯփ]|Ω[Ղկßɥ]|щ[KɌЭ]|ɉ[nҶшƻ]|Ժ[WԱե]|G[ƎeҠƪ]|ղ[կՂՑɃ]|Ӷ[ԷʞdѮ]|u[ȺԳQҦ]|Ѡ[ɴɏՐ]|ƛ[ԓՑѿկ]|ɜ[ɀմßȶ]|Ҵ[ԉձʡɧ]|ȿ[kSՌԃ]|ɂ[qӾϣƱ]|Պ[ӷɧƸʡ]|Щ[ѧѦӷԋ]|Ⱦ[ѪɝʢՅ]|Ƀ[ղҩwϛ]|Ҏ[vҜɞ]|ɐ[ҷɄɝխ]|ԏ[ϣxӾ]|Ҁ[ҹϞҤw]|մ[ԂҥɜϢ]|ҳ[ДԋϙѦ]|Ϛ[jɰqԼ]|w[ҀՀɃՂ]|E[ӷɟѧʡ]|У[μAbƾ]|ձ[ҴϻƾA]|ɟ[ɆμEƾ]|Ҥ[ҀßՂɀ]|v[ȵҎՎҝ]|ш[ϢϙɉҸ]|Ͽ[ɹɮςÞ]|O[fCՌѿ]|ʁ[ԶեWɋ]|ȹ[ÞԿɮ]|Ϟ[ՀէҀƏ]|ԋ[ƻҳЩƆ]|ƅ[fԓՉѿ]|ω[ƺeճƪ]|ʈ[ɒԄՄէ]|Ԉ[ʫʄӻy]|Ƌ[ζՐϯɏ]|ɰ[ǝƐΦϚ]|ȴ[ƕϭւɺ]|Δ[Չhҁԓ]|Π[ՋЪoƏ]|Ϫ[ʢƩʊՅ]|ӻ[ҺԈͽϼ]|ʝ[ՉLfU]|Ծ[ϟrՋ]|þ[ɋեͼ]|ӿ[ѤɹÞ]|բ[ՌՑSѿ]|ҡ[λՄɢԄ]|ɸ[ȻՃaҵ]|д[ϠИǷ]|ճ[ωϫл]|ɀ[ҹҤʟɜ]|л[ճeљ]|Ϥ[ϟЪƺՋ]|c[ԳYҦի]|Ռ[Oʌբȿ]|ն[ԳǂYI]|Ʌ[ԅϛՈթ]|ҝ[yɞʫv]|p[ƜRt]|ƣ[էƏɒo]|Ҷ[Ҹɉgj]|A[УձɔЉ]|Þ[ȹϿӿ]|Ƿ[дЋԒ]|k[QԶȿʌ]|ջ[ՒӺЉ]|Ɇ[ʊѧϥɟ]|ʢ[ςϪɮȾ]|ѭ[ДϢϙԂ]|ʘ[ЏƜt]|ѹ[ʇʯփƈ]|ʟ[Ԅȶɀɢ]|ϯ[ҏƋʮџ]|լ[ԿɷѸ]|Ƹ[ՊʙƆȝ]|N[ɹʞdѤ]|ς[ЦϿʢƩ]|ǂ[eƎљն]|ѧ[ɆEҁЩ]|ɴ[ѠҔԀ]|Ʉ[ɐfCU]|ҹ[ԄҀէɀ]|Ւ[ջPϻ]|ѥ[ɢλaՃ]|o[ΠտЖƣ]|g[BҶʮǝ]|Կ[լѪȹ]|Џ[ʘIY]|Y[ctЏն]|Ҡ[ȺDGԅ]|Ѧ[Щҁҳh]|Ѻ[HϬӄ]|ɹ[NЦϿӿ]|ԓ[ƛƅΔȸ]|f[OƅɄʝ]|L[ʝʊՅϥ]|ϼ[yӻλՄ]|џ[ζժiϯ]|ҩ[SɃȽՑ]|Ʃ[Ϫμbς]|դ[փƐӃΦ]|Ѯ[ӶӺЉɔ]|ƻ[ɉԋϙM]|ѩ[ҺϗͽЖ]|ʊ[μɆϪL]|Ж[ɒʓѩo]|B[ƕҸgϭ]|ԅ[ҠɅƪȽ]|ɔ[ʞѮAb]|ϗ[ЋʓԒѩ]|Ɔ[ӷMƸԋ]|љ[лǂI]|ȸ[ɥԓhկ]|q[ƐɿϚɂ]|Ҹ[шҶBѾ]|ʡ[ҴƾEՊ]|Ԏ[dχԷ]|j[ϚnǝҶ]|Ҧ[uըcϧ]|ϻ[ՒЉԉձ]|ʙ[ƸԼɣM]|ե[ʁþԺ]|Ƞ[PHҨ]|Φ[ɰդiժ]|Њ[ɢaѬȶ]|b[ɔƩЦУ]|Չ[ʝƅϥΔ]|ϧ[ԶҦWQ]|Ճ[ѥɸȵՎ]|Ҩ[ɧԉȠʬ]|ҁ[ΔѧѦϥ]|Ց[ҩƛղբ]|ɿ[qԼɣƱ]|μ[УƩɟʊ]|e[ωǂGл]|Һ[Ћʄѩӻ]|ѯ[dѤχ]|Ԓ[Ƿюϗ]|ҵ[ɸɺŋւ]|տ[Ջʓro]|ϙ[ѭƻҳш]|R[իԱp]|Ɯ[pʘ]|r[Ծюտ]|ƈ[ɊѹF]|M[ʙnƆƻ]|i[փʇΦџ]|ƾ[ձУʡɟ]|ɝ[ѸȾɐU]|ю[Ԓʓr]|Д[hҳѭɥ]|a[Њѥւɸ]|Յ[LUϪȾ]|ϭ[ѬBѾȴ]|Ѹ[Ѫɝխլ]|D[ԃȽҠS]|Ⱥ[ԃuƎҠ]|Ȼ[ŋȵɤɸ]|э[ʌԶҷɋ]|Ѥ[ѯӿN]|ԃ[ȺDȿQ]|ȵ[ҜȻՃv]|S[բȿҩD]|Ղ[ҤwΩղ]|ɢ[ѥҡʟЊ]|ɣ[Ϭɿȝʙ]|Վ[yvλՃ]|Ϭ[ɣʬƱѺ]|Ӄ[ϣxΨդ]|թ[ƏɅЪՀ]|ȝ[ʬƸɧɣ]|Ԁ[ɤɴŋ]|ѿ[ƅOƛբ]|H[ȠʬѺ]|F[ֆƈʯ]|Ѫ[ѸȾɮԿ]|է[ʈƣϞҹ]|ʯ[ѹFɎΨ]|ŋ[ȻҔԀҵ]|ɤ[ԀҜȻ]|ԉ[ҴPҨϻ]|ͼ[ȡɷþ]|t[իʘpY]|Ϣ[ѭմѾш]|Э[щԲԻ]|ɮ[ʢѪϿȹ]|ϫ[ƺճϟ]|Ѭ[Њւϭҥ]|Լ[Ϛnɿʙ]|Ξ[ζɊɏ]|Է[ԎӺӶ]|Q[ϧkԃu]|ւ[ҵaѬȴ]|Ր[ѠҏҔƋ]|ը[իԱWҦ]|ʓ[տϗюЖ]|K[щИ]|Ӻ[ԷѮջ]|x[чӃԏ]|И[KɌд]|ʬ[HҨȝϬ]|Ա[RըԺ]|ɧ[ȝҴՊҨ]|n[jɉMԼ]|C[ʌҷɄO]|W[ϧըʁԺ]|h[ДѦΔȸ]|ϥ[ՉLɆҁ]|Ъ[ΠՈϤթ]|կ[Ωղƛȸ]|ζ[џΞʇƋ]|Ҝ[ɤҎȵ]|Զ[ϧkʁэ]|d[ԎNѯӶ]).){3,}\3

यहाँ परीक्षण करें: http://regex101.com/r/kF2oQ3/1

(चहकते हुए विकेट)

कोई लेने वाला नहीं? स्पॉइलर को बिना किसी सबूत के पोस्ट करने के बारे में सोचना निराशाजनक है कि किसी ने भी इसे लंबे समय से देखा कि यह समझने के लिए कि यह किस प्रकार की समस्या है।

मैं बाद में पोस्ट करने के लिए एक पूरी व्याख्या लिख ​​रहा हूं, लेकिन मुझे लगता है कि अगर कोई मुझे हरा देता है तो मुझे खुशी होगी।

जब मैंने कहा कि यह "कम्प्यूटेशनल रूप से कठिन नहीं था" ... यह एक एनपी-पूर्ण समस्या का एक उदाहरण है, लेकिन एक बड़ा उदाहरण नहीं है ।

संकेत: यह एक प्रकार की पेंसिल और पेपर पहेली है। लेकिन मैं काफी प्रभावित होगा यदि आप इसे पेंसिल और पेपर के साथ अकेले हल कर सकते हैं (regexp को डिकोड करने के बाद मुद्रण के लिए उपयुक्त रूप में)।

बिगाड़ने का समय

यहाँ बिगाड़ने वालों के कई स्तर हैं। यदि आपने अभी तक regexp को हल नहीं किया है, तो आप पहले स्पॉइलर ब्लॉक को पढ़ने के बाद फिर से कोशिश करना चाह सकते हैं। रीजएक्सपी से मेल खाने वाली वास्तविक कुंजी अंतिम स्पॉइलर ब्लॉक के बाद है।

यह regexp एक Slitherlink पहेली को एन्कोड करता है ।

एक बार जब आप यह पता लगा लेते हैं कि क्या चल रहा है और regexp को एक स्लीइलिंक ग्रिड में बदल देंगे, तो आपको जल्दी से पता चलेगा कि यह औसत स्लेलिंक की तुलना में कठिन है। यह एक 16x16 वर्ग ग्रिड पर है, जो सामान्य 10x10 से बड़ा है। यह भी कोई 0सुराग नहीं है और रिश्तेदार की कमी होने में थोड़ा असामान्य है 30के 3साथ काम करने के लिए सबसे आसान सुराग हैं, इसलिए मैं आपको उनमें से बहुत कुछ नहीं देना चाहता।

पहेली

खराब होने की दूसरी परत:

जब आप स्लेरीलिंक पहेली हल कर रहे हैं, तो एक अतिरिक्त आश्चर्य चकित हो जाता है: इस स्लेरीलिंक में एक से अधिक समाधान हैं। यदि आप एक नियमित स्लेरीलिंक सॉल्वर हैं, और आपको एक अनोखे समाधान की धारणा के आधार पर कटौती करने की आदत है, तो आप इसके द्वारा भ्रमित हो सकते हैं। यदि हां, तो आप एक धोखेबाज़ हैं और यह आपकी सजा है! एक पहेली सॉल्वर के काम का हिस्सा यह पता लगाना है कि कितने समाधान हैं।

खराब होने की अंतिम परत:

अंतिम मोड़: स्लेरिंकलिंक के 2 समाधान ज्यादातर समान हैं, लेकिन एक दूसरे की तुलना में थोड़ा लंबा है। आपको लघु खोजने की आवश्यकता है। यदि आप केवल एक लंबा पाया और इसे regexp से मिलान करने के लिए एक स्ट्रिंग के रूप में एन्कोड किया, तो स्ट्रिंग 257 वर्ण लंबा होगा। पथ 256 नोड्स से गुजरता है, लेकिन आपको लूप को बंद करने के लिए पहले नोड को अंत में दोहराना होगा। और अगर आपको वह मिल गया है, तो आप सोच सकते हैं कि मैंने एक गलती की और उस अतिरिक्त चरित्र को गिनना भूल गया। नहीं! और / या गोत्र! (और / या Boosh! और / या Kakow!)

लघु समाधान 254 खंड लंबा है और 255 वर्णों की एक स्ट्रिंग को एन्कोड करता है जो कि कुंजी है। चूंकि आप लूप पर किसी भी नोड पर शुरू कर सकते हैं और दक्षिणावर्त या वामावर्त पर आगे बढ़ सकते हैं, 254 * 2 = 508 संभावित उत्तर हैं।

समाधान

गैर-मैच: bananabananabanana
मैच: ƜpRԱԺեþɋэʌkȿՌOfɄCҷɐխɷլԿѪɮȹÞӿѤNɹЦʞӶdѯχԎԷӺջՒϻЉAɔbУƾձҴԉҨʬHѺӄӾԏxчɎֆFƈɊΞζџiփΨӃϣɂƱϬɣɿqϚɰƐդΦժʮgBƕȴւҵɺҏϯƋՐѠɴҔŋԀɤȻɸaЊѬҥѾҸшɉҶjnMʙƸՊʡEɟμƩςʢϪʊLՅȾɝUʝՉϥҁѧЩӷƆԋҳϙѭϢմԂɥȸhΔԓƛѿբՑҩSDȽԅҠGeωƪՈɅϛɃwҀҤՂΩßɜȶʟɀҹԄҡλѥՃȵҜҎɞԲЭщɌИдϠʄԻʫҝyϼӻҺЋϗѩͽɒʈէϞՀթЪΠƏƣoտʓюrԾϟϤƺϫճлљIնǂƎԳuȺԃQϧԶʁWըիcYЏʘƜ
प्रमाण: http://regex101.com/r/pJ3uM9/2


72 घंटे के माध्यम से इसे बनाने के लिए बधाई! अब आप कुंजी को प्रकट करके क्रैकिंग के खिलाफ अपना जवाब लॉक कर सकते हैं। जब तक आप नहीं करते, तब तक उत्तर को क्रैक किया जा सकता है।
मार्टिन एंडर

मैंने कोशिश की, लेकिन पता नहीं चला कि यह प्लेनर है ...
jimmy23013

14

पर्ल स्वाद, 158 [फटा]

यहाँ मेरा पहला प्रयास है:

(?(R)|^(?=[a-z]))((?!.*(?&K))(((?|([?-K])|(?'K'$)|(?'k'j'k'?)|(?'k'C[^_^]{3,33}))(?(3)\3|3)){3}(?(R)R(-.-)|(?R))(?'k'<grc>-(?!(?&k))\4(?(R)|\$\4(?5)$)))|(?R))

इसे ideone.com पर टेस्ट करें

(?(R)|^(?=[a-z]))बहुत पहले वर्ण में एक लोअरकेस अक्षर होना चाहिए
(?!.*(?&K))जिसमें स्ट्रिंग में ASCII रेंज के [?-K]
(?|...|(?'k'j'k'?)|...)मैचों में अक्षर नहीं हो सकते हैं j'k(अन्य समूह अनिवार्य रूप से लाल झुंड हैं)
(?(3)\3|3){3}पुनरावृत्ति 3 स्तरों से मेल खाते हैं, या '3' पुनरावृत्ति के 3 स्तरों के बाद, 3
(?(R)...|(?R))से अधिक बार दोहराएं। पूरे रेगेक्स को एक बार या कुछ वर्णों से मिलान करें जो
...(?!(?&k))...मुझे लगता है कि यह [?-K]फिर से है, लेकिन मैं
(?(R)|...$)पुनरावृत्ति के बाद याद नहीं कर सकता , कुछ समूहों से मेल खाता हूं और स्ट्रिंग को समाप्त करता हूं
|(?R)यदि कुछ भी मेल नहीं खाता है, तो यह अनंत पुनरावर्तन का समय है: डी


4
मैच: j'k3j'kj'k3j'kj'kj'k3j'k3j'kj'k3j'kj'kj'k3R-k-<grc>-j'k<grc>-j'k$j'k-k-नॉन-मैच: HOLYCRAPTHATWASEVIL( सबूत के लिए ideone.com/pXaGaX पर उपलब्ध मैच )

16
हर कोई जिसने इसे हल करने की कोशिश की और यहां तक ​​कि आधे रास्ते पर पहुंच गया, अब पर्ल रेगेक्स इंजन के लिए 2 बग रिपोर्ट और 3 प्रलेखन पैच भेजने के लिए तैयार है। (और हम सब अलग-अलग चीजों के लिए)

7
कूल की के लिए +1 और अपने रेगेक्स में इमोटिकॉन होने पर[^_^] (-.-)
जस्टफेल करें

@ WumpusQ। अच्छी तरह से किया! मुझे लगता है कि लुटेरे इसे जीत रहे हैं :(
grc

3
मेरी पिछली टिप्पणी ज्यादातर एक मजाक थी, लेकिन शायद कुछ स्पष्टीकरण अच्छा होगा। नामित कैप्चर समूहों के उपयोग के अंदर (?|...)मुश्किल है, लेकिन यह है प्रलेखित। उस मार्ग से perlreशुरू होने Be careful when using the branch reset pattern in combination with named captures.वाली चाल को देखिए कि समूह ऐसे हैं जिनकी संख्या समान है लेकिन अलग-अलग नाम एक ही समूह हैं , जबकि समूह जिनका एक ही नाम है लेकिन विभिन्न संख्याएँ अलग - अलग समूह हैं

12

जेएस स्वाद, 9998 बाइट्स [फटा]

^(?!.*(.).*\1)(?=M)((?=!7|!D|!a|!§|!¾|!Ö|!ù|!Ě|!į|!Ň|"C|"s|"t|"¡|"°|"»|"è|"ñ|"÷|"ķ|"ļ|"Œ|#W|#k|#l|#o|#q|#¶|#À|#Â|#Æ|#č|%!|%1|%O|%ÿ|%Ĕ|%Ğ|%Ī|%ĭ|&e|&q|&Õ|&æ|&ü|&đ|&Ĩ|'%|'`|'k|'¯|'É|'í|'þ|'ė|'Ğ|'ĩ|'IJ|'ļ|'ł|,%|,'|,l|,ª|,®|,¸|,¹|,ã|,õ|,Ċ|,Ġ|,Ī|,İ|,Ņ|-U|-V|-»|-Ï|-Þ|-ì|0_|0u|0°|0Ġ|0İ|0ł|1#|1-|1g|1å|1é|1ą|1Ļ|1ń|2B|2O|2¬|2ë|2ò|2õ|2Ğ|2ĩ|2į|2IJ|2ļ|3d|3²|3Ï|3Þ|3ß|3ç|3ø|3ĉ|3ķ|3ĸ|3Ŀ|4c|4£|4ß|4ã|4Ċ|4ģ|4Ĩ|4ő|4Œ|5&|5Q|5û|5Ā|5ě|5ĩ|6ú|6Ķ|6Ł|7Q|7V|7e|7²|7Á|7Þ|7à|7đ|7Ġ|7ĵ|8w|8¯|8¾|8ņ|8ő|9H|9Y|9i|:6|:s|:¬|:ð|:ü|:Ĉ|:Ċ|:Ĵ|:ĸ|:Ŀ|;X|;®|;¯|;²|;¸|;Ó|;à|;ĥ|;Œ|<-|<t|<å|<ø|<Į|<Ľ|<ō|=&|=l|=¨|=Á|=Ý|=Č|=Ĩ|=Ń|>-|>±|>¸|>Ä|>à|>ð|>ó|>Ī|@B|@F|@_|@³|@´|@Ó|@Ü|@ã|@û|@Ğ|@ğ|@Ĭ|@İ|@Ŀ|A5|AV|A_|Ax|A¹|AÅ|AĞ|AĶ|Aņ|Aō|B¼|BÂ|Bä|Bç|BĊ|Bį|Bİ|BĻ|BŅ|C1|C<|CG|Cy|C~|C¼|Cì|Cù|Cō|DT|DU|Dc|Dj|D¤|DÂ|DÑ|DĀ|Dİ|E,|E¬|E¼|E×|Eā|Eė|Eń|FZ|Ft|F»|F¿|FÈ|FØ|Fç|Fì|Fć|FĬ|Fı|FŅ|Gj|Gl|Gv|G¯|Gâ|Gï|GĖ|Gę|GĦ|Gĭ|H8|HB|HS|Hu|H¥|HÃ|HÌ|Hø|HĆ|HĒ|HĬ|Hĭ|I=|It|I©|Iæ|IĿ|Iō|J1|J3|J5|JQ|JÉ|JÔ|J×|Jă|JIJ|K-|KP|KÄ|Kî|Kā|KĐ|Kġ|KĨ|KĴ|L!|LÐ|Lá|LĚ|LĠ|M5|M¿|MÅ|Må|MĈ|MŊ|N,|N2|N5|NB|Nh|NÂ|NØ|NÜ|NĖ|Nĝ|NŃ|O;|Of|O¯|O¸|Oå|OĈ|Oď|Oē|OIJ|P7|PQ|Pp|P£|Pđ|PĴ|Pŀ|Q7|QR|Q¥|QÝ|Qî|Qī|Qĸ|Qŀ|Qő|R0|RA|RI|RN|R¥|R¼|Rö|Rû|RĬ|RĮ|RŎ|S;|SC|ST|Sd|Sy|S§|TX|Td|Tw|Tª|T¿|Tõ|U0|U:|UÊ|Uĉ|Uę|UĢ|UĦ|Uį|UĶ|Uň|V:|Vq|Vs|V¦|VÂ|Vó|Vþ|Wh|WÅ|WÉ|Wê|Wô|Wģ|Wň|X:|XI|XS|X`|Xâ|Xċ|Xė|XĠ|Xģ|Y"|YX|Yb|Yn|Yo|Y£|Y§|YÌ|YÎ|YÚ|Yá|Yă|YĜ|Yĥ|YĿ|Yʼn|Z6|Z:|Z;|Z¶|Zå|Zæ|Zċ|Zĺ|ZŊ|_,|_-|_c|_g|_à|_ĉ|_Ħ|_ł|`I|`z|`ð|`ă|`IJ|`ij|a4|a9|aF|a½|aä|añ|aď|aĝ|aĸ|b&|b7|b¸|bÝ|bë|bĺ|bņ|bŊ|c&|cP|cr|cÄ|cÑ|cÖ|cČ|cę|cĩ|cIJ|cķ|cĿ|d"|dI|d¥|d¦|dä|dģ|eK|e²|eý|eą|eČ|eĔ|eIJ|eĶ|eń|fM|fm|f¥|fÇ|fÒ|fæ|fì|fć|fě|fĝ|g!|gN|gx|gz|gÍ|gĚ|gĞ|h"|h¬|h¶|hä|hì|hï|hĆ|hņ|hŋ|hŏ|i'|i9|i¢|i¤|iÓ|iÖ|iā|iĕ|iĝ|iį|iĶ|jH|jT|j£|jµ|j·|jø|jĸ|jŐ|k0|k2|kA|k~|k¨|k½|kÙ|l&|lX|lc|ln|l£|l¥|lµ|lÃ|lå|lé|lĩ|lŌ|lŒ|m-|mW|mÐ|mĘ|mĮ|mĸ|n!|n2|nJ|nU|n¬|n½|nĆ|nĒ|nĔ|nĭ|nŇ|o5|o<|oD|oM|oÖ|oĂ|ps|pz|pº|pê|pĢ|pĥ|pIJ|qK|qa|q§|qÛ|qç|qý|qă|qĒ|qĴ|qĶ|qń|rA|re|rj|r§|r«|r¿|rÃ|rß|rò|rĔ|rĖ|rĢ|rķ|sD|sc|sÍ|sĀ|tT|tW|ta|t£|t¯|t±|tÊ|tÑ|tĚ|tļ|uV|ua|ub|uf|u¦|u´|u»|u¾|uË|uØ|uĞ|uĪ|uĹ|v:|vi|vw|v§|v½|vÄ|vÈ|vÌ|vù|vĮ|vļ|vʼn|vŎ|w!|w0|wZ|wg|wÞ|wæ|wò|wù|wĥ|wħ|wŎ|xD|x©|x®|xá|xû|xģ|xľ|xł|yC|ya|yr|y²|yÉ|yò|yĆ|yĠ|yĵ|yŒ|zM|zi|z¯|zø|zú|zć|zđ|~5|~Y|~¨|~º|~Û|~å|~ê|~ô|~ü|~ą|~ĥ|~Ī|~İ|~Ľ|~ō|¡J|¡±|¡¼|¡Ê|¡Ë|¡Ñ|¡ã|¡Ă|¡Ġ|¡Ĩ|¡ī|¡Œ|¢@|¢G|¢±|¢º|¢ç|¢Đ|¢İ|¢Ŀ|£F|£e|£Þ|£ä|£Ĵ|¤P|¤p|¤¯|¤µ|¤þ|¤ď|¤Ģ|¤ī|¥Z|¥¤|¥È|¥Ñ|¥û|¥Ď|¦T|¦Y|¦Z|¦a|¦b|¦e|¦q|¦r|¦¡|¦³|¦ĩ|¦IJ|¦ĺ|§b|§n|§w|§¿|§Ç|§Đ|¨3|¨Ã|¨Ë|¨Î|¨ë|¨÷|¨Č|¨ġ|¨Ī|¨Ĺ|¨ł|¨Œ|©I|©Z|©Ý|©ë|©ü|©ġ|©ŋ|ªP|ªo|ªr|ª¨|ª¯|ª²|ª¾|ªÇ|ªÔ|ªÙ|ªĉ|«K|«p|«£|«¨|«©|«¬|«®|«Õ|«Þ|«ß|«ö|«Đ|¬!|¬j|¬ª|¬¼|¬À|¬Ã|¬Ì|¬ú|¬ő|®#|®´|®É|®č|®đ|®ī|®ʼn|¯9|¯g|¯n|¯¹|¯È|¯Ē|¯ę|¯ġ|°N|°d|°k|°m|°s|°²|°È|°Î|°ê|°ó|°ʼn|±%|±R|±Y|±r|±æ|±Ŀ|±ń|²D|²H|²U|²×|²ã|²ä|²ç|²ą|²ħ|³`|³Ë|³ã|³ë|³ò|³ô|³ø|³Ċ|³Ĥ|³Ŀ|´~|´§|´Ê|´è|´Ķ|´Ŏ|µ:|µC|µ¢|µØ|µó|µĠ|µģ|µĤ|¶!|¶0|¶7|¶Y|¶¤|¶À|¶Ö|¶Ħ|¶ő|·p|·Á|·Ç|·ë|·î|·Ļ|·Ŋ|¸X|¸Z|¸¦|¸÷|¸ú|¸Đ|¸ĝ|¹,|¹>|¹M|¹Z|¹a|¹¢|¹Ì|¹×|¹Ø|¹þ|¹ĉ|¹Ĩ|º>|ºj|ºá|ºç|ºý|ºć|»2|»c|»°|»Ä|»ñ|»Ġ|»Ŋ|¼3|¼F|¼c|¼d|¼x|¼y|¼Ä|¼É|¼û|¼Č|¼ē|¼Ĩ|¼Ĭ|¼Ĵ|¼Ĺ|½k|½Ø|½ø|½ħ|¾2|¾:|¾L|¾¿|¾Á|¾ñ|¾ô|¾÷|¾đ|¾ĥ|¾Ń|¿D|¿«|¿ö|¿ø|¿Ĕ|¿ę|¿Ļ|¿ō|À3|ÀW|À°|ÀÆ|Àđ|ÀĘ|ÀĞ|Àģ|Àİ|Á§|Áé|Áõ|ÁĜ|Áĝ|ÁĪ|Áʼn|Â&|ÂB|ÂM|¿|Âø|Âħ|Âĺ|ÂĻ|ÂŁ|Âʼn|Ã`|Ãt|â|é|ÃĆ|ÃĖ|Ãĥ|Ãĩ|Ä_|Ä¥|ÄÌ|ÄÞ|Äð|ÄĆ|Äİ|ÄŁ|Å@|ÅY|Å«|ÅĄ|Åı|Åĸ|Æ;|ÆK|Æv|Ƶ|ƹ|ƽ|ÆÇ|ÆÛ|Æõ|Æü|ÆĆ|ÆĤ|Çd|Ǻ|ÇĔ|Çě|Çģ|ÇĶ|ÇĽ|Èd|Èz|È~|È´|Ƚ|ÈÂ|Èæ|Èõ|ÈŅ|ÉH|ÉO|ÉÌ|Éï|ÉČ|Éę|ÉĬ|Éĭ|ÉĴ|ÉŎ|Ê%|Ê6|ÊI|Êk|Êy|ʳ|ÊÁ|Êñ|Êą|ÊŃ|Ë!|ËH|Ëh|˺|Ë»|ËÆ|Ëğ|ËŌ|Ì3|Ì7|ÌG|Ìp|Ì«|Ìè|Ìï|ÌĮ|ÌŎ|ÍZ|Íd|Í©|ÍÖ|Íá|Íê|Íø|Íā|ÍŊ|Î-|Î_|ÎÊ|Îæ|Îó|Îù|ÎĀ|ÎĐ|Îġ|Îĭ|ÎŇ|Ï"|Ï5|Ï7|ÏA|ÏH|Ïl|ϱ|Ϲ|ÏÈ|ÏØ|ÏÚ|ÏÛ|ÏĻ|Ïʼn|ÐR|з|ÐÀ|ÐÓ|ÐĒ|Ðě|ÐĶ|Ðľ|Ñ©|ѵ|ÑÅ|ÑÈ|Ñʼn|ÒV|ÒÇ|Òĉ|Òħ|ÒŃ|Ó2|ÓD|ÓÎ|Óç|Ó÷|Óù|ÓĈ|Óķ|ÔE|ÔJ|Ôf|Ôy|ÔÆ|ÔÞ|Ôâ|ÔĂ|ÔĨ|Õ3|ÕG|Õh|Õ¹|ÕÁ|ÕÐ|Õÿ|Õğ|Õī|Ö7|ÖB|Öª|Ö¼|Öÿ|Öħ|Öij|×6|×>|×f|×¢|×µ|×·|×Â|×Ê|×Ñ|×ã|ØG|د|ØÄ|ØÊ|Øé|Øë|ØĊ|ØŇ|ØŐ|Øő|Ù:|Ùh|Ùx|Ù²|Ùč|Ùē|Ùę|Ùě|ÙĨ|ÙŇ|ÚE|Úq|Ú®|ÚÄ|ÚÒ|ÚÜ|Úä|Úí|Úı|Úķ|Û'|ÛW|Ûo|Ût|ÛÓ|Ûô|Ûõ|Ûû|Ûʼn|Ûŋ|Ü!|ÜJ|ÜÆ|ÜŐ|ÝR|Ýg|Ýq|Ýu|ÝÜ|Ýß|Ýð|Ýø|Ýč|ÝĶ|Ýʼn|Þº|ÞÝ|ÞĂ|Þą|Þć|ÞĠ|ÞĨ|ßu|ßÀ|ßė|à4|àS|à`|àk|à§|àé|àø|àĊ|àę|àģ|àĬ|á3|á£|á¶|áÄ|áÏ|áÑ|áâ|áü|áČ|áĽ|áņ|áŌ|â#|âY|â£|âº|âÓ|âġ|âĭ|âı|âŐ|âŒ|ã,|ã1|ã7|ã8|ãé|ãĭ|ä3|ä6|äN|ä¢|ä©|ä¬|äÏ|äĖ|äį|äŏ|åN|å¡|å¾|åØ|åë|åû|åč|åě|æ7|æT|æt|æ¸|æá|æï|æā|æij|ç2|çA|çJ|çl|ç¥|ç¬|çĝ|çĸ|èl|èq|èÓ|èÙ|èČ|èĖ|èĩ|èņ|èʼn|èő|éV|éZ|é®|é´|éí|éó|éû|éą|éě|éĭ|éŃ|ê5|êv|ê«|ê¶|êº|êÃ|êÔ|êİ|ëB|ëb|ë¤|ë¨|ëÎ|ëę|ëĞ|ì#|ì,|ì=|ì>|ìQ|ìS|ìV|ìº|ìā|ìġ|íJ|íV|í~|í¶|íò|íø|íă|íė|íĭ|î<|î=|îD|îR|îµ|îÚ|îÛ|îå|îê|îþ|îĒ|îĜ|îğ|ï%|ï,|ïa|ïu|ïÀ|ïÁ|ïá|ïĄ|ïą|ïċ|ïġ|ïĿ|ïŁ|ïŌ|ð6|ðE|ðp|ð¬|ðÞ|ðä|ðĚ|ðğ|ðļ|ñ1|ñ2|ñX|ñi|ñá|ñú|ñû|ñü|ñį|ñŊ|òB|ò«|ò¿|òÝ|òê|òď|ó5|óÄ|óÇ|óÈ|óÓ|óÕ|óĨ|óļ|ô4|ôh|ôÖ|ôî|ôþ|ôğ|ôŅ|õo|õ¢|õ¶|õÆ|õÓ|õä|õČ|õĕ|õģ|ö7|ö@|ön|ö¢|öÉ|öÒ|öÛ|öâ|öĝ|÷-|÷J|÷p|÷Ò|÷Ģ|÷ĭ|÷ı|÷ʼn|ø,|øo|ø¥|øÆ|øç|øè|øù|øĤ|øĥ|øħ|øň|ù7|ù9|ùs|ùu|ù¹|ùÍ|ùĆ|ùę|ùě|ùĹ|úG|úÅ|úÕ|úÖ|úÜ|úã|úç|úĂ|úĦ|û%|û;|ûR|ûh|ûu|ûz|û´|ûÐ|ûë|ûń|ûŊ|ü_|ü²|üê|üē|üğ|üł|üŅ|ý8|ý¨|ý©|ýÍ|ýÜ|ýĄ|ýċ|ýĩ|ýı|ýIJ|ýĸ|ýł|ýň|ýŎ|þ;|þD|þJ|þT|þr|þ·|þè|þĆ|ÿO|ÿÒ|ÿæ|ÿð|ÿć|ÿğ|ÿŇ|ĀA|ĀR|Ā_|Āv|Āá|ĀĘ|Āģ|Āİ|ā6|āM|ā¸|āä|āĮ|ĂX|ĂÁ|ĂÕ|ĂĚ|Ăķ|ĂĹ|ă"|ă°|ă¸|ăÉ|ăĆ|ăĚ|ăğ|ăĸ|ăĻ|ăŃ|ĄG|ĄJ|ĄK|Ą`|Ąc|Ąd|Ąg|Ąl|Ą³|ĄÄ|ĄÊ|ĄÌ|Ąú|ĄĽ|ą;|ąL|ąc|ąd|ąo|ąr|ą®|ą±|ąÄ|ąÅ|ąÇ|ąÍ|ą×|ąĈ|ąĎ|ąĐ|ąĩ|ąŌ|Ć´|Ƹ|Ć¼|ĆÑ|ĆØ|Ćí|ĆĊ|Ćņ|ĆŌ|ć4|ćx|ćy|ć¦|ć«|ćù|ćŃ|Ĉ&|Ĉ8|ĈE|ĈK|Ĉn|Ĉ¨|Ĉà|Ĉé|Ĉû|Ĉđ|Ĉĥ|ĈĪ|Ĉī|Ĉņ|ĉ@|ĉa|ĉÇ|ĉ×|ĉĩ|ĉň|Ċ#|Ċb|Ċt|Ċ»|ĊÁ|ĊÚ|Ċä|Ċÿ|Ċĝ|Ċĩ|Ċį|ċ'|ċD|ċ¶|ċÖ|ċê|ċþ|ċğ|ċņ|ČM|Čs|Č£|ČĨ|Čį|č±|čÖ|čè|čć|čğ|čń|čʼn|Ď`|Ď¡|Ď·|Ď¾|Ď¿|Ďą|Ďij|Ďŋ|ď"|ď5|ď8|ď=|ďD|ďs|ďØ|ďÚ|ďí|ďġ|ďĩ|ďļ|ĐF|ĐS|Đg|Đk|Đn|Đv|Đ~|ĐÖ|ĐÚ|ĐÜ|Đâ|ĐĞ|đA|đf|đ´|đ¸|đ¿|đÈ|đÖ|đà|đĽ|đŀ|đŌ|Ē%|ĒH|ĒÍ|ĒĹ|ĒĻ|ĒŁ|ĒŃ|ĒŇ|ē;|ēG|ēa|ēe|ēq|ē¶|ē»|ē÷|ēň|Ĕ"|Ĕ4|ĔÃ|Ĕý|Ĕą|ĔĆ|ĔĚ|ĔĞ|ĔĨ|ĕ"|ĕm|ĕw|ĕ¨|ĕ®|ĕÌ|ĕÑ|ĕĤ|Ė#|ĖR|Ėe|Ėu|Ė~|Ė¯|Ėĩ|ĖĬ|ėH|ė¹|ėö|ėú|ėÿ|ėĨ|Ęs|ĘÝ|Ęą|ĘČ|Ęĝ|Ęī|Ęĺ|Ęʼn|ęA|ęk|ęp|ę»|ęè|ęą|ęĐ|ęĨ|Ě'|Ě9|Ěe|Ěm|Ěo|Ě£|Ěª|Ě¾|Ěå|Ěë|Ěă|ĚĎ|ĚĜ|ĚĞ|ěP|ěx|ěê|ěî|ěö|ěĂ|ěĤ|ěĭ|ěļ|Ĝ%|ĜÜ|ĜĽ|ĝJ|ĝh|ĝ¹|ĝÃ|ĝÈ|ĝĖ|ĝĞ|ĝŇ|ĝŒ|Ğ&|Ğe|Ğs|ĞÖ|ğX|ğ²|ğ´|ğ¼|ğÙ|ğò|ğĂ|ğđ|ğĕ|ğĨ|ğĬ|ĠB|Ġc|Ġµ|ĠÈ|Ġè|Ġì|Ġđ|Ġě|ġ5|ġ<|ġH|ġm|ġº|ġÒ|ġü|ġă|ġĶ|ġŀ|Ģ;|Ģ¤|Ģ«|ĢÍ|ĢØ|Ģù|Ģă|ĢĐ|Ģđ|ģ-|ģL|ģ«|ģë|ģþ|ģċ|ģČ|ģĨ|ģĻ|Ĥf|Ĥª|Ĥñ|ĥM|ĥN|ĥU|ĥf|ĥz|ĥ»|ĥõ|ĥň|Ħ`|Ħj|Ħu|Ħ°|Ħ´|ĦÁ|ĦÈ|ĦÕ|Ħæ|ĦĤ|ħ4|ħp|ħ¡|ħ¦|ħ¶|ħß|ħç|ħĴ|ħĵ|ĨC|Ĩ°|ĨÂ|ĨÌ|Ĩç|Ĩõ|ĨĔ|Ĩŏ|ĩ8|ĩl|ĩt|ĩw|ĩċ|ĩđ|ĩĥ|ĩī|ĩŅ|Ī4|Ī9|ĪP|Īz|Ī±|ĪÅ|ĪÈ|ĪÝ|Īä|Īđ|ĪĦ|ĪĬ|ĪĽ|īb|īl|ī¥|ī¦|īÌ|īì|īČ|īĎ|īĐ|Ĭ#|Ĭ4|ĬF|Ĭ¤|Ĭê|Ĭí|Ĭû|Ĭĝ|ĬŌ|ĭ1|ĭK|ĭL|ĭz|ĭ¡|ĭ¯|ĭÌ|ĭâ|ĭĘ|ĭě|ĭĺ|ĮM|ĮR|Įd|Įx|Į¤|ĮÃ|ĮË|ĮÚ|Įå|ĮĤ|ĮĦ|Įī|į&|įD|įI|į¥|į«|įÉ|įÕ|įÛ|įĉ|įđ|įĒ|İQ|İi|ݬ|ݾ|İÕ|İ×|İĄ|İĬ|İľ|ı4|ıa|ıd|ıe|ıf|ı¡|ıĐ|ıĖ|ıIJ|IJ:|IJT|IJU|IJm|IJÛ|IJķ|IJŎ|ij0|ijb|ij¢|ij«|ijé|ijí|ijĎ|ijĘ|ijķ|Ĵ#|ĴF|ĴG|Ĵµ|Ĵ¹|ĴÈ|ĴÏ|Ĵý|Ĵþ|ĴĖ|ĵ8|ĵE|ĵK|ĵ¦|ĵ±|ĵÙ|ĵó|ĵõ|ĵĹ|Ķ6|ĶE|Ķl|Ķm|Ķ£|Ķ²|ĶÅ|Ķ÷|ĶĀ|Ķă|ĶĆ|ķv|ķ«|ķå|ķĢ|ķŌ|ĸ9|ĸH|ĸ¼|ĸè|ĸý|ĸĕ|ĸį|ŧ|Ĺ·|ĹÇ|ĹÈ|Ĺġ|Ĺĩ|ĺ#|ĺ6|ĺp|ĺr|ĺu|ĺæ|ĺí|ĺĖ|Ļ@|ĻI|Ļn|Ļ£|Ļ¶|ĻÂ|Ļú|ĻĮ|ĻŎ|ļ=|ļK|ļO|ļ_|ļ´|ļÀ|ļÄ|ļó|Ľ>|ĽC|ĽD|ĽG|ĽZ|Ľk|Ľr|Ľ¼|ĽÌ|Ľâ|ĽĮ|ĽŒ|ľf|ľÙ|ľÞ|ľĂ|ľī|ľł|ľņ|ĿÊ|Ŀď|Ŀđ|ĿĚ|Ŀĵ|ĿĻ|Ŀŏ|ŀC|ŀM|ŀ®|ŀà|ŀð|ŀõ|ŀČ|ŁE|ŁÁ|ŁÄ|Łõ|Łķ|ŁĿ|ł4|łG|łu|ł¬|łÏ|łò|łČ|łč|łĐ|łŌ|Ń6|Ń¿|ŃÅ|ŃË|ŃÚ|Ńü|Ńě|Ńņ|ń4|ń<|ńE|ńx|ń»|ńÄ|ńď|ńĺ|Ņ,|ŅP|Ņe|Ņn|Ņo|Ņ©|Ņ¯|Ņ½|ŅÛ|ŅĂ|ņî|ņð|ņô|ņĈ|ņī|ņĬ|ņı|Ň8|Ň:|ŇD|ŇT|Ň_|Ňd|Ňu|Ňª|Ňā|Ňć|ŇĈ|Ňň|ňK|ňL|ň¬|ňÇ|ňÏ|ňþ|ňĐ|ňĠ|ňŐ|ʼnQ|ʼn_|ʼnf|ʼnÉ|ʼnË|ʼnĨ|ʼnŃ|Ŋ0|ŊM|ŊW|ŊÔ|ŊĠ|ŋC|ŋH|ŋK|ŋÍ|ŋÒ|ŋØ|ŋÞ|ŋı|ŋĹ|Ō,|Ōl|Ō³|Ōò|Ōā|ŌĖ|ŌĚ|ŌĬ|ŌĮ|Ōĸ|ŌŒ|ōJ|ō¿|ōÀ|ōÝ|ōʼn|Ŏ8|Ŏ;|ŎQ|ŎV|Ŏ§|ŎÄ|ŎÏ|ŎĎ|ŎŇ|ŏ=|ŏD|ŏV|ŏ¹|ŏÈ|ŏÒ|ŏč|ŏĐ|ŏī|ŏĿ|ŏʼn|Ő2|Ő<|ŐC|ŐX|Őg|Ől|Őp|Ő®|Őİ|ő8|ő¹|őÀ|őó|őć|őĊ|őĖ|őĦ|őķ|őĸ|őŀ|ŒB|Œv|ŒÀ|ŒÒ|Œā|Œĉ|Œė|ŒĜ|ŒĦ|Œķ|Œľ).){255}Ň$

Regex101 पर परीक्षण किया गया

प्रत्येक मिलान स्ट्रिंग से हैमिल्टन पथ Mहै Ň
मुझे पता है कि यह पर्याप्त सुरक्षित नहीं है। मुझे नहीं पता कि हार्ड हैमिल्टन पथ की समस्याओं को कैसे उत्पन्न किया जाए। इसके बहुत सारे समाधान हैं। और जैसा कि मार्टिन ब्यूटनर ने कहा, मैथेमेटिका ने तुरन्त किया । लेकिन यह सीओटीओ के अलावा सिर्फ एक और एनपी-पूर्ण दृष्टिकोण है। इस विचार को सुधारने और नए उत्तर पोस्ट करने के लिए स्वतंत्र महसूस करें।
मूल रूप से मैंने जो समाधान निकाला है वह है: https://regex101.com/r/tM1vX8/2

मैंने जो हल निकाला है:

MĈàękÙēGâġ<øÆv:ĴÏĻĮ¤ĢùĹ·îĜĽDÂŁEā6ĶĆŌĸ¼yò¿Ĕýı¡Ë!į&qKPpzđȽħ¶YÌïÁéVþèlåN2O¸úÜŐİľfćx®čńďļ=¨3d"÷ĭ¯9i'ĞsĀAÅĄ³`ðĚmĘĝŒBç¬ő¹>-ìS§nUĉňĠěĤª¾ôŅ,ĊtÊIĿĵ±RĬíăÉČĨŏĐÖij0°²ã1gÍáÑʼnŃÚÒÇģLÐĒ%ĪĦu¦añû´~ą;ĥ»créüêºjµó5ĩċğĕwŎÄ¥ĎŋØëÎæTXėH8ņībŊÔÞÝßÀWhäĖeIJÛõÓķ«ö7QŀCōJ×¢@_ł4£FZĺ#oĂÕÿŇ

3
मिलान: देखें regex101.com/r/wK9hI1/1 क्या मेल नहीं खाता: good_job_user23013!
२१

14
मुझे लगता है कि हमें अभी 2 शिविरों में विभाजित किया जा रहा है: उन जलते सीपीयू और भाग्यशाली होने की उम्मीद है, और जो कुछ दिनों में पी = एनपी को साबित करने की कोशिश कर रहे हैं।

1
@ WumpusQ.Wumbley और गणितज्ञ का उपयोग करने वाले हम में से। ;)
मार्टिन एंडर

2
चूंकि हरिओं ने विस्तृत रूप से यह नहीं बताया कि वह इसे कैसे क्रैक करते हैं, मैं जल्दी से यह बताऊंगा कि मैंने यह कैसे किया: पैटर्न वास्तव में 256 कोने (वर्णों के रूप में प्रतिनिधित्व) और 2270 किनारों (अनुमति दी गई वर्णों के जोड़े के रूप में प्रतिनिधित्व) के साथ एक निर्देशित ग्राफ को एन्कोड करता है लगातार होना) और प्रत्येक मैच उस ग्राफ के माध्यम से एक हैमिल्टन मार्ग Mहै Ň। गणितज्ञ का एक कार्य है FindHamiltonianCycle। हम इसे एक चक्र में बदल सकते हैं जो Ň -> Mएक नया किनारा जोड़कर Ňऔर इसके Mमाध्यम से जुड़ता है। शुक्र है, गणितज्ञ को ऐसा चक्र तुरन्त मिल जाता है। :)
मार्टिन एंडर

1
ठीक है, मैं 3rd हूं, लेकिन मुझे ऐसा लगा कि मैं अपने घर के रास्ते का पता लगा सकता हूं। इसने मुझे यह दिया: regex101.com/r/nT2xM6/1

10

जेएस-संगत RegEx - 3,571 बाइट्स [फटा]

मैं ... होगा ... है ... कम से कम ... एक ... अनियंत्रित .... सबमिशन। ओ \ _ __ / ओ

[^,;]|^(.{,255}|.{257,})$|^(?!.*,;,,;;)|^(?!.*,;;,,;)|^(?!.*..,;;;,..,.)|^(?!.*.,.;.;.,.,,)|^(?!.*....,,....;;.;.;)|^(?!.*;.{8};,;;;..)|^(?!.*.{8};;.{6};,.,;)|^(?!.*..;....,.;;.{5};;...)|^(?!.*;,.;.{7},...;.{6};...)|^(?!.*...,.,..,,...,.{7};....)|^(?!.*.,;.;.{11};.{9};..,.)|^(?!.*.,.{6},....;.{11};,...,)|^(?!.*..;.{5};....,.{6};,.{12};.)|^(?!.*,,.,,.{8};.{11};.{10})|^(?!.*...,.{9};..,....;.{6},...;.{8})|^(?!.*.{6},.{8},.{6},.{8},..;.,....)|^(?!.*.{7};..;.{5},....;.{10};...;.{9})|^(?!.*..;.{7},.{5};;.{12},.{13},.)|^(?!.*.{5},..;...;.{5};..;.{6},.{22})|^(?!.*.{10},.{8},.{6},;.{14};.;.{6})|^(?!.*..,.;...,.{19};.;..;.{22})|^(?!.*.{6};..;.{14},,.{11};....,.{13})|^(?!.*.{8},.{12};.{19},.{6},;.{6},....)|^(?!.*.,.{11},...,.{7},.{16},.{11},.{6})|^(?!.*.{15};.{7};..;..,.{24},.{7},...)|^(?!.*...,,.{25};...;...;.{19},.{7})|^(?!.*.{26},....,....,.{15},.{6},.{6};....)|^(?!.*.{6};.,.{28};.{6},.{21},.;..)|^(?!.*.{21};..;..,.{22},.{21};,..)|^(?!.*.{5};.{22};,.{17};.{18},,.{8})|^(?!.*.{9};.{25};,.{20},.{6},.{14};.)|^(?!.*.,.{9},.{8};.{8};.{10};.,.{38})|^(?!.*.{18};.{8},.,.;.{5};.{6},.{41})|^(?!.*.{15},.{16};.{7};.{17};.{8};..,.{15})|^(?!.*.{18};.,.{25};..,..;.{13};.{24})|^(?!.*.{10};.{16},.{33};...;.{17},....,..)|^(?!.*.{13},.{46},.{9},.{11},,.,.{10})|^(?!.*.{14},.{33},.{18};....,.;.{16},....)|^(?!.*.{16};....;,.{8},.{30},.{31},.{6})|^(?!.*.{9},;.{15};.{22};.{30},.{16};...)|;.,,;;.;|,;,;,.,.|.;;,.;;;|;.;,,,.;|,...;.;.,,.;.|,.,.;.{5},,;|...;;....;;;;|;..,,,.;..;..|..;;,,..;.{7};.|;..,.,,...;...,...|...;;,.,.;.;.{6}|.;...;,....;.;...,|.;.{8};,.{6},.;.;|.{5},...,...;...;.;..;|...;....;..,..,.;..;...|...;.{5};,.{5},...,.;|;.,.{12},..;;.{7};|...;.{5},..;;.{9},..;.|.;,,..;.{13};....;..|.,;.{15},,...,.,..|.{8};.,....,...,..,.{9};|...;.;.{11},..,...;....;...|.,.,.{9};;....;..,.{10}|.{5};.,;....,.{15};..,|....;.{10};.;....,.{10},;...|....;.{8};;.{6},...;.{5};.{6}|..,;;.{16};....,;.{10}|.{18};.{9};,.,.,..;.|.{11},.{10};.;.;.{10};....,|....;.{11},.{10},..;.,.;.{8}|..,....,.;.{5},.{9},.{7};.{9}|.{7};.;.{5},.{13};.;.{7};...|.{5},.{15};;.{5},.{15},..;|.{12};...;..,.,..;.{5},.{17}|.{12},..;...;.{22},.,..,|.{10},.{11},.,.;.{11};;.{8}|.{11},.{9},.{5},...,.{14};.;....|;.{22};....,.;.{10};.{10};|.{13};...;.{13},.{6};.,.{10};.|.{11};....;.{17},.{9},.{5};,.|,.{14},.{12};.{6};...;.{14};...|..;.;.{19},.{16},.{5};.{6},...|.{27};..,;.{8};;.{8};.{7}|,.{6};.,.{20},.{13},.;.{11}|.{12};.{9},.{8};,.,.{17},.{10}|;.{22};..;.{5},..;....,.{22}|.{6},.{19};.{22};;,.{5};.{5}|;.{5},.{10};..;.;;.{39}|.{11};.{7};.;.{23};.{19};.;|,.{13};.{12},.,.{27};.{6},...|...;.;.{9};.{18};.;.{27},...|...;,.{12},..;.{28},.{15};..|....;.{8};..;...;.{17},.{19},.{14}|.{8};.{29};.{17};.{5};.{5};;...|...,..;.{14},.{8};.{12};.{18},.{10}|..;.;.{7};.{17},.{11},.{24},.{5}|;.{17},.;.{29};.{9};....;.{12}|.{5},..,.{6},.{16};;.{15},.{28}|...,.{12};..;.{10};.{31};.{14};|.{24},.{6},.{22},.,..,.{10};.{7}|.{10},.{12},.{5};.{12},.{7};.{23};.{8}|.{19};.,.{6},.{22},,.{7};.{22}|.{27};,.{14},..,.{7};.{15},.{12}|....;.{18},.{22},,..,.{27};....|...,.{11},.;.;.{9},.{46},.{11}|.{19},....,.{23},.{5},.{7};.{14},.{10}|.{19};,.{11};..,.{11};.{23};.{16}|.{11};.{34},.{14},.{9},.;.{13};|.{11};....,.{41},.{9};;.{8};.{14}|.{5};.;.,.{5};...;.,.{71}|.{6};.{13};....;....;.{20};.{24},.{16}|.{26};,.{19};....;.{11},.;.{26}|.{9},.{9},.{21},.{14};.{10};.{16};.{13}|.{10},.{5},.{9};.{13},...,.{24},.{28}|.{12},.{7};.{8};.{6};;.{36};.{23}|....;.{10},.{21};.{10};.{20},.{10},.{17}|.{19},.{7},.{17},.{9};.{13},.{22};.{10}|....,.{41};.{5},..,.{21};.{6};.{18}|.{25};....;.{28},.{12},.{19};.{8};.|.{10};....,.,.{22};.{11};.{44},.{5}

वस्तुतः किसी भी स्ट्रिंग पर तुरंत हल करता है। किसी भी जेएस कंसोल पर परीक्षण करने योग्य।

+100 इस जानवर को दरार करने वाले किसी भी व्यक्ति को दोहराएं।


1
चुनौती स्वीकार की गई ...
अनहाइड्रॉन

10
मैच : ThatWasActuallyFunगैर मैच : ,,;,;,,;,;;;,;,;,;;,,,,;,,,;,;;,,,,,,;;,,,,;;,;,,,;,;;;;,;;,;;,;,,;,,;,;;;,;,;,;;,,,;,;;;;,;,;;;,;,,;,,,;,,,,;,;;;;;;,,,,,;,;,;;;;;,;;;,;;,,,;;;,,;,;;,,,;,,,,,,;,;,,;;,,;;,,,;,;;,,,;,,;;,;,;,;;;;,,;,;,,;;;;;,,;,,;;,,;,,;;,,,,;,,;,,;;,;;;,,,,,;,,,,,,,,;,,,,
nnonneo

5
कृप्या! नहीं करते हैं! BE! इसलिए! शीघ्र!
२०

6
यार, तुम पागल हो, इस RegExp में 122 विकल्प हैं, जिनमें से 40 नकारात्मक
लुकहेड हैं

2
@nneonneo: घटिया कुशल SAT सॉल्वर। > ___ <लेकिन समस्या को बदलने और वहां उपलब्ध साधनों का उपयोग करने के लिए सहारा लेता है। मैं आपके उत्तर में से एक ASAP को 100 प्रतिनिधि दूंगा, जो लगभग 19 घंटे का है।
COTO

10

PCRE - 96bytes UTF8, कोई सीमांकक नहीं, कोई झंडे नहीं

[पराजित] क्योंकि nneonneo एक बुद्धिमान व्यक्ति है

(?<Warning>[You] \Will (*FAIL)!|\So just (*SKIP)this one!|\And (*ACCEPT)defeat!|[^\d\D]{16,255})

यहाँ देखने के लिए कुछ भी नहीं है, आगे चलो...


1
मैच So just *SKIPthis one!:; कोई मैच नहीं:This string is not accepted. This string is not accepted. This string is not accepted. This string is not accepted. This string is not accepted. This string is not accepted. This string is not accepted. This string is still not accepted. Snow leopards FTW.
COTO

यह पीसीआर सिंटैक्स नहीं है; यह सादा पर्ल वाक्यविन्यास है। (Backtracking modifiers PCRE, AFAIK पर काम नहीं करते हैं)
nneonneo

6
मैच : Do just this one!गैर मैच : WellThatWasTooEasy। (मेरी मशीन पर पर्ल 5.12 और पर्ल 5.18 दोनों के साथ परीक्षण किया गया)
nneonneo

@nneonneo सही! पुनश्च: * PCRE में VERBS कम से कम 5 वर्षों से मौजूद है, वास्तव में पर्याप्त दस्तावेज नहीं है।
सीएस

@ मैच गलत है, नॉनमैच ठीक है।
सीएस

8

जेएस-संगत RegEx - 733 बाइट्स [फटा]

चलो इसे दूसरी बार मैट्रिक्स के साथ उलट कर देखें: एक नियमित रूप से आकर्षक अभिव्यक्ति लेकिन एक अपेक्षाकृत छोटी कुंजी (सबसे महत्वपूर्ण बात, 256-बाइट सीमा के भीतर)।

[^a-e]|^(?:.{0,33}|.{35,}|.{11}.(?!babcde).{22}|.{17}.(?!daacde).{16}|.{23}.(?!ecacbd).{10}|.{29}.(?!ab).{4}|.{31}.(?!cd)..|(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).(?!\4\8\1\2\3\10|\6\3\11\2\9\1|\6\2\9\3\4\11|\8\10\6\5\3\1|\1\8\4\5\3\7).{22}|(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{6}.(?!\15\14\16\19\21\12|\17\12\22\13\16\15|\19\14\12\20\18\21|\16\22\19\14\20\12|\21\19\13\18\15\22).{16}|(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{12}.(?!\31\32\24\28\26\23|\33\25\30\29\27\32|\28\27\23\24\29\30|\31\33\23\29\26\32|\26\28\25\24\23\33).{10}|(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{18}.(?!\34\39|\37\38|\34\37|\36\42|\43\41|\35\38|\40\35|\44\42).{4}|(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{20}.(?!\51\45|\53\54|\47\46|\45\54|\50\51|\53\45|\52\51|\52\48|\48\55)..)$

वस्तुतः किसी भी स्ट्रिंग पर तुरंत हल करता है। RegExr पर परीक्षण किया गया।

विस्तारित (सुविधा के लिए):

[^a-e] |
^(?:
    .{0,33}|
    .{35,}|
    .{11}.(?!babcde).{22}|
    .{17}.(?!daacde).{16}|
    .{23}.(?!ecacbd).{10}|
    .{29}.(?!ab).{4}|
    .{31}.(?!cd)..|
    (.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).(?!\4\8\1\2\3\10|\6\3\11\2\9\1|\6\2\9\3\4\11|\8\10\6\5\3\1|\1\8\4\5\3\7).{22}|
    (.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{6}.(?!\15\14\16\19\21\12|\17\12\22\13\16\15|\19\14\12\20\18\21|\16\22\19\14\20\12|\21\19\13\18\15\22).{16}|
    (.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{12}.(?!\31\32\24\28\26\23|\33\25\30\29\27\32|\28\27\23\24\29\30|\31\33\23\29\26\32|\26\28\25\24\23\33).{10}|
    (.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{18}.(?!\34\39|\37\38|\34\37|\36\42|\43\41|\35\38|\40\35|\44\42).{4}|
    (.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.).{20}.(?!\51\45|\53\54|\47\46|\45\54|\50\51|\53\45|\52\51|\52\48|\48\55)..
)$

आप सभी को शुभकामनाएं! ;)


5
मैच: aaaabaaacaaadaaaनॉन-मैच:cacdbbcabdeababcdedaacdeecacbdabcd
jimmy23013

@ user23013: मुझे एक दरार की उम्मीद थी, लेकिन इतनी जल्दी नहीं। क्या आपने इसे कागज पर किया है?
22

1
हाँ। पहले दो लंबे अभिव्यक्तियों के बाद केवल दो संभावनाएं बची हैं। और तीन के बाद पता नहीं केवल एक चरित्र है, इसलिए मैं समाधान प्राप्त करने के लिए बस कुछ समय की कोशिश कर सकता हूं।
jimmy23013

8

.NET का स्वाद, 60 बाइट्स [फटा]

^((\d)(?!(|(\d\d)*\d|(\d{3})*\d\d|(\d{5})*\d{4}|\d{6})\2))+$

रेगेक्स स्टॉर्म के साथ परीक्षण किया गया ।


3
मैच: 1234567890012345। गैर मैच: 1111222233334444
jimmy23013

8
٠߀०০੦૦୦௦౦೦൦๐໐༠၀႐០᠐᥆᧐᭐᮰᱀᱐꘠꣐꤀꩐0इसलिए इन सभी को .NET में माना जाता है ...
jimmy23013

2
यह पागल है, उनमें से आधे भी मेरे ब्राउज़र में सही नहीं दिखा रहे हैं
Sp3000

7

पायथन स्वाद: 211 बाइट्स [फटा]

नोट: यह उत्तर अधिकतम मुख्य लंबाई के बारे में नियम बदलने से पहले पोस्ट किया गया था

मैंने सोचा कि मुझे इससे रोल मिलेगा

(((((((((((((((\)\\\(58\)5\(58\(\\5\))\15\)9)\14\\919\)\)4992\)5065\14\(5)\13\\\14\\71\13\(\13\)4\\\13\\)\12\12\\28\13)\11)\10\\7217)\9\\)\8\\04)\7\)\(\8\()\6\(183)\5)\4\)65554922\\7624\)7)\3\)8\(0)\2\4\\8\\8)\1

( RegExr पर परीक्षण किया गया )


पात्रों का सरल बैकरेस्ट विस्फोट \()0123456789


मैं आपको बता सकता हूं कि स्वीकृत स्ट्रिंग लगभग है। लंबाई में 7 मिलियन अक्षर। के रूप में वास्तव में यह किसी भी तरह का प्रतिनिधित्व करने के लिए, शायद एक 7 एमबी पाठ फ़ाइल कहीं?
COTO

हाँ, यह बहुत ही एकमात्र रास्ता है। मैंने सोचा था कि मैं कुछ ऐसी चीज़ों के साथ शुरू करूँगा जो कि कठिन नहीं हैं, लेकिन चाल उत्पादन पीढ़ी के साथ थी। यदि मिनट की सीमा लागू नहीं होती है, तो यह बहुत लंबा होता: P
Sp3000

मेरा मानना ​​है कि RegExr.com पर आपके regex से मेल खाता एकमात्र स्ट्रिंग है, मज़बूती से मेरे Chrome ब्राउज़र को क्रैश करता है। सफारी में यह काम करता है लेकिन RegExr एक 'टाइमआउट' की रिपोर्ट करता है। क्या आपने इसका ऑनलाइन परीक्षण सफलतापूर्वक किया है?
एमिल

@ ईमिल मैंने फ़ायरफ़ॉक्स में इसका सफल परीक्षण किया। और मैं अभी भी इसे बचाने के लिए इंतजार कर रहा हूं।
jimmy23013

5
मेरी गिनती से कुंजी 5281064 बाइट्स है। यहाँ अपलोड की गई फ़ाइल (5 mb) Mediafire.com/view/4jt41pzfp7855ax/match.txt
stokastic

7

जेएस-संगत RegEx - 12,371 बाइट्स [फटा]

मार्टिन द्वारा कुछ प्रोत्साहन के बाद, और यह देखते हुए कि अन्य पुलिस खुशी से 600+ केबी रेग्जेस जमा कर रहे हैं, मैंने इस और एक बार (और यहां पहले से तय किए गए संस्करण ) के साथ डुबकी लेने का फैसला किया ।

वस्तुतः किसी भी स्ट्रिंग पर तुरंत हल करता है। किसी भी जेएस कंसोल पर परीक्षण करने योग्य। दुर्भाग्य से आकार कई ऑनलाइन रेगेक्स परीक्षकों द्वारा इसे अप्राप्य बनाता है।


अहा मैं कोशिश करूँगा कि मैं रेगेक्स के आकार के साथ पागल न हो जाऊं - यह चुनौती कठिन है: / incriminates @ user23013
Sp3000

2
मैच : this was not NP-hardगैर-मैच :nerdnydeprdoypoypwwwdprelwsprwssddayaeeeysyaaaypowroplsaoprdaolasnoylaeaeadeosladnnosyoywyesorlrydwddadoeyponneeyaaapesenaalnneydaewndplredlerwaawlnrssapapaopnrdwnslowdoanlrernpwyyarpprwnrssdlaopsnnrnnnardpaessldalroleswnnooarlpllasapsesaorardwreylayrr
nneonneo

मैंने इसे पूरी तरह से लागू कर दिया (पायथन में ~ 0.06 सेकंड लिया) और चार स्वीकार्य समाधान प्राप्त किए, लेकिन आपके रेगेक्स में बग के कारण, आपका रेगेक्स कई और समाधानों को अस्वीकार करता है। (मूल रूप से, आप यह नहीं जाँचते हैं कि दिए गए "सब्स्ट्रिंग" में प्रत्येक वर्ण का उपयोग किया जाता है, और आप यह नहीं जाँचते हैं कि "सबस्ट्रिंग" में केवल 84 वर्ण होते हैं)
nneonneo

1
(अंतिम नोट: regexpal.com इस रेगेक्स को बस ठीक से संभालता है; मुझे लगता है कि यह शायद ब्राउज़र के रेगेक्स इंजन का उपयोग करता है)।
nnonneo

1
12k बाइट के साथ बाहरी स्रोत से लिंक करने की कोई आवश्यकता नहीं है। एसई उत्तर में 30k अक्षर तक हो सकते हैं।
मार्टिन एंडर

7

.NET स्वाद, 458 बाइट्स [फटा]

^(?=[01]{10},[01]{10}$)(0|1((?<=^.)(?<l>){512}|(?<=^..)(?<l>){256}|(?<=^...)(?<l>){128}|(?<=^.{4})(?<l>){64}|(?<=^.{5})(?<l>){32}|(?<=^.{6})(?<l>){16}|(?<=^.{7})(?<l>){8}|(?<=^.{8})(?<l>){4}|(?<=^.{9})(?<l>){2}|(?<=^.{10})(?<l>){1})(?(l)(?<-l>(?=.*,(?:0|1(?<m>){512})(?:0|1(?<m>){256})(?:0|1(?<m>){128})(?:0|1(?<m>){64})(?:0|1(?<m>){32})(?:0|1(?<m>){16})(?:0|1(?<m>){8})(?:0|1(?<m>){4})(?:0|1(?<m>){2})(?:0|1(?<m>){1})$))|){1024})*,(?<-m>){669043}(?(m)(?!)|)

यह एक आसान है। लेकिन मैं बाद में एक कठिन पोस्ट करूंगा।

मुझे लगता है कि मैं क्रिप्टोग्राफिक रूप से सुरक्षित उत्तर के पास सुंदर हूं।

RegexStorm पर परीक्षण किया गया

यह मूल रूप से पूर्णांक कारक के बारे में है। मिलान स्ट्रिंग दो पूर्णांकों का द्विआधारी प्रतिनिधित्व होना चाहिए Aऔर B। प्रत्येक 1 से A, यह 512, 256, ..., 1 बार समूह से मेल खाएगा l, जिसे पाने के लिए जोड़ा जा सकता है A। और हर बार l, यह Bलुकहेड और Bसमय समूह का उपयोग करके मेल खाएगा mजो Aसमय के समान है l। तो mकुल A*Bबार मिलान किया जाता है । अंत में यह समूह को m669043 बार हटा देता है और जांच करता है कि कहीं और तो नहीं है m। तो A*Bबिल्कुल 669043 होना चाहिए।

सरलता के लिए: 669043 = 809 * 827और समाधान इन दो संख्याओं का द्विआधारी रूप है।

यह विधि इसे सुरक्षित बनाने के लिए बहुत बड़ी संख्याओं के साथ काम नहीं करती है, क्योंकि रेगेक्स इंजन को संख्या को कई बार बढ़ाना पड़ता है। लेकिन मैंने आधार 289 बड़े पूर्णांकों के साथ काम करने के लिए एक नया उत्तर पोस्ट किया है । इसमें 1536 बिट लंबा उत्पाद है।

इसके अलावा अपने जवाब में .NET रेगेक्स के बैलेंसिंग ग्रुप फीचर को पेश करने के लिए मार्टिन ब्यूटनर को धन्यवाद ।


यह विचार, वाह ...
Sp3000

4
मैच : 1100101001,1100111011गैर-मैच :ThatsWhatIWantedToDo,Nice
nnonneo

1
मुझे लगता है कि एकमात्र समस्या यह है कि मैच तेजी से लंबा होता है, और यह कि लक्ष्य पूर्णांक को एक दोहराने गिनती के रूप में व्यक्त किया जाना है (इसलिए यह सबसे अधिक संभावना 32/64/128 बिट्स तक सीमित है, जो सभी कारक के लिए तुच्छ हैं)। मेरे पास करातसुबा गुणा का उपयोग करके इन सीमाओं को पार करने के बारे में कुछ विचार हैं, लेकिन फिर मुझे लॉग (n) ^ 2 आकार के
रेग्जेस

1
@ Sp3000 pastebin.com/SW0YbQar यह काम करता है। मुझे यकीन नहीं है कि क्यों। शायद इसके डेवलपर को लगता है कि खाली तारों का मिलान बार-बार करने का कोई मतलब नहीं है।
jimmy23013

1
@ Sp3000: बिल्कुल आश्चर्य नहीं; आप मूल रूप से रेगेक्स इंजन को 800000+ पर गिनने के लिए कह रहे हैं। यह वास्तव में धीमा होने जा रहा है (विशेषकर जब "गिनती" एक नियमित अभिव्यक्ति मूल्यांकनकर्ता वर्चुअल मशीन के माध्यम से की जाती है)।
nnonneo

6

जेएस-संगत RegEx - 2,447 बाइट्स [फटा]

मेरा अंतिम प्रयास।

मैं उम्मीद कर रहा हूँ कि यह एक कम से कम कुछ घंटे पहले फटा जा रहा है। उसके बाद, मैंने हार मान ली। : पी

[^a-f]|^(?:.{0,51}|.{53,}|.{11}.(?!d).{40}|.{12}.(?!a).{39}|.{13}.(?!a).{38}|.{14}.(?!f).{37}|.{15}.(?!d).{36}|.{16}.(?!a).{35}|.{17}.(?!d).{34}|.{18}.(?!c).{33}|.{19}.(?!f).{32}|.{20}.(?!d).{31}|.{21}.(?!d).{30}|.{22}.(?!d).{29}|.{23}.(?!f).{28}|.{24}.(?!d).{27}|.{25}.(?!b).{26}|.{26}.(?!f).{25}|.{27}.(?!f).{24}|.{28}.(?!e).{23}|.{29}.(?!c).{22}|.{30}.(?!c).{21}|.{31}.(?!b).{20}|.{32}.(?!d).{19}|.{33}.(?!e).{18}|.{34}.(?!c).{17}|.{35}.(?!a).{16}|.{36}.(?!a).{15}|.{37}.(?!e).{14}|.{38}.(?!b).{13}|.{39}.(?!f).{12}|.{40}.(?!d).{11}|.{41}.(?!f).{10}|.{42}.(?!c).{9}|.{43}.(?!f).{8}|.{44}.(?!e).{7}|.{45}.(?!c).{6}|.{46}.(?!b).{5}|.{47}.(?!b).{4}|.{48}.(?!f).{3}|.{49}.(?!a).{2}|.{50}.(?!d).{1}|....(.)(.)(.).....(?!\1|\2|\3).{40}|.(.).(.)..(.).....{1}.(?!\4|\5|\6).{39}|...(.)(.).....(.).{2}.(?!\7|\8|\9).{38}|......(.)(.).(.)..{3}.(?!\10|\11|\12).{37}|....(.)(.)(.).....{4}.(?!\13|\14|\15).{36}|..(.)(.)(.).......{5}.(?!\16|\17|\18).{35}|(.).(.)......(.)..{6}.(?!\19|\20|\21).{34}|..(.).....(.).(.).{7}.(?!\22|\23|\24).{33}|(.)..(.)(.).......{8}.(?!\25|\26|\27).{32}|...(.).....(.)(.).{9}.(?!\28|\29|\30).{31}|.(.)(.).....(.)...{10}.(?!\31|\32|\33).{30}|.(.)...(.)..(.)...{11}.(?!\34|\35|\36).{29}|(.)(.).....(.)....{12}.(?!\37|\38|\39).{28}|...(.).(.).(.)....{13}.(?!\40|\41|\42).{27}|..(.)(.)..(.).....{14}.(?!\43|\44|\45).{26}|(.).(.)....(.)....{15}.(?!\46|\47|\48).{25}|(.)..(.)...(.)....{16}.(?!\49|\50|\51).{24}|(.)(.)(.).........{17}.(?!\52|\53|\54).{23}|.(.)..(.)(.)......{18}.(?!\55|\56|\57).{22}|(.)...(.)..(.)....{19}.(?!\58|\59|\60).{21}|.......(.)(.)(.)..{20}.(?!\61|\62|\63).{20}|.(.).....(.).(.)..{21}.(?!\64|\65|\66).{19}|..(.)..(.)...(.)..{22}.(?!\67|\68|\69).{18}|..(.).(.).....(.).{23}.(?!\70|\71|\72).{17}|...(.).(.)..(.)...{24}.(?!\73|\74|\75).{16}|.(.)(.)(.)........{25}.(?!\76|\77|\78).{15}|(.).(.).....(.)...{26}.(?!\79|\80|\81).{14}|.....(.)..(.).(.).{27}.(?!\82|\83|\84).{13}|(.).(.).(.).......{28}.(?!\85|\86|\87).{12}|..(.)...(.)..(.)..{29}.(?!\88|\89|\90).{11}|(.)....(.)..(.)...{30}.(?!\91|\92|\93).{10}|....(.).(.).(.)...{31}.(?!\94|\95|\96).{9}|...(.)..(.)(.)....{32}.(?!\97|\98|\99).{8}|..(.)..(.)..(.)...{33}.(?!\100|\101|\102).{7}|..(.).(.)(.)......{34}.(?!\103|\104|\105).{6}|..(.)(.)..(.).....{35}.(?!\106|\107|\108).{5}|.(.).....(.)(.)...{36}.(?!\109|\110|\111).{4}|..(.)....(.)(.)...{37}.(?!\112|\113|\114).{3}|...(.)..(.)...(.).{38}.(?!\115|\116|\117).{2}|....(.)(.)....(.).{39}.(?!\118|\119|\120).{1})$

पिछले सभी सबमिशन की तरह, यह तुरंत हल हो जाता है। पिछले सबमिशन के विपरीत, यह RegExr के लिए बहुत लंबा है।

विस्तारित:

[^a-f]|
^(?:
    .{0,51}|
    .{53,}|
    .{11}.(?!d).{40}|
    .{12}.(?!a).{39}|
    .{13}.(?!a).{38}|
    .{14}.(?!f).{37}|
    .{15}.(?!d).{36}|
    .{16}.(?!a).{35}|
    .{17}.(?!d).{34}|
    .{18}.(?!c).{33}|
    .{19}.(?!f).{32}|
    .{20}.(?!d).{31}|
    .{21}.(?!d).{30}|
    .{22}.(?!d).{29}|
    .{23}.(?!f).{28}|
    .{24}.(?!d).{27}|
    .{25}.(?!b).{26}|
    .{26}.(?!f).{25}|
    .{27}.(?!f).{24}|
    .{28}.(?!e).{23}|
    .{29}.(?!c).{22}|
    .{30}.(?!c).{21}|
    .{31}.(?!b).{20}|
    .{32}.(?!d).{19}|
    .{33}.(?!e).{18}|
    .{34}.(?!c).{17}|
    .{35}.(?!a).{16}|
    .{36}.(?!a).{15}|
    .{37}.(?!e).{14}|
    .{38}.(?!b).{13}|
    .{39}.(?!f).{12}|
    .{40}.(?!d).{11}|
    .{41}.(?!f).{10}|
    .{42}.(?!c).{9}|
    .{43}.(?!f).{8}|
    .{44}.(?!e).{7}|
    .{45}.(?!c).{6}|
    .{46}.(?!b).{5}|
    .{47}.(?!b).{4}|
    .{48}.(?!f).{3}|
    .{49}.(?!a).{2}|
    .{50}.(?!d).{1}|
    ....(.)(.)(.).....(?!\1|\2|\3).{40}|
    .(.).(.)..(.).....{1}.(?!\4|\5|\6).{39}|
    ...(.)(.).....(.).{2}.(?!\7|\8|\9).{38}|
    ......(.)(.).(.)..{3}.(?!\10|\11|\12).{37}|
    ....(.)(.)(.).....{4}.(?!\13|\14|\15).{36}|
    ..(.)(.)(.).......{5}.(?!\16|\17|\18).{35}|
    (.).(.)......(.)..{6}.(?!\19|\20|\21).{34}|
    ..(.).....(.).(.).{7}.(?!\22|\23|\24).{33}|
    (.)..(.)(.).......{8}.(?!\25|\26|\27).{32}|
    ...(.).....(.)(.).{9}.(?!\28|\29|\30).{31}|
    .(.)(.).....(.)...{10}.(?!\31|\32|\33).{30}|
    .(.)...(.)..(.)...{11}.(?!\34|\35|\36).{29}|
    (.)(.).....(.)....{12}.(?!\37|\38|\39).{28}|
    ...(.).(.).(.)....{13}.(?!\40|\41|\42).{27}|
    ..(.)(.)..(.).....{14}.(?!\43|\44|\45).{26}|
    (.).(.)....(.)....{15}.(?!\46|\47|\48).{25}|
    (.)..(.)...(.)....{16}.(?!\49|\50|\51).{24}|
    (.)(.)(.).........{17}.(?!\52|\53|\54).{23}|
    .(.)..(.)(.)......{18}.(?!\55|\56|\57).{22}|
    (.)...(.)..(.)....{19}.(?!\58|\59|\60).{21}|
    .......(.)(.)(.)..{20}.(?!\61|\62|\63).{20}|
    .(.).....(.).(.)..{21}.(?!\64|\65|\66).{19}|
    ..(.)..(.)...(.)..{22}.(?!\67|\68|\69).{18}|
    ..(.).(.).....(.).{23}.(?!\70|\71|\72).{17}|
    ...(.).(.)..(.)...{24}.(?!\73|\74|\75).{16}|
    .(.)(.)(.)........{25}.(?!\76|\77|\78).{15}|
    (.).(.).....(.)...{26}.(?!\79|\80|\81).{14}|
    .....(.)..(.).(.).{27}.(?!\82|\83|\84).{13}|
    (.).(.).(.).......{28}.(?!\85|\86|\87).{12}|
    ..(.)...(.)..(.)..{29}.(?!\88|\89|\90).{11}|
    (.)....(.)..(.)...{30}.(?!\91|\92|\93).{10}|
    ....(.).(.).(.)...{31}.(?!\94|\95|\96).{9}|
    ...(.)..(.)(.)....{32}.(?!\97|\98|\99).{8}|
    ..(.)..(.)..(.)...{33}.(?!\100|\101|\102).{7}|
    ..(.).(.)(.)......{34}.(?!\103|\104|\105).{6}|
    ..(.)(.)..(.).....{35}.(?!\106|\107|\108).{5}|
    .(.).....(.)(.)...{36}.(?!\109|\110|\111).{4}|
    ..(.)....(.)(.)...{37}.(?!\112|\113|\114).{3}|
    ...(.)..(.)...(.).{38}.(?!\115|\116|\117).{2}|
    ....(.)(.)....(.).{39}.(?!\118|\119|\120).{1}
)$

2
मैच: aaaabaaacaaadaaa। गैर मैच: fdeacdbfbdcadaafdadcfdddfdbffeccbdecaaebfdfcfecbbfad
jimmy23013

(.)मिलान चरित्र के साथ बदलें , और उस चरित्र द्वारा सॉर्ट करें, और यह स्पष्ट हो जाएगा।
jimmy23013

1
ध्यान दें कि यह एनपी-पूर्ण है, लेकिन क्रिप्टोग्राफिक रूप से सुरक्षित नहीं है। और इसे मुश्किल बनाने के लिए बहुत सारे प्रतिबंध और बहुत कम चर हैं।
jimmy23013

1
@ user23013: अच्छा खेला, सर। ;) और वास्तव में मेरा मानना ​​है कि यह SAT के लिए अतिरेक है, जो मेरा इरादा था। जैसा कि आप कहते हैं, बस इसे मुश्किल करने के लिए पर्याप्त बिट्स नहीं हैं।
सीओटीओ

5

पायथन स्वाद (721 बाइट्स) [फटा]

यह "पार्सिंग प्रॉब्लम v2" का समय है:

^(((?(8)S)(((?(9)I|\\)(?(3)\]|Z)((?(7)l|R)(((((((?(4)p)((?(7)x)(?(1)B|Z)(?(11)\()(?(9)X)(?(8)P|T)(?(6)a|E)((?(5)E)(((?(8)3|\[)((?(3)\(|1)((?(1)M|L)(?(3)v|b)(?(2)t|l)(?(1)q)(?(1)K|H)(?(2)\)|R)(?(3)O|K)(?(5)l|l)(((?(2)\[|3)((?(2)N)((?(2)\\)((?(1)E|\])(?(1)\[)([(?(1)Q)])(?(24)\[)(?(24)q))(?(24)g))(?(22)s|U)(?(22)H)(?(23)c|U))(?(24)Q)(?(24)Q)(?(24)H)(?(23)K|\[))(?(22)e|y))(?(24)\\)(?(21)P|4)(?(19)T)(?(24)\))))(?(24)M)(?(17)\()(?(24)2))(?(19)7)(?(21)t|X)(?(22)v))(?(24)\[)(?(19)A|L)(?(16)E|1))(?(19)1|c)(?(14)K|\\)(?(19)4|5)(?(24)\\)(?(20)r)))(?(24)B)(?(24)w)(?(24)5))(?(24)\())(?(24)\\))(?(24)T))(?(9)\[))(?(15)z|w))(?(24)K)\7F(?(24)m)(?(24)R))(?(24)\[))(?(24)h))(?(14)x|t)(?(3)R|M)(?(24)\])(?(24)w))(?(21)z|6)(?(16)r)()$

Regex101 पर परीक्षण किया गया


यह रेगेक्स प्रभावी रूप से "एक जंगल में एक पेड़ छिपाना" है। रेगेक्स के थोक में (?(id)yes-pattern|no-pattern)भाव होते हैं , जो उपयुक्त पैटर्न से मेल खाते हैं जो निर्दिष्ट आईडी के साथ एक समूह मौजूद है या नहीं। इन अभिव्यक्तियों में से अधिकांश कुंजी में योगदान नहीं करते हैं, लेकिन कुछ करते हैं। हालांकि, रेगेक्स में नहीं-तो-सूक्ष्म रूप से छिपा हुआ था, [(?(1):Q)]जो वास्तव में एक चरित्र सेट है , और \7जिसके लिए आपको किसी तरह समूहों का ट्रैक रखने की आवश्यकता होती है। ये दोनों हाइलाइटिंग के साथ किसी भी एडिटर पर दिखाई देंगे, लेकिन इसका मतलब किसी ऐसे व्यक्ति के साथ यात्रा करना था जो सतर्क नहीं था।


यार, यह कुछ काम करने वाला है।
स्टोकैस्टिक

4
\ZRZTE[1LblHRKl3]?sHcKePT(7tvAE1K4r[zZTE[1LblHRKl3]?sHcKePT(7tvAE1K4rFxRzrमैचों। aमेल नहीं खाता
g.rocket

इसके अतिरिक्त, सभी संभावित मैचों का सेट (मेरी पिछली टिप्पणी) दोनों के ?किसी भी चरित्र के साथ बदल दिया गया है(?(1)Q)
g.rocket

(Regex101 पर, यह आपको बताता है कि मैच के असफल होने पर यह क्या मैच करने की कोशिश कर रहा था। इससे मिलान सामग्री कुछ हद तक आसान हो गई थी (कम से कम मेरे समाधान में टाइपिंग स्पॉट के लिए)।
g.rocket

मैं करीब था, मुझे ?
बजे

5

अजगर स्वाद (4842 बाइट्स) [फटा]

विचारों और सलाह के लिए @ कोटो को धन्यवाद

मुझे @ COTO का 3-SAT का विचार इतना पसंद आया कि मुझे लगा कि मैं अपना खुद का रेगेक्स बनाने की कोशिश करूंगा। हालांकि, मैं 3-सैट के सिद्धांतों से परिचित नहीं हूं, इसलिए मैं सिर्फ आरएनजी देवताओं से प्रार्थना करने जा रहा हूं और मुझे उम्मीद है कि मेरे पास पर्याप्त प्रतिबंध हैं।

मैंने 5000 पात्रों के तहत रेगेक्स को उचित बनाए रखने की कोशिश की - जाहिर है कि अब रेगेक्स दरार करना असंभव होगा, लेकिन उन्हें दरार करने में बहुत मज़ा नहीं आएगा।

[^01]|^(.{0,81}|.{83,}|....0.{10}1.{22}0.{43}|....0.{14}0.{35}0.{26}|....0.{16}0.{5}1.{54}|....0.{17}1.{34}0.{24}|....1.{11}0.{41}1.{23}|....1.{12}1.{27}1.{36}|....1.{22}1.{38}1.{15}|....1.{30}0.{35}1.{10}|....1.{46}0.1.{28}|....1.{6}1.{65}0....|...0....1.1.{71}|...0.{18}0.{23}0.{35}|...1.{11}1.{33}1.{32}|..0...0.{53}1.{21}|..0.{30}1.{17}0.{30}|..1.{41}0.{10}0.{26}|.0.{13}0.{39}1.{26}|.0.{18}0.{49}0.{11}|.0.{27}1.{36}0.{15}|.0.{31}11.{47}|.00.{37}1.{41}|.1.{32}0.{31}1.{15}|.1.{38}0.{25}0.{15}|.1.{7}0.{38}0.{33}|.{10}0.{14}0.{15}0.{40}|.{10}0.{15}1.{15}1.{39}|.{10}0.{27}1.{11}1.{31}|.{10}0.{39}0.{7}0.{23}|.{10}0.{42}10.{27}|.{10}0.{9}0.{38}0.{22}|.{10}1.{45}1.{16}0.{8}|.{10}1.{47}0.{15}0.{7}|.{10}1.{59}0.{5}1.{5}|.{11}0.{11}0.{54}0...|.{11}0.{29}1.{35}0....|.{11}1.{32}0.{25}1.{11}|.{11}1.{48}1.{6}1.{14}|.{11}11.{50}1.{18}|.{12}0.{27}1.{18}0.{22}|.{12}0.{45}1.{7}1.{15}|.{12}1.{15}0.{42}1.{10}|.{13}0.{40}1...0.{23}|.{13}1.{20}1.{5}1.{41}|.{13}1.{22}0.{31}0.{13}|.{13}1.{24}1.{39}1...|.{13}1.{58}0.{8}0|.{14}0.{22}0....1.{39}|.{14}0.{23}0.{23}1.{19}|.{14}0.{53}10.{12}|.{14}1.{19}1.{11}0.{35}|.{14}1.{19}1.{21}1.{25}|.{14}1.{23}0.{14}0.{28}|.{14}1.{24}1.{12}1.{29}|.{14}1.{35}0.{22}0.{8}|.{14}1.{48}0.{15}1..|.{14}1.{58}0....1...|.{14}1.{65}11|.{14}1.{6}1.0.{58}|.{15}0...01.{61}|.{15}0.{12}0.{30}0.{22}|.{15}0.{15}0.{34}0.{15}|.{15}0.{30}1.{25}0.{9}|.{15}0.{31}0.{32}1.|.{15}0.{36}0.{25}1...|.{15}1.{14}1.{21}1.{29}|.{15}1.{16}1.{16}1.{32}|.{15}1.{20}0.{32}1.{12}|.{16}0.{35}1.{24}0....|.{16}0.{36}1.{15}1.{12}|.{16}1.{13}1.{22}0.{28}|.{16}1.{16}1.{14}0.{33}|.{16}1.{48}1.0.{14}|.{17}1.{29}1.{31}0..|.{17}1.{47}1.{8}0.{7}|.{17}1.{9}0.{20}0.{33}|.{18}0..0.{59}1|.{18}0.{33}1.{6}0.{22}|.{18}0.{36}1.{24}1.|.{18}0.{39}0.{17}1.{5}|.{18}1..0.{35}0.{24}|.{18}1.{16}0.{7}1.{38}|.{19}0.{17}0.{8}1.{35}|.{19}1.{42}00.{18}|.{20}0.{25}1.{31}1...|.{20}0.{43}1.{12}0....|.{20}0.{8}1.{40}0.{11}|.{20}00.{56}1...|.{20}1.{38}0.{7}1.{14}|.{21}0.{39}1.{16}0...|.{22}1....0.{44}1.{9}|.{22}1..1.{20}1.{35}|.{23}0.{39}1.{8}0.{9}|.{23}0.{8}1.{41}1.{7}|.{23}1.{18}1.{25}0.{13}|.{23}1.{20}0.{6}0.{30}|.{24}0.{17}1.{16}0.{22}|.{24}0.{21}1.{13}0.{21}|.{24}1...1.{49}0...|.{24}1.{5}0.{37}0.{13}|.{24}1.{8}1.{37}0.{10}|.{25}0.{36}0....0.{14}|.{25}1....0.{29}0.{21}|.{25}1....1.{10}1.{40}|.{25}1.{13}1.{13}0.{28}|.{25}1.{40}0.{7}0.{7}|.{26}0.{13}1.{21}0.{19}|.{26}0.{13}1.{25}1.{15}|.{27}0.{20}1.{11}0.{21}|.{27}0.{36}0.{6}0.{10}|.{27}1....1.0.{47}|.{27}1...0.{13}1.{36}|.{27}1.{10}0.{26}0.{16}|.{27}1.{30}1.{15}0.{7}|.{28}0.{14}1.{37}0|.{28}0.{21}1.0.{29}|.{28}0.{26}0.{16}0.{9}|.{28}1.{18}1.{23}1.{10}|.{29}0.{17}0.0.{32}|.{29}1.{24}0.{19}1.{7}|.{29}1.{46}1....0|.{30}1.{18}1.{9}0.{22}|.{30}1.{28}0....1.{17}|.{32}0.{25}1.{6}1.{16}|.{33}0.{22}1.{12}0.{12}|.{33}0.{6}0.{11}0.{29}|.{33}1.{5}1.{31}0.{10}|.{34}0.{13}0.{8}0.{24}|.{34}1...1.{35}0.{7}|.{34}1..1.{29}1.{14}|.{34}1.{38}01.{7}|.{34}1.{5}0.{40}1|.{34}1.{6}1.{38}1.|.{34}1.{7}0.{31}0.{7}|.{34}11...1.{42}|.{35}0.{19}0..0.{23}|.{35}1.{12}1.{24}0.{8}|.{36}0.{6}1.{17}1.{20}|.{36}0.{7}1.{17}1.{19}|.{36}0.{8}0.{13}1.{22}|.{36}1.{14}0.{9}1.{20}|.{37}0.{26}1.{16}0|.{37}1.{27}0.{10}0.{5}|.{38}1.{21}1.{7}1.{13}|.{39}0..0.{20}0.{18}|.{39}0.{15}0.{19}1.{6}|.{40}0....0.{28}1.{7}|.{40}0.{15}1.0.{23}|.{40}0.{5}1.{16}0.{18}|.{40}0.{8}1.{29}1..|.{40}00.0.{38}|.{41}0.0.{20}0.{17}|.{41}00.{32}0.{6}|.{41}1.{16}1.{21}1.|.{41}1.{8}1.{18}0.{12}|.{42}1.{31}1.{6}1|.{42}11.{27}0.{10}|.{43}0.{34}10..|.{44}1.0.{10}1.{24}|.{45}0.{9}0.{5}0.{20}|.{45}1.{12}0.{22}1|.{45}1.{17}1....0.{13}|.{45}1.{9}0...0.{22}|.{46}0.{11}1.{19}1...|.{46}1.{24}0.{5}0....|.{47}11.{8}1.{24}|.{48}0.{12}1....0.{15}|.{48}0.{15}0.{13}1...|.{48}1...0.{13}0.{15}|.{48}1.{11}0..0.{18}|.{48}11.{21}0.{10}|.{49}1.{7}1.{14}0.{9}|.{51}1.{12}1.{5}1.{11}|.{54}0.{13}0.{6}1.{6}|.{54}1.{11}1.1.{13}|.{56}0.{16}0..1.{5}|.{56}1.{11}0.{6}0.{6}|.{58}1....1.{6}0.{11}|.{5}0.{17}0.{42}0.{15}|.{5}0.{23}1.{26}1.{25}|.{5}0.{34}1.{22}0.{18}|.{5}0.{6}1.{13}1.{55}|.{5}1.{12}0.{31}1.{31}|.{5}1.{16}0.{39}1.{19}|.{5}1.{16}1.1.{57}|.{5}1.{24}1.{15}1.{35}|.{5}1.{24}1.{47}1...|.{66}0.0.{5}1.{7}|.{6}0....1.{24}0.{45}|.{6}0.{19}0.{7}1.{47}|.{6}0.{23}0.{14}0.{36}|.{6}0.{25}1.{41}0.{7}|.{6}0.{46}1.{22}0.{5}|.{6}0.{52}11.{21}|.{6}1.{35}10.{38}|.{7}0.{20}0.{16}0.{36}|.{7}0.{34}1.{20}1.{18}|.{7}0.{6}0.{36}0.{30}|.{7}0.{7}0.{15}0.{50}|.{7}0.{8}1.{42}1.{22}|.{7}1.{5}1.{56}1.{11}|.{7}1.{67}0..1...|.{8}0.{10}0.{38}0.{23}|.{8}0.{41}11.{30}|.{8}0.{9}1.{37}1.{25}|.{8}1.{50}1.{14}1.{7}|.{9}0..1.{55}0.{13}|.{9}0.{21}1.{42}0.{7}|.{9}0.{59}00.{11}|.{9}0.{9}0....1.{57}|.{9}00.{41}1.{29}|.{9}1....0.{20}0.{46}|.{9}1...0.{41}1.{26}|.{9}1.{30}0.{16}1.{24}|.{9}1.{30}0.{37}1...|.{9}1.{30}1.{14}1.{26}|.{9}1.{40}01.{30}|0.{17}1.{34}0.{28}|0.{23}1.{43}1.{13}|0.{30}1.{26}1.{23}|1.{13}00.{66}|1.{28}0.{42}1.{9}|1.{36}0.{35}1.{8}|1.{42}1.{32}1.{5}|1.{49}0.{16}0.{14}|1.{52}0.{7}0.{20}|)$

और यहाँ यह एक ऐसे रूप में है जिसे पढ़ना थोड़ा आसान है:

[^01]|
^(
  .{0,81}|
  .{83,}|
  ....0.{10}1.{22}0.{43}|
  ....0.{14}0.{35}0.{26}|
  ....0.{16}0.{5}1.{54}|
  ....0.{17}1.{34}0.{24}|
  ....1.{11}0.{41}1.{23}|
  ....1.{12}1.{27}1.{36}|
  ....1.{22}1.{38}1.{15}|
  ....1.{30}0.{35}1.{10}|
  ....1.{46}0.1.{28}|
  ....1.{6}1.{65}0....|
  ...0....1.1.{71}|
  ...0.{18}0.{23}0.{35}|
  ...1.{11}1.{33}1.{32}|
  ..0...0.{53}1.{21}|
  ..0.{30}1.{17}0.{30}|
  ..1.{41}0.{10}0.{26}|
  .0.{13}0.{39}1.{26}|
  .0.{18}0.{49}0.{11}|
  .0.{27}1.{36}0.{15}|
  .0.{31}11.{47}|
  .00.{37}1.{41}|
  .1.{32}0.{31}1.{15}|
  .1.{38}0.{25}0.{15}|
  .1.{7}0.{38}0.{33}|
  .{10}0.{14}0.{15}0.{40}|
  .{10}0.{15}1.{15}1.{39}|
  .{10}0.{27}1.{11}1.{31}|
  .{10}0.{39}0.{7}0.{23}|
  .{10}0.{42}10.{27}|
  .{10}0.{9}0.{38}0.{22}|
  .{10}1.{45}1.{16}0.{8}|
  .{10}1.{47}0.{15}0.{7}|
  .{10}1.{59}0.{5}1.{5}|
  .{11}0.{11}0.{54}0...|
  .{11}0.{29}1.{35}0....|
  .{11}1.{32}0.{25}1.{11}|
  .{11}1.{48}1.{6}1.{14}|
  .{11}11.{50}1.{18}|
  .{12}0.{27}1.{18}0.{22}|
  .{12}0.{45}1.{7}1.{15}|
  .{12}1.{15}0.{42}1.{10}|
  .{13}0.{40}1...0.{23}|
  .{13}1.{20}1.{5}1.{41}|
  .{13}1.{22}0.{31}0.{13}|
  .{13}1.{24}1.{39}1...|
  .{13}1.{58}0.{8}0|
  .{14}0.{22}0....1.{39}|
  .{14}0.{23}0.{23}1.{19}|
  .{14}0.{53}10.{12}|
  .{14}1.{19}1.{11}0.{35}|
  .{14}1.{19}1.{21}1.{25}|
  .{14}1.{23}0.{14}0.{28}|
  .{14}1.{24}1.{12}1.{29}|
  .{14}1.{35}0.{22}0.{8}|
  .{14}1.{48}0.{15}1..|
  .{14}1.{58}0....1...|
  .{14}1.{65}11|
  .{14}1.{6}1.0.{58}|
  .{15}0...01.{61}|
  .{15}0.{12}0.{30}0.{22}|
  .{15}0.{15}0.{34}0.{15}|
  .{15}0.{30}1.{25}0.{9}|
  .{15}0.{31}0.{32}1.|
  .{15}0.{36}0.{25}1...|
  .{15}1.{14}1.{21}1.{29}|
  .{15}1.{16}1.{16}1.{32}|
  .{15}1.{20}0.{32}1.{12}|
  .{16}0.{35}1.{24}0....|
  .{16}0.{36}1.{15}1.{12}|
  .{16}1.{13}1.{22}0.{28}|
  .{16}1.{16}1.{14}0.{33}|
  .{16}1.{48}1.0.{14}|
  .{17}1.{29}1.{31}0..|
  .{17}1.{47}1.{8}0.{7}|
  .{17}1.{9}0.{20}0.{33}|
  .{18}0..0.{59}1|
  .{18}0.{33}1.{6}0.{22}|
  .{18}0.{36}1.{24}1.|
  .{18}0.{39}0.{17}1.{5}|
  .{18}1..0.{35}0.{24}|
  .{18}1.{16}0.{7}1.{38}|
  .{19}0.{17}0.{8}1.{35}|
  .{19}1.{42}00.{18}|
  .{20}0.{25}1.{31}1...|
  .{20}0.{43}1.{12}0....|
  .{20}0.{8}1.{40}0.{11}|
  .{20}00.{56}1...|
  .{20}1.{38}0.{7}1.{14}|
  .{21}0.{39}1.{16}0...|
  .{22}1....0.{44}1.{9}|
  .{22}1..1.{20}1.{35}|
  .{23}0.{39}1.{8}0.{9}|
  .{23}0.{8}1.{41}1.{7}|
  .{23}1.{18}1.{25}0.{13}|
  .{23}1.{20}0.{6}0.{30}|
  .{24}0.{17}1.{16}0.{22}|
  .{24}0.{21}1.{13}0.{21}|
  .{24}1...1.{49}0...|
  .{24}1.{5}0.{37}0.{13}|
  .{24}1.{8}1.{37}0.{10}|
  .{25}0.{36}0....0.{14}|
  .{25}1....0.{29}0.{21}|
  .{25}1....1.{10}1.{40}|
  .{25}1.{13}1.{13}0.{28}|
  .{25}1.{40}0.{7}0.{7}|
  .{26}0.{13}1.{21}0.{19}|
  .{26}0.{13}1.{25}1.{15}|
  .{27}0.{20}1.{11}0.{21}|
  .{27}0.{36}0.{6}0.{10}|
  .{27}1....1.0.{47}|
  .{27}1...0.{13}1.{36}|
  .{27}1.{10}0.{26}0.{16}|
  .{27}1.{30}1.{15}0.{7}|
  .{28}0.{14}1.{37}0|
  .{28}0.{21}1.0.{29}|
  .{28}0.{26}0.{16}0.{9}|
  .{28}1.{18}1.{23}1.{10}|
  .{29}0.{17}0.0.{32}|
  .{29}1.{24}0.{19}1.{7}|
  .{29}1.{46}1....0|
  .{30}1.{18}1.{9}0.{22}|
  .{30}1.{28}0....1.{17}|
  .{32}0.{25}1.{6}1.{16}|
  .{33}0.{22}1.{12}0.{12}|
  .{33}0.{6}0.{11}0.{29}|
  .{33}1.{5}1.{31}0.{10}|
  .{34}0.{13}0.{8}0.{24}|
  .{34}1...1.{35}0.{7}|
  .{34}1..1.{29}1.{14}|
  .{34}1.{38}01.{7}|
  .{34}1.{5}0.{40}1|
  .{34}1.{6}1.{38}1.|
  .{34}1.{7}0.{31}0.{7}|
  .{34}11...1.{42}|
  .{35}0.{19}0..0.{23}|
  .{35}1.{12}1.{24}0.{8}|
  .{36}0.{6}1.{17}1.{20}|
  .{36}0.{7}1.{17}1.{19}|
  .{36}0.{8}0.{13}1.{22}|
  .{36}1.{14}0.{9}1.{20}|
  .{37}0.{26}1.{16}0|
  .{37}1.{27}0.{10}0.{5}|
  .{38}1.{21}1.{7}1.{13}|
  .{39}0..0.{20}0.{18}|
  .{39}0.{15}0.{19}1.{6}|
  .{40}0....0.{28}1.{7}|
  .{40}0.{15}1.0.{23}|
  .{40}0.{5}1.{16}0.{18}|
  .{40}0.{8}1.{29}1..|
  .{40}00.0.{38}|
  .{41}0.0.{20}0.{17}|
  .{41}00.{32}0.{6}|
  .{41}1.{16}1.{21}1.|
  .{41}1.{8}1.{18}0.{12}|
  .{42}1.{31}1.{6}1|
  .{42}11.{27}0.{10}|
  .{43}0.{34}10..|
  .{44}1.0.{10}1.{24}|
  .{45}0.{9}0.{5}0.{20}|
  .{45}1.{12}0.{22}1|
  .{45}1.{17}1....0.{13}|
  .{45}1.{9}0...0.{22}|
  .{46}0.{11}1.{19}1...|
  .{46}1.{24}0.{5}0....|
  .{47}11.{8}1.{24}|
  .{48}0.{12}1....0.{15}|
  .{48}0.{15}0.{13}1...|
  .{48}1...0.{13}0.{15}|
  .{48}1.{11}0..0.{18}|
  .{48}11.{21}0.{10}|
  .{49}1.{7}1.{14}0.{9}|
  .{51}1.{12}1.{5}1.{11}|
  .{54}0.{13}0.{6}1.{6}|
  .{54}1.{11}1.1.{13}|
  .{56}0.{16}0..1.{5}|
  .{56}1.{11}0.{6}0.{6}|
  .{58}1....1.{6}0.{11}|
  .{5}0.{17}0.{42}0.{15}|
  .{5}0.{23}1.{26}1.{25}|
  .{5}0.{34}1.{22}0.{18}|
  .{5}0.{6}1.{13}1.{55}|
  .{5}1.{12}0.{31}1.{31}|
  .{5}1.{16}0.{39}1.{19}|
  .{5}1.{16}1.1.{57}|
  .{5}1.{24}1.{15}1.{35}|
  .{5}1.{24}1.{47}1...|
  .{66}0.0.{5}1.{7}|
  .{6}0....1.{24}0.{45}|
  .{6}0.{19}0.{7}1.{47}|
  .{6}0.{23}0.{14}0.{36}|
  .{6}0.{25}1.{41}0.{7}|
  .{6}0.{46}1.{22}0.{5}|
  .{6}0.{52}11.{21}|
  .{6}1.{35}10.{38}|
  .{7}0.{20}0.{16}0.{36}|
  .{7}0.{34}1.{20}1.{18}|
  .{7}0.{6}0.{36}0.{30}|
  .{7}0.{7}0.{15}0.{50}|
  .{7}0.{8}1.{42}1.{22}|
  .{7}1.{5}1.{56}1.{11}|
  .{7}1.{67}0..1...|
  .{8}0.{10}0.{38}0.{23}|
  .{8}0.{41}11.{30}|
  .{8}0.{9}1.{37}1.{25}|
  .{8}1.{50}1.{14}1.{7}|
  .{9}0..1.{55}0.{13}|
  .{9}0.{21}1.{42}0.{7}|
  .{9}0.{59}00.{11}|
  .{9}0.{9}0....1.{57}|
  .{9}00.{41}1.{29}|
  .{9}1....0.{20}0.{46}|
  .{9}1...0.{41}1.{26}|
  .{9}1.{30}0.{16}1.{24}|
  .{9}1.{30}0.{37}1...|
  .{9}1.{30}1.{14}1.{26}|
  .{9}1.{40}01.{30}|
  0.{17}1.{34}0.{28}|
  0.{23}1.{43}1.{13}|
  0.{30}1.{26}1.{23}|
  1.{13}00.{66}|
  1.{28}0.{42}1.{9}|
  1.{36}0.{35}1.{8}|
  1.{42}1.{32}1.{5}|
  1.{49}0.{16}0.{14}|
  1.{52}0.{7}0.{20}|
)$

Regex101 पर परीक्षण किया गया


रेगेक्स S0s और 1s के 82-वर्ण स्ट्रिंग की तलाश में है। यह फॉर्म की बड़ी संख्या के चेक (डी मॉर्गन के लागू होने के बाद) S[index1] != digit1या S[index2] != digit2OR करता है S[index3] != digit3, जो 3-SAT क्लॉज बनाते हैं। रेगेक्स का आकार सुराग की संख्या में रैखिक है, और कुंजी में वर्णों की संख्या में लघुगणक ( .{n}अंकन के कारण ) है। दुर्भाग्य से, हालांकि, सुराग की संख्या को सुरक्षित करने के लिए कुंजी के आकार के साथ ऊपर जाना पड़ता है, और जब इस तरह से एक नायाब कुंजी बनाने के लिए निश्चित रूप से संभव होता है, तो यह काफी लंबा रेगेक्स होगा।


1
मैच: x। गैर-मैच:0011001101000000000111010001101101011000010011011010000000010001011111000100010000
nneonneo

मैच: aaaabaaacaaadaaa। गैर-मैच: 011100110010001010111101001010010011110010011010110101010001101100101111111111+ 0000। बस कुछ ही सेकंड धीमा ...
jimmy23013

वाह, जो तेज था - क्या आप लोगों ने इसे बल दिया है?
Sp3000

1
@ Sp3000 मैंने इसे लगभग मैन्युअल रूप से किया ... आश्चर्य की बात यह है कि सांख्यिकीय पद्धति ने काम किया।
jimmy23013

2
@ Sp3000: मैंने इसे भंगुर कर दिया होगा, लेकिन यह कोई मज़ेदार नहीं था। इसके बजाय मैंने आपके अनुक्रम को 3SAT में बदल दिया और इसे मिनीसैट के साथ क्रैक किया। 0.3 सेकंड (समय परिवर्तित करने में
लगने वाला

5

पर्ल स्वाद, 133 [फटा]

ठीक है, इस बल को कठिन होना चाहिए:

^([^,]{2,}),([^,]{2,}),([^,]{2,}),(?=.\2+,)(?=.\3+,)\1+,(?=.\1+,)(?=.\3+,)\2+,(?=.\1+,)(?=.\2+,)\3+,(?=.{16,20}$)(\1{3}|\2{3}|\3{3})$

और एक लंबा संस्करण, चुनौती का हिस्सा नहीं:

^([^,]{3,}),([^,]{3,}),([^,]{3,}),([^,]{3,}),([^,]{3,}),([^,]{3,}),(?=.\2+,)(?=.\3+,)(?=.\4+,)(?=.\5+,)(?=.\6+,)\1+,(?=.\1+,)(?=.\3+,)(?=.\4+,)(?=.\5+,)(?=.\6+,)\2+,(?=.\1+,)(?=.\2+,)(?=.\4+,)(?=.\5+,)(?=.\6+,)\3+,(?=.\1+,)(?=.\2+,)(?=.\3+,)(?=.\5+,)(?=.\6+,)\4+,(?=.\1+,)(?=.\2+,)(?=.\3+,)(?=.\4+,)(?=.\6+,)\5+,(?=.\1+$)(?=.\2+$)(?=.\3+$)(?=.\4+$)(?=.\5+$)\6+$

Regex101 ( pcre स्वाद) पर परीक्षण किया जा सकता है ।


इस पैटर्न के पीछे का विचार यह है कि हम लाहेहेड्स का उपयोग करके एक रेगेक्स में अनुरूपता समीकरणों की एक सरल प्रणाली को एन्कोड कर सकते हैं। उदाहरण के लिए, रेगेक्स ^(?=(..)*$)(...)*$किसी भी स्ट्रिंग से मेल खाता है जिसकी लंबाई 2 और 3 की एक सामान्य बहु है , अर्थात, 6 की एक बहु । इसे समीकरण 2x mod 0 mod 3 के रूप में देखा जा सकता है । हम कैप्चर समूहों का उपयोग करते हुए समीकरण को मानकीकृत कर सकते हैं: रेगेक्स स्ट्रिंग्स से ^(.*),(.*),(?=\1*$)\2*$मेल खाता है जहां अंतिम कॉमा के बाद वर्णों की संख्या पहले और दूसरे सबमेक की लंबाई का एक सामान्य गुणक है। यह पैरामीटर समीकरण एक्स b 0 मॉड बी के रूप में देखा जा सकता है , जहां और बी दो उपमेय की लंबाई हैं।

उपरोक्त रेगेक्स कम से कम दो की लंबाई के तीन "पैरामीटर" लेने से शुरू होता है, और उसके बाद के तीन "समीकरणों के सिस्टम" से होते हैं, जो (?=.\1+,)(?=.\2+,)\3+,कि {1 + 0 mod 0 mod c, + 1 mod 0 mod c, ax के अनुरूप हैं = द्वारा} , जहां , बी और सी संगत उपमहाद्वीपों की लंबाई हैं। समीकरणों की इस प्रणाली का एक समाधान है यदि और केवल अगर a और b, c से क्राइम हैं । चूँकि हमारे पास तीन ऐसी प्रणालियाँ हैं, जिनमें से प्रत्येक के लिए एक सबमशीन है, उपमहाद्वीपों की लंबाई जोड़ीदार कोप्राइम होनी चाहिए।

रेगेक्स का अंतिम भाग यह सुनिश्चित करने के लिए है कि उपमेय में से एक लंबाई 6 का है । यह अन्य दो उपमहाद्वीपों को होने के लिए मजबूर करता है5 और 7 वर्ण लंबे, क्योंकि कोई भी छोटा मान कॉपीराइड नहीं होगा और किसी भी बड़े मान के परिणामस्वरूप 256 वर्णों की तुलना में अधिक महत्वपूर्ण होगा। समीकरणों के लिए सबसे छोटा समाधान 85 , 36 और 91 की लंबाई की उपज देता है , जिसके परिणामस्वरूप 254 की लंबाई होती है --- जब तक हम प्राप्त कर सकते हैं।

लंबे समय तक रेगेक्स एक ही सिद्धांत का उपयोग करता है, जिसमें केवल 6 मापदंडों की लंबाई कम से कम तीन और कोई अतिरिक्त प्रतिबंध नहीं है। अधिक से अधिक छह पूर्णांकों की सबसे छोटी जोड़ो में coprime सेट 2 है {3, 4, 5, 7, 11, 13} है, जो कम से कम लंबाई की सबस्ट्रिंग पैदावार 40041, 15016, 24025, 34321, 43,681 और 23101। इसलिए, सबसे छोटी स्ट्रिंग जो लंबे रेगेक्स से मेल खाती है a{3},a{4},a{5},a{7},a{11},a{13},a{40041},a{15016},a{24025},a{34321},a{43681},a{23101} (मापदंडों के क्रम तक)। यह 180,239 अक्षर है!


वह {16,20}
Sp3000

2
मैच: aaaaa,aaaaaa,aaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaबेमेल:aaaaaaaaaaaaaaaa
Sp3000

मुझे लगता है कि एसई aकिसी कारण से अतिरिक्त एस जोड़ रहा है - aकॉमा के बीच 5,6,7,85,36,91,18 एस होना चाहिए : /
Sp3000

@ Sp3000 एक कार्ड, कोई भी कार्ड चुनें;) हाँ, आपने इसे क्रैक किया। ऐसा लगता है कि आपकी टिप्पणी में से कुछ गैर-एएससीआईआई हैं, लेकिन संख्या सही हैं।
एल

@ aसभी एससीआईआईआई हैं, लेकिन प्रत्येक मैनुअल लाइन ब्रेक एसई के लिए दो गैर-मुद्रण योग्य यूनिकोड वर्ण हैं।
मार्टिन एंडर

5

.NET स्वाद, 141 बाइट्स [फटा]

(?=(?<![][])(?(c)(?!))((?<c>[[])|(?<-c>[]])){15,}(?(c)(?!))(?![][]))^.*$(?<=(?<![][])(?(c)(?!))((?<c>[[])|(?<-c>[]])){15,}(?(c)(?!))(?![][]))

लुटेरों के लिए एक और! मुझे यकीन है कि यह क्रैक हो जाएगा, लेकिन मुझे उम्मीद है कि क्रैक करने वाले व्यक्ति को प्रक्रिया में .NET स्वाद के बारे में कुछ दिलचस्प सीखना होगा।

RegexStorm और RegexHero पर परीक्षण किया गया ।

मुझे लगा कि यह दिलचस्प होगा, क्योंकि यह तीनों लैंडमार्क रेगेक्स सुविधाओं के इंटरप्ले पर निर्भर करता है, जिन्हें आप केवल .NET में पा सकते हैं: चर-लंबाई का लुकबाइंड, बैलेंसिंग ग्रुप और राइट-टू-लेफ्ट मैचिंग।

इससे पहले कि हम .NET-बारीकियों में शुरुआत करें, चलो चरित्र वर्गों के बारे में एक सरल बात को स्पष्ट करते हैं। चरित्र कक्षाएं खाली नहीं हो सकती हैं, इसलिए यदि कोई एक के साथ शुरू होता है, तो ]वास्तव में वर्ग के भाग के बिना भागने की आवश्यकता होती है। इसी तरह, [चरित्र वर्ग में बिना भाग लिए कक्षा के सदस्य के रूप में असंदिग्ध रूप से व्यवहार किया जा सकता है। तो []]बस एक ही मिलान एक है \], और के [[]रूप में एक ही है \[और अधिक महत्वपूर्ण [][]बात एक चरित्र वर्ग है जिसमें दोनों कोष्ठक हैं।

अब आइए रेगेक्स की संरचना को देखें:(?=somePattern)^.*$(?<=somePattern)। तो वास्तविक मैच वास्तव में कुछ भी ( ^.*$) है, लेकिन हम एक पैटर्न को दो बार लागू करते हैं, इसे एक बार शुरू करने और एक बार अंत तक एंकरिंग करते हैं।

आइए उस पैटर्न को देखें: (?<![][])यह सुनिश्चित करता है कि पैटर्न से पहले कोई ब्रैकेट नहीं है। (?![][])(अंत में) यह सुनिश्चित करता है कि पैटर्न के बाद कोई ब्रैकेट नहीं है। यह एक स्ट्रिंग के सिरों पर या किसी अन्य चरित्र से सटे पर पूरा होता है।
यह बात, (?(c)(?!))शुरुआत में वास्तव में अब के लिए बेमानी है, क्योंकि यह केवल यह सुनिश्चित करता है कि नामित कैप्चरिंग समूह cने कुछ भी मिलान नहीं किया है। हम करते हैं अंत में इस की जरूरत है, तो कम से कम यह अच्छा और सममित है। अब पैटर्न का मुख्य भाग यह है ((?<c>[[])|(?<-c>[]])){15,}(?(c)(?!)):। इन समूहों को संतुलन समूह कहा जाता है, और वे यहां जो करते हैं, वह कम से कम 15 की स्ट्रिंग से मेल खाता हैसंतुलित वर्ग कोष्ठक। इस पोस्ट के लिए बहुत सारे - समूहों को संतुलित करने के बारे में बहुत कुछ कहा गया है, लेकिन मैं आपको एक व्यापक चर्चा के लिए संदर्भित कर सकता हूं जिसे मैंने कुछ समय पहले स्टैकऑवरफ्लो पर पोस्ट किया था।

ठीक है, इसलिए लुकहैड क्या करता है यह सुनिश्चित करने के लिए कि पैटर्न उन संतुलित वर्ग कोष्ठक से शुरू होता है - और यह कि इसके आगे कोई वर्ग वर्ग नहीं हैं।

अब अंत में दिखावे में बिल्कुल समान पैटर्न है। तो क्या यह बेमानी नहीं होना चाहिए? [][][][][][][][]दोनों लुकअप को पूरा करने जैसा कुछ नहीं होना चाहिए और पैटर्न का मिलान करना चाहिए?

नहीं, क्योंकि यहां वह मुश्किल है। हालांकि अनैजंटेड, .NET लुकबाइंड राइट से लेफ्ट से मेल खाते हैं। यही कारण है कि .NET एकमात्र स्वाद है जो चर-लंबाई के लुकबाइंड का समर्थन करता है। आमतौर पर आप इसे नोटिस नहीं करते हैं क्योंकि मिलान का क्रम अप्रासंगिक है। लेकिन इस विशेष मामले में, इसका मतलब है कि उद्घाटन वर्ग कोष्ठक को अब समापन वर्ग कोष्ठक के दाईं ओर आना चाहिए । तो वास्तव में लग रहा है विरोधी मिलान वर्ग कोष्ठक के लिए जाँच करता है, के रूप में ][][][या में ]]][[[। इसलिए मुझे (?(c)(?!))पैटर्न की शुरुआत में भी जांच की आवश्यकता है , क्योंकि अब मैच का अंत है।

इसलिए हम स्ट्रिंग की शुरुआत में 15 (या 16) मैचिंग ब्रैकेट चाहते हैं और स्ट्रिंग के अंत में 15 (या 16) एंटी-मैचिंग ब्रैकेट। लेकिन उन दो के कारण नहीं जोड़ा जा सकता है(?![][])lookarounds। तो हम क्या करे? हम एक मिलान स्ट्रिंग और एक विरोधी-मिलान स्ट्रिंग लेते हैं और उन्हें एक मनमाना चरित्र के साथ जोड़ते हैं, उदाहरण के लिए [][][][][[[[]]]]!][][][][]]]][[[[

मुझे लगता है कि एक सवाल छोड़ देता है ... मैंने पृथ्वी पर कैसे पता लगाया कि लुकबाइंड दाएं से बाएं से मेल खाते हैं? खैर मैंने एक बार कुछ रहस्यमय रेगेक्स जादू की कोशिश की और यह पता नहीं लगा सका कि मेरा लुकबाइंड काम क्यों नहीं करेगा। इसलिए मैंने अगले दरवाजे के अनुकूल Q & A साइट से पूछा । अब मैं वास्तव में इस सुविधा के बारे में खुश हूं, क्योंकि यह संतुलन समूहों को और अधिक शक्तिशाली बनाता है यदि आप जानते हैं कि उनका सही उपयोग कैसे किया जाए। :)


1
मैच: [][][][][][][][]a][][][][][][][][। गैर-मैच:That's interesting...
जिम्मी 23013

@ user23013 यूप! यह जल्दी था। क्या आप पहले से ही .NET के उन प्रश्नों से परिचित थे? :)
मार्टिन एंडर

काश मैं 5 मिनट पहले
तलाश में

नहीं, लेकिन मुझे पहले से ही पता है कि PCRE में क्वांटिफायर की अनुमति नहीं है। मुझे लगता है कि वास्तव में पिछड़े दिखने की तुलना में बहुत बेहतर है।
jimmy23013

@ MartinBüttner तो, पुष्टि करने के लिए, वास्तव में बैकबाइंड से सामने की ओर देखिए?
ट्विननाइट

5

अजगर का स्वाद (200127 बाइट्स) [फटा]

बस इतना है कि हम (उम्मीद) एक दिन कुछ आखिरी देख सकते हैं, यह बड़ी बंदूकें बाहर लाने का समय है :)

3-सैट और हैमिल्टनियन पथ के साथ समस्या यह है कि जटिलता प्रमुख आकार के संदर्भ में है। इस बार मैंने कुछ चुना है जो कुंजी के बजाय रेगेक्स पर निर्भर है।

यहाँ यह है: regex । आपको यह फ़ाइल उपयोगी भी लग सकती है। (चिंता न करें, मैंने इस समय वहां कुछ भी अजीब नहीं छिपा है;))

मैं इस एक का परीक्षण करने के लिए RegexPlanet का उपयोग करता था - यह कुछ ऐसा ढूंढना कठिन था जो टाइम आउट नहीं होगा: /। यह देखने के लिए कि क्या कोई मिलान था, देखें कि क्या आपका स्ट्रिंग नीचे दिखाई देता है findall()

सौभाग्य!


रेगेक्स सिर्फ "लंबाई 64 की एक स्ट्रिंग है जो लंबाई 5000 के 20 स्ट्रिंग्स के एक सेट में एक सामान्य परिणाम के रूप में प्रकट होता है"। हालांकि, बहुत सारे समाधान भी थे।


5
मैच: d,mE~JZ0,_:3kBdLdgBSzJ!@MLrrAgKsf@Pl35N9bxsIf@ReVU>:YDg`d1MjL@_-। गैर-मैच:{ line|fold -w1 >filea; while line >filec; do fold -w1 <filec >fileb; diff -d --old-line-format= --new-line-format= --unchanged-line-format=%L filea fileb >filec;mv filec filea;done;cat filea;} <file1|tr -d $'\n'|head -c64;echo
जिम्मी 23013

आहा मैं हरा रहा हूँ - मुझे लगता है कि दृश्य बहुत लंबे थे और बहुत सारे समाधान भी थे
Sp3000

@ user23013 यह बहुत अच्छा लगता है, लेकिन यह वास्तव में बहुत बुरा नहीं है, यह देखते हुए कि वहाँ 5437589409196755010929519824578406706409702392636696356266902658903907907679466794484484481681387688028808088080808806806 है।
मार्टिन एंडर

खैर, मैं गलत हूं। केवल 718406958841 समाधान नहीं हैं। और मेरी स्क्रिप्ट में बग है इसलिए इसने पिछले पैटर्न को नजरअंदाज कर दिया। लेकिन पहले 19 पैटर्न का सामान्य परिणाम भी पिछले एक के बाद का ही हुआ
jimmy23013

@ मार्टिनबटनर मेरा मतलब है कि मुझे नहीं पता कि इसके कितने समाधान हैं, और यह संख्या गलत है। उनकी सबसे लंबी सामान्य अनुवर्ती 718406958841 (सही मूल्य: 97082021465) लंबाई 64 के बाद है। लेकिन अन्य सीएस हैं जो एलसीएस के बाद के नहीं हैं।
jimmy23013

5

अजगर, 145475 बाइट्स [फटा]

हमारे सूचकांकों की जाँच के महत्व को सिखाने के लिए वम्पस का धन्यवाद :)

अंतिम समाधान के रूप में एक ही सौदा, केवल उम्मीद ही नहीं इस बार टूट गया। कच्चा रेगेक्स: http://pastebin.com/MReS2R1k

संपादित करें: यह टूटा नहीं था, लेकिन जाहिर है यह अभी भी बहुत आसान था। कम से कम इसे "तुरंत" हल नहीं किया गया था;)


4
नॉन-मैच: 1040060321170122554027333022674205250442151362365165773421664173556667110413375720720711725045122733213710556062114131057357354554245723416516004761215632214223735570625116160162051407026445600345370604702671021412723536217011007021752560474402200436670402मैच:minisat2hoursCPU

Ayup। आप समझ गए। यह बहुत जल्दी थी। शायद मुझे अपने 1 जीबी रेगेक्स का
भंडाफोड़ करना है

5

जावा पैटर्न / ओरेकल कार्यान्वयन (75 वर्ण / 150 बाइट्स UTF-16) [क्रैक]

(कोड नाम: खराब कॉफी 101)

यह ध्वज के साथ प्रयोग की जाने वाली Patternवस्तु है, (निहित लंगर):CANON_EQmatches()

Pattern.compile("(\\Q\u1EBF\\\\E)?+[\\w&&[\\p{L1}]\\p{Z}]+|\\1[\uD835\uDC00-\uD835\uDC33]{1927027271663633,2254527117918231}", Pattern.CANON_EQ)

अपनी कुंजी का परीक्षण यहां ideone पर करें

एक कुंजी होने की गारंटी है। यदि आप कुछ पुष्टि चाहते हैं, तो स्पॉइलर पढ़ें।

जैसा कि आप देख सकते हैं, यह एक सामान्य रेगेक्स नहीं है। हालांकि, यह Exceptionओरेकल के जावा संस्करण 1.6.0u37 और जावा संस्करण 1.7.0u11 के बिना चलता है , और इसे लेखन के समय सबसे वर्तमान संस्करण के लिए भी चलना चाहिए।

यह 4 बग का उपयोग करता है: CANON_EQअसफल प्रयास का कब्जा किया गया पाठ, खो दिया चरित्र वर्ग और क्वांटिफायर अतिप्रवाह।


4
मिलान : "(?:e\u0302\u0301\\|\u00ea\u0301\\|\u1ebf\\|\u00ea\\\u0301|e\u0302\\\u0301|\u00ea\\\u0301|\u00ea\u0301\\|\u1ebf\\|e\\\u0302\u0301)\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00\uD835\uDC00"(उद्धृत रूप)। गैर मैच : JavaRegexSoBuggy। मैच के लिए आइडोन: ideone.com/DEesdk
nneonneo

कीड़े पाए गए: (1) CANON_EQपूर्वगामी पात्रों को आंतरिक रूप से बारी-बारी से फैलता है, जो अंदर ही अंदर टूट जाता है \Q\E; (2) पुनरावृत्ति की लंबाई 32 बिट्स तक काट दी जाती है; (3) चरित्र वर्ग के मिलान के साथ कुछ अजीब बात चल रही है जो इसे वैकल्पिक रूप से छोड़ने का कारण बनती है (बग बिल्कुल पता नहीं था कि क्या था)।
nnonneo

@nneonneo: आपकी व्याख्या सही है। लेकिन आप backref \1बग भूल गए । और हाँ, चरित्र वर्ग में एक बग है। आपने 2 घंटे से कम समय में यह सब कैसे पता लगाया?
n --h'a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳

मैंने 20 मिनट पहले इस पर काम करना शुरू कर दिया था। आपने यह बहुत स्पष्ट कर दिया कि समस्या के किन हिस्सों पर जोर दिया गया है कि कौन से कीड़े (क्योंकि प्रत्येक बग मूल रूप से अपने समूह में था), इसलिए मुझे लगा कि प्रत्येक भाग को स्वतंत्र रूप से कैसे संतुष्ट किया जाए, और फिर उन्हें संयुक्त किया। मैं भाग्यशाली था कि मुझे वास्तव में यह जानने की ज़रूरत नहीं थी कि चरित्र वर्ग क्या कर रहा है। (मैं भी बहुत भाग्यशाली हूं कि जब आप एक वाक्यविन्यास त्रुटि करते हैं तो जावा "विस्तारित" आंतरिक पैटर्न से बाहर
निकलता है

इसके अलावा! मुझे विश्वास नहीं है कि कब्जा कर लिया पाठ प्रतिधारण जरूरी एक बग है। यह प्रतीत होता है कि कैसे अधिकारी के पास क्वांटिफायर काम करते हैं। (यह भी कुछ regex hacks के लिए एक उपयोगी संपत्ति है ... hm ...)
nneonneo

5

.NET स्वाद, 17,372 बाइट्स [फटा]

यह अभी भी एक आसान संस्करण है। इसे लंबे समय तक तार के साथ काम करने के लिए अधिक अनुकूलन की आवश्यकता होती है।

रेगेक्स यहाँ है: http://pastebin.com/YPE4zyBB

Ungolfed: http://pastebin.com/PLJp0KhF

RegexStorm और इस ब्लॉग और RegExLib (सभी विकल्पों के साथ अनियंत्रित) पर परीक्षण किया गया ।

इस regex का समाधान 51221886853689167357807674444735847888756487271329 = 2147852126374329492975359 = 2384795779221263457172831 है, जिसका परिणाम आधार 289 में इनकोडिंग के साथ, कम से कम महत्वपूर्ण पहले है।

गणना को तेज करने के लिए प्रत्येक अंक को सबसे पहले दो आधार 17 संख्याओं में विभाजित किया जाता है। यह भी है कि कैसे उत्पाद regex में एन्कोड किया गया है।

दो संख्याओं में अंकों की प्रत्येक जोड़ी को फिर कैप्चर ग्रुप में गुणा किया a0जाता है a38। उनमें से प्रत्येक उत्पाद का एक अंक है। मौजूदा स्थिति से ट्रैक रखा जाता है pऔर q। और उत्पाद की तुलना करते हुए गुणा के बाद कैरी को संसाधित किया जाता है।

यह बेस 289 में है क्योंकि इसे दो 1024 बिट संख्या को स्वीकार करने के लिए डिज़ाइन किया गया था, जिसमें प्रत्येक के पास 128 बेस 256 अंक हैं, और मैंने कॉमा को हटाने के बारे में नहीं सोचा था, इसलिए आधार 256 के साथ पूर्ण स्ट्रिंग 257 वर्ण होगा।

1536 बिट संस्करण यहाँ है । यह दो 768 बिट संख्या को स्वीकार करता है। इस आसान संस्करण में संख्या में केवल 81 बिट्स हैं।


2
मैच : Ľê¯6Aĝ4aþĀ,lŃŝĿBİŢŞĩï(बच गया:) \u013d\xea\xaf6A\u011d4a\xfe\u0100,l\u0143\u015d\u013fB\u0130\u0162\u015e\u0129\xefगैर-मैच :VeryNiceMultiplier
nnonneo

4

ECMAScript स्वाद, 30 बाइट्स [फटा]

^((?![\t- ]|[^\s])(.)(?!\2))+$

यहाँ लुटेरों के लिए दरार बनाना आसान है। यह वैचारिक रूप से बहुत कठिन नहीं है, लेकिन इसके लिए थोड़ा शोध (या स्क्रिप्टिंग) की आवश्यकता हो सकती है। मैं खुद को लीडरबोर्ड में सूचीबद्ध करने का इरादा नहीं रखता, लेकिन अगर कोई इसे 72 घंटों के भीतर क्रैक करता है, तो यह उनके डाकू स्कोर की ओर गिना जाएगा।

Chrome का उपयोग करके Regex101 और RegExr पर परीक्षण किया गया ।

खैर, यह जल्दी था!

रेगेक्स को किसी भी तार को अलग - अलग गैर-एएससीआईआई व्हाट्सएप वर्णों से मेल खाना चाहिए था । हालाँकि, मैं .*इससे पहले भूल गया था \2, इसलिए यह वास्तव में गैर-एएससीआईआई व्हाट्सएप के किसी भी स्ट्रिंग से मेल खाता है, जिसमें दो समान चरित्र नहीं हैं। यूनिकोड में 18 ऐसे वर्ण हैं जो कोड बिंदु तक हैं 0xFFFF। User23013 द्वारा पोस्ट किया गया मैच एक ऐसा स्ट्रिंग है, जिसमें 16 वर्ण हैं।


1
मैच (बेस 64):, wqDigZ/CoOKBn8Kg4oGfwqDigZ/CoOKBn8Kg4oGfwqDigZ/CoOKBnw==नॉन-मैच:aaaabaaacaaadaaa
जिम्मी 23013

यह केवल दो अलग-अलग वर्णों के साथ, केवल बारी-बारी से अलग नहीं है।
jimmy23013

@ user23013 धिक्कार है, मैं लुकहेड में भूल गया .*। अच्छी पकड़। अधिक अच्छी तरह से परीक्षण किया जाना चाहिए।
मार्टिन एंडर

4

रूबी-स्वाद वाला , 24 बाइट्स [फटा]

^(?!.*(.+)\1)([\[\\\]]){256}$

कृपया किसी परीक्षक के लिए एक लिंक शामिल करें जहाँ आपकी इच्छित कुंजी काम कर रही हो (जैसे rubular.com )। (इसके अलावा, आक्षेप / गोल्फ प्रो टिप: यदि आप इसके बजाय पीसीआरई का उपयोग करते हैं, तो चरित्र वर्ग के रूप में लिखा जा सकता है []\\[];))
मार्टिन एंडर

लिंक जोड़ा गया। मुझे संदेह है कि वम्पस ने इसे क्रैक किया है, इसे रुबर्ल डॉट कॉम के लिए एक पर्मलिंक के साथ साबित कर सकता है
हिस्टोक्रेट

2
गैर मैच: soylentgreenispeople। टिप्पणी प्रणाली लंबे शब्दों को कैसे संभालती है, इसके कारण rubular.com/r/TCqjcaGsU1 पर उपलब्ध मैच यहां पोस्ट नहीं किया गया।

@ WumpusQ। शानदार ग्रेट! यदि आप गैर-मैच को उसी टिप्पणी में शामिल करते हैं, तो हम इसके ऊपर की सभी गंदगी को साफ कर सकते हैं।
मार्टिन एंडर

4

PHP, 168 बाइट्स [ नीनेनो द्वारा फटा ]

^((?![!?$]*[^!?$]))?(?:[^!]\2?+(?=(!*)(\\\3?+.(?!\3)))){4}(?(1)|Ha! No one will ever get this one...)|(?!(?1))\Q\1?!($!?)?\E\1?!($!?)?(?<!.{12})\Q(?=(?1))\E(?=(?1))!\?$

यहाँ एक रेगेक्स डेमो है

PS यह खेल कठिन है।


2
मैच : \1?!($!?)?!(?=(?1))!?गैर-मैच :IncrementalRegexTestingWorks
nneonneo

@nneonneo आह, आप बहुत अच्छे हैं;)
अनहाइड्रोन

4

पीसीआरई (1043 बाइट्स) [फटा]

बेतरतीब ढंग से उत्पन्न होने के बाद रेगेक्स ने मुझे विफल कर दिया है (विचार अच्छे थे, लेकिन मैं पर्याप्त समस्या नहीं उत्पन्न कर सका), मैंने इसे एक हाथ से शिल्प करने का फैसला किया है। मैं इसे "संतुष्ट करने के लिए नियमों का एक बहुत" डब करता हूं।

^(?=^([^)(]*\(((?>[^)(]+)|(?1))*\)[^)(]*)*$)(?=^([^][]*\[((?>[^][]+)|(?3))*\][^][]*)*$)(?=^([^}{]*\{((?>[^}{]+)|(?5))*\}[^}{]*)*$)(?!^\(.*)(?!.*\(.{250}\).*)(?=.*\[.{250}\].*)(?=.*\{.{250}\}.*)(?=.*\[.\(\).\{\}.\].*)(?=.*\}...\[...\[...\]...\]...\{.*)(?=.*\(\(..\(\(.{68}\(\(\)\).{43}\)\)\)\).*)(?=.*\{..\{..\{.{65}\{\}\{\}.{33}\{\}.{107}\}\}.\}.*)(?=.*\[\{\{\[\(\{.*)(?=.*\[\[..\[.{6}\[.{6}\]\]...\]\].{6}\[..\]..\[\].*)(?=.*\]\]\}\}\}.\)\)\)\).{96}\]\}\}\]\]\]\}\]\]\].\)\]\].*)(?=.*\]..\).{6}\(.{7}\{.{5}\[...\[.{5}\{\[.*)(?=.*\[.{87}\{.{45}}{.{38}}.{27}\].*)(?=.*\(\{.{32}\(.{20}\{.{47}\].{43}\{\{.{25}\}\}.{18}\].{5}\}....\}.{5}\).*)(?=.*\{.{12}\(.{5}\(...\(...\{\[.\{\[\[.*)(?=.*\{\(.{21}\).{8}\}.{14}\[.{7}\]..\{.{5}\{\}....\}.*)(?=.*\(.\{.{49}\{.{16}\}.{25}\}.{66}\).*)(?!.*\(\{\(\(.*)(?!.*\(\)\[\].*)(?=(.*?\].*?\)){15,}.*)(?=(.*\[.*\(.*\{){5,9}.*)(?=.*\({3}.{105}\[{3}.{105}[^}{].*)(?=.*\(..\).{5}\(\)....\}\}\].\{\{\[.{22}\[.{35}\}\}\].*)(?!.*\(\(.{178}\])(?=(.*\[..\]){8,10}.*)(?!(.*\([^\(\)]{5}\(){4,}.*).{63}(.{6}).{130}\11.{51}$

और विस्तारित:

^
(?=^([^)(]*\(((?>[^)(]+)|(?1))*\)[^)(]*)*$)
(?=^([^][]*\[((?>[^][]+)|(?3))*\][^][]*)*$)
(?=^([^}{]*\{((?>[^}{]+)|(?5))*\}[^}{]*)*$)
(?!^\(.*)
(?!.*\(.{250}\).*)
(?=.*\[.{250}\].*)
(?=.*\{.{250}\}.*)
(?=.*\[.\(\).\{\}.\].*)
(?=.*\}...\[...\[...\]...\]...\{.*)
(?=.*\(\(..\(\(.{68}\(\(\)\).{43}\)\)\)\).*)
(?=.*\{..\{..\{.{65}\{\}\{\}.{33}\{\}.{107}\}\}.\}.*)
(?=.*\[\{\{\[\(\{.*)
(?=.*\[\[..\[.{6}\[.{6}\]\]...\]\].{6}\[..\]..\[\].*)
(?=.*\]\]\}\}\}.\)\)\)\).{96}\]\}\}\]\]\]\}\]\]\].\)\]\].*)
(?=.*\]..\).{6}\(.{7}\{.{5}\[...\[.{5}\{\[.*)
(?=.*\[.{87}\{.{45}}{.{38}}.{27}\].*)
(?=.*\(\{.{32}\(.{20}\{.{47}\].{43}\{\{.{25}\}\}.{18}\].{5}\}....\}.{5}\).*)
(?=.*\{.{12}\(.{5}\(...\(...\{\[.\{\[\[.*)
(?=.*\{\(.{21}\).{8}\}.{14}\[.{7}\]..\{.{5}\{\}....\}.*)
(?=.*\(.\{.{49}\{.{16}\}.{25}\}.{66}\).*)
(?!.*\(\{\(\(.*)
(?!.*\(\)\[\].*)
(?=(.*?\].*?\)){15,}.*)
(?=(.*\[.*\(.*\{){5,9}.*)
(?=.*\({3}.{105}\[{3}.{105}[^}{].*)
(?=.*\(..\).{5}\(\)....\}\}\].\{\{\[.{22}\[.{35}\}\}\].*)
(?!.*\(\(.{178}\])
(?=(.*\[..\]){8,10}.*)
(?!(.*\([^\(\)]{5}\(){4,}.*)
.{63}(.{6}).{130}\11.{51}
$

Regex101 पर परीक्षण किया गया - आपके कंप्यूटर के आधार पर आपको अधिकतम निष्पादन समय की आवश्यकता हो सकती है।


यह रेगेक्स नियमों के एक पूरे समूह को कूटबद्ध करता है, जिसे केवल संतुष्ट करने की आवश्यकता है। कोई भी समाधान करेगा, यह सिर्फ एक खोज है।

  • पहले तीन मुख्य नियमों की आवश्यकता होती है, अलग-अलग, सभी ([{ब्रैकेट को कुंजी के भीतर संतुलित करने की आवश्यकता होती है ।
  • अधिकांश अभिव्यक्तियों के लिए आवश्यक है कि एक निश्चित "आकार" को कुंजी में होना चाहिए या नहीं होना चाहिए। उदाहरण के लिए, 8 वीं पंक्ति के लिए फॉर्म के कुछ की आवश्यकता होती है [.(.).]
  • (?=(.*\[.*\(.*\{){5,9}.*)उदाहरण के लिए, नियमों की आवश्यकता है कि [({प्रत्यावर्तन कम से कम 5 बार होता है। ध्यान दें कि यह रेखा विशेष रूप से अनजाने में कई स्तरों पर छंटनी होती है।
  • \11विशेष स्थिति में दो बार प्रकट होने के लिए बैकरेक्शन में एक छह-वर्ण वाले विकल्प की आवश्यकता होती है।


2
मैच : [((({.[.[](){{}{].{.(({){(.[]()....}}].{{[[....).[..]()(}..[..]([....(([{((({).](){.{}{}{}....}[[()[}}][{{[({[[[.]]}()]].{}.]{[..]{.[]]}}}())))(())[(.].{[.{[[..[()].()}{{.[...[}{.]..)]...{.])))).}}..([......{.....[.]}[...}.{[.}...}})}.))).]}}]]]}]]].)]]..}। गैर मैच: WhatANastySetOfRulesYouHave
nnonneo

मैंने निष्पादन का समय 50 सेकंड तक बढ़ा दिया। वैसे, अगर आप उचित गैर-लालची क्वांटिफायर का उपयोग करते हैं (?=(.*\[.*\(.*\{){5,9}.*), तो आपको अधिकतम निष्पादन समय (समान परिणाम) बढ़ाने की आवश्यकता नहीं होगी - मैच तुरंत हो जाएंगे।
nnonneo

@nneonneo अहा हां, मुझे एहसास हुआ कि मैं पोस्ट करने के बाद। क्या आप पोस्ट कर सकते हैं, कह सकते हैं, आपकी कुंजी के लिए एक पास्टबिन लिंक? एसई टिप्पणियाँ फिर से अभिनय करने लगते हैं
Sp3000

@nneonneo इसके अलावा अगर आपके समाधान में बहुत सारे बिंदु हैं, तो स्पष्ट रूप से मेरे पास पर्याप्त नियम नहीं हैं : पी
Sp3000

2
यहाँ मेरे समाधान के साथ एक regex101 लिंक दिखाई दे रहा है: regex101.com/r/gP2aX7/1
nneonneo

4

.NET स्वाद (7563 बाइट्स) [फटा]

@ User23013 के विचार से प्रेरित है

^(?:(?=1(?<1>){5632})|(?=0)).(?:(?=1(?<1>){79361})|(?=0)).(?:(?=1(?<1>){188421})|(?=0)).(?:(?=1(?<1>){164870})|(?=0)).(?:(?=1(?<1>){63496})|(?=0)).(?:(?=1(?<1>){116233})|(?=0)).(?:(?=1(?<1>){112138})|(?=0)).(?:(?=1(?<1>){47447})|(?=0)).(?:(?=1(?<1>){85005})|(?=0)).(?:(?=1(?<1>){17936})|(?=0)).(?:(?=1(?<1>){108053})|(?=0)).(?:(?=1(?<1>){88599})|(?=0)).(?:(?=1(?<1>){91672})|(?=0)).(?:(?=1(?<1>){178716})|(?=0)).(?:(?=1(?<1>){199710})|(?=0)).(?:(?=1(?<1>){166661})|(?=0)).(?:(?=1(?<1>){190496})|(?=0)).(?:(?=1(?<1>){184494})|(?=0)).(?:(?=1(?<1>){199203})|(?=0)).(?:(?=1(?<1>){116778})|(?=0)).(?:(?=1(?<1>){78891})|(?=0)).(?:(?=1(?<1>){192556})|(?=0)).(?:(?=1(?<1>){24995})|(?=0)).(?:(?=1(?<1>){1071})|(?=0)).(?:(?=1(?<1>){192561})|(?=0)).(?:(?=1(?<1>){108082})|(?=0)).(?:(?=1(?<1>){1593})|(?=0)).(?:(?=1(?<1>){26967})|(?=0)).(?:(?=1(?<1>){197983})|(?=0)).(?:(?=1(?<1>){97034})|(?=0)).(?:(?=1(?<1>){86965})|(?=0)).(?:(?=1(?<1>){60480})|(?=0)).(?:(?=1(?<1>){149571})|(?=0)).(?:(?=1(?<1>){100932})|(?=0)).(?:(?=1(?<1>){40519})|(?=0)).(?:(?=1(?<1>){173492})|(?=0)).(?:(?=1(?<1>){80972})|(?=0)).(?:(?=1(?<1>){115790})|(?=0)).(?:(?=1(?<1>){29265})|(?=0)).(?:(?=1(?<1>){91730})|(?=0)).(?:(?=1(?<1>){173140})|(?=0)).(?:(?=1(?<1>){52821})|(?=0)).(?:(?=1(?<1>){176726})|(?=0)).(?:(?=1(?<1>){170211})|(?=0)).(?:(?=1(?<1>){150105})|(?=0)).(?:(?=1(?<1>){23131})|(?=0)).(?:(?=1(?<1>){81503})|(?=0)).(?:(?=1(?<1>){77412})|(?=0)).(?:(?=1(?<1>){106086})|(?=0)).(?:(?=1(?<1>){4284})|(?=0)).(?:(?=1(?<1>){142610})|(?=0)).(?:(?=1(?<1>){167534})|(?=0)).(?:(?=1(?<1>){190577})|(?=0)).(?:(?=1(?<1>){147731})|(?=0)).(?:(?=1(?<1>){133748})|(?=0)).(?:(?=1(?<1>){194750})|(?=0)).(?:(?=1(?<1>){49257})|(?=0)).(?:(?=1(?<1>){49274})|(?=0)).(?:(?=1(?<1>){120767})|(?=0)).(?:(?=1(?<1>){172668})|(?=0)).(?:(?=1(?<1>){24703})|(?=0)).(?:(?=1(?<1>){108160})|(?=0)).(?:(?=1(?<1>){60546})|(?=0)).(?:(?=1(?<1>){56963})|(?=0)).(?:(?=1(?<1>){30340})|(?=0)).(?:(?=1(?<1>){95368})|(?=0)).(?:(?=1(?<1>){59530})|(?=0)).(?:(?=1(?<1>){53388})|(?=0)).(?:(?=1(?<1>){14477})|(?=0)).(?:(?=1(?<1>){28302})|(?=0)).(?:(?=1(?<1>){182927})|(?=0)).(?:(?=1(?<1>){59024})|(?=0)).(?:(?=1(?<1>){146200})|(?=0)).(?:(?=1(?<1>){153746})|(?=0)).(?:(?=1(?<1>){39571})|(?=0)).(?:(?=1(?<1>){134293})|(?=0)).(?:(?=1(?<1>){158362})|(?=0)).(?:(?=1(?<1>){170139})|(?=0)).(?:(?=1(?<1>){182940})|(?=0)).(?:(?=1(?<1>){7327})|(?=0)).(?:(?=1(?<1>){143525})|(?=0)).(?:(?=1(?<1>){119464})|(?=0)).(?:(?=1(?<1>){82090})|(?=0)).(?:(?=1(?<1>){170667})|(?=0)).(?:(?=1(?<1>){49522})|(?=0)).(?:(?=1(?<1>){69806})|(?=0)).(?:(?=1(?<1>){15535})|(?=0)).(?:(?=1(?<1>){16049})|(?=0)).(?:(?=1(?<1>){163358})|(?=0)).(?:(?=1(?<1>){181876})|(?=0)).(?:(?=1(?<1>){58044})|(?=0)).(?:(?=1(?<1>){16062})|(?=0)).(?:(?=1(?<1>){39616})|(?=0)).(?:(?=1(?<1>){31425})|(?=0)).(?:(?=1(?<1>){94404})|(?=0)).(?:(?=1(?<1>){86848})|(?=0)).(?:(?=1(?<1>){16589})|(?=0)).(?:(?=1(?<1>){195280})|(?=0)).(?:(?=1(?<1>){199377})|(?=0)).(?:(?=1(?<1>){43731})|(?=0)).(?:(?=1(?<1>){67534})|(?=0)).(?:(?=1(?<1>){106198})|(?=0)).(?:(?=1(?<1>){54999})|(?=0)).(?:(?=1(?<1>){52952})|(?=0)).(?:(?=1(?<1>){125828})|(?=0)).(?:(?=1(?<1>){169691})|(?=0)).(?:(?=1(?<1>){184542})|(?=0)).(?:(?=1(?<1>){177888})|(?=0)).(?:(?=1(?<1>){43233})|(?=0)).(?:(?=1(?<1>){127203})|(?=0)).(?:(?=1(?<1>){116518})|(?=0)).(?:(?=1(?<1>){117990})|(?=0)).(?:(?=1(?<1>){67815})|(?=0)).(?:(?=1(?<1>){62202})|(?=0)).(?:(?=1(?<1>){165611})|(?=0)).(?:(?=1(?<1>){197356})|(?=0)).(?:(?=1(?<1>){29933})|(?=0)).(?:(?=1(?<1>){90862})|(?=0)).(?:(?=1(?<1>){90863})|(?=0)).(?:(?=1(?<1>){149232})|(?=0)).(?:(?=1(?<1>){61681})|(?=0)).(?:(?=1(?<1>){137970})|(?=0)).(?:(?=1(?<1>){90357})|(?=0)).(?:(?=1(?<1>){47351})|(?=0)).(?:(?=1(?<1>){172509})|(?=0)).(?:(?=1(?<1>){78293})|(?=0)).(?:(?=1(?<1>){66303})|(?=0)).(?:(?=1(?<1>){66262})|(?=0)).(?:(?=1(?<1>){158471})|(?=0)).(?:(?=1(?<1>){5676})|(?=0)).(?:(?=1(?<1>){127242})|(?=0)).(?:(?=1(?<1>){51979})|(?=0)).(?:(?=1(?<1>){162060})|(?=0)).(?:(?=1(?<1>){27405})|(?=0)).(?:(?=1(?<1>){153874})|(?=0)).(?:(?=1(?<1>){150291})|(?=0)).(?:(?=1(?<1>){1814})|(?=0)).(?:(?=1(?<1>){193815})|(?=0)).(?:(?=1(?<1>){82200})|(?=0)).(?:(?=1(?<1>){59161})|(?=0)).(?:(?=1(?<1>){78620})|(?=0)).(?:(?=1(?<1>){123678})|(?=0)).(?:(?=1(?<1>){147232})|(?=0)).(?:(?=1(?<1>){71457})|(?=0)).(?:(?=1(?<1>){118562})|(?=0)).(?:(?=1(?<1>){129830})|(?=0)).(?:(?=1(?<1>){161841})|(?=0)).(?:(?=1(?<1>){60295})|(?=0)).(?:(?=1(?<1>){165426})|(?=0)).(?:(?=1(?<1>){107485})|(?=0)).(?:(?=1(?<1>){171828})|(?=0)).(?:(?=1(?<1>){166200})|(?=0)).(?:(?=1(?<1>){35124})|(?=0)).(?:(?=1(?<1>){160573})|(?=0)).(?:(?=1(?<1>){7486})|(?=0)).(?:(?=1(?<1>){169279})|(?=0)).(?:(?=1(?<1>){151360})|(?=0)).(?:(?=1(?<1>){6978})|(?=0)).(?:(?=1(?<1>){136003})|(?=0)).(?:(?=1(?<1>){56133})|(?=0)).(?:(?=1(?<1>){8520})|(?=0)).(?:(?=1(?<1>){87436})|(?=0)).(?:(?=1(?<1>){57162})|(?=0)).(?:(?=1(?<1>){197965})|(?=0)).(?:(?=1(?<1>){145230})|(?=0)).(?:(?=1(?<1>){95459})|(?=0)).(?:(?=1(?<1>){180564})|(?=0)).(?:(?=1(?<1>){157850})|(?=0)).(?:(?=1(?<1>){109399})|(?=0)).(?:(?=1(?<1>){191832})|(?=0)).(?:(?=1(?<1>){110223})|(?=0)).(?:(?=1(?<1>){75102})|(?=0)).(?:(?=1(?<1>){140639})|(?=0)).(?:(?=1(?<1>){49504})|(?=0)).(?:(?=1(?<1>){197987})|(?=0)).(?:(?=1(?<1>){52744})|(?=0)).(?:(?=1(?<1>){96615})|(?=0)).(?:(?=1(?<1>){13672})|(?=0)).(?:(?=1(?<1>){73068})|(?=0)).(?:(?=1(?<1>){104814})|(?=0)).(?:(?=1(?<1>){66929})|(?=0)).(?:(?=1(?<1>){23410})|(?=0)).(?:(?=1(?<1>){122686})|(?=0)).(?:(?=1(?<1>){44918})|(?=0)).(?:(?=1(?<1>){101752})|(?=0)).(?:(?=1(?<1>){3961})|(?=0)).(?:(?=1(?<1>){31807})|(?=0)).(?:(?=1(?<1>){54933})|(?=0)).(?:(?=1(?<1>){140096})|(?=0)).(?:(?=1(?<1>){49026})|(?=0)).(?:(?=1(?<1>){5507})|(?=0)).(?:(?=1(?<1>){96132})|(?=0)).(?:(?=1(?<1>){167303})|(?=0)).(?:(?=1(?<1>){57877})|(?=0)).(?:(?=1(?<1>){88461})|(?=0)).(?:(?=1(?<1>){111853})|(?=0)).(?:(?=1(?<1>){126531})|(?=0)).(?:(?=1(?<1>){110998})|(?=0)).(?:(?=1(?<1>){7575})|(?=0)).(?:(?=1(?<1>){7064})|(?=0)).(?:(?=1(?<1>){59289})|(?=0)).(?:(?=1(?<1>){122203})|(?=0)).(?:(?=1(?<1>){175005})|(?=0)).(?:(?=1(?<1>){28025})|(?=0)).(?:(?=1(?<1>){49057})|(?=0)).(?:(?=1(?<1>){6373})|(?=0)).(?:(?=1(?<1>){50084})|(?=0)).(?:(?=1(?<1>){70565})|(?=0)).(?:(?=1(?<1>){75178})|(?=0)).(?:(?=1(?<1>){142763})|(?=0)).(?:(?=1(?<1>){56237})|(?=0)).(?:(?=1(?<1>){32176})|(?=0)).(?:(?=1(?<1>){113073})|(?=0)).(?:(?=1(?<1>){149939})|(?=0)).(?:(?=1(?<1>){16308})|(?=0)).(?:(?=1(?<1>){12725})|(?=0)).(?:(?=1(?<1>){75190})|(?=0)).(?:(?=1(?<1>){54711})|(?=0)).(?:(?=1(?<1>){180664})|(?=0)).(?:(?=1(?<1>){68540})|(?=0)).(?:(?=1(?<1>){93117})|(?=0)).(?:(?=1(?<1>){161781})|(?=0)).(?:(?=1(?<1>){15808})|(?=0)).(?:(?=1(?<1>){130814})|(?=0)).(?:(?=1(?<1>){162379})|(?=0)).(?:(?=1(?<1>){80836})|(?=0)).(?:(?=1(?<1>){149943})|(?=0)).(?:(?=1(?<1>){16841})|(?=0)).(?:(?=1(?<1>){149452})|(?=0)).(?:(?=1(?<1>){182733})|(?=0)).(?:(?=1(?<1>){56270})|(?=0)).(?:(?=1(?<1>){163792})|(?=0)).(?:(?=1(?<1>){34770})|(?=0)).(?:(?=1(?<1>){101843})|(?=0)).(?:(?=1(?<1>){199124})|(?=0)).(?:(?=1(?<1>){129493})|(?=0)).(?:(?=1(?<1>){43990})|(?=0)).(?:(?=1(?<1>){113112})|(?=0)).(?:(?=1(?<1>){71129})|(?=0)).(?:(?=1(?<1>){61402})|(?=0)).(?:(?=1(?<1>){145852})|(?=0)).(?:(?=1(?<1>){98781})|(?=0)).(?:(?=1(?<1>){141790})|(?=0)).(?:(?=1(?<1>){163235})|(?=0)).(?:(?=1(?<1>){110566})|(?=0)).(?:(?=1(?<1>){117737})|(?=0)).(?:(?=1(?<1>){67050})|(?=0)).(?:(?=1(?<1>){68075})|(?=0)).(?:(?=1(?<1>){124047})|(?=0)).(?:(?=1(?<1>){181587})|(?=0)).(?:(?=1(?<1>){125429})|(?=0)).(?:(?=1(?<1>){112118})|(?=0)).(?:(?=1(?<1>){196088})|(?=0)).(?:(?=1(?<1>){25082})|(?=0)).(?:(?=1(?<1>){178684})|(?=0)).(?:(?=1(?<1>){13822})|(?=0)).(?<-1>){10094986}(?(1)(?!))$

हमारे पास पर्याप्त एनपी-पूर्ण समस्याएं नहीं हैं! यहाँ विस्तारित संस्करण है:

^
(?:(?=1(?<1>){5632})|(?=0)).
(?:(?=1(?<1>){79361})|(?=0)).
(?:(?=1(?<1>){188421})|(?=0)).
(?:(?=1(?<1>){164870})|(?=0)).
(?:(?=1(?<1>){63496})|(?=0)).
(?:(?=1(?<1>){116233})|(?=0)).
(?:(?=1(?<1>){112138})|(?=0)).
(?:(?=1(?<1>){47447})|(?=0)).
(?:(?=1(?<1>){85005})|(?=0)).
(?:(?=1(?<1>){17936})|(?=0)).
(?:(?=1(?<1>){108053})|(?=0)).
(?:(?=1(?<1>){88599})|(?=0)).
(?:(?=1(?<1>){91672})|(?=0)).
(?:(?=1(?<1>){178716})|(?=0)).
(?:(?=1(?<1>){199710})|(?=0)).
(?:(?=1(?<1>){166661})|(?=0)).
(?:(?=1(?<1>){190496})|(?=0)).
(?:(?=1(?<1>){184494})|(?=0)).
(?:(?=1(?<1>){199203})|(?=0)).
(?:(?=1(?<1>){116778})|(?=0)).
(?:(?=1(?<1>){78891})|(?=0)).
(?:(?=1(?<1>){192556})|(?=0)).
(?:(?=1(?<1>){24995})|(?=0)).
(?:(?=1(?<1>){1071})|(?=0)).
(?:(?=1(?<1>){192561})|(?=0)).
(?:(?=1(?<1>){108082})|(?=0)).
(?:(?=1(?<1>){1593})|(?=0)).
(?:(?=1(?<1>){26967})|(?=0)).
(?:(?=1(?<1>){197983})|(?=0)).
(?:(?=1(?<1>){97034})|(?=0)).
(?:(?=1(?<1>){86965})|(?=0)).
(?:(?=1(?<1>){60480})|(?=0)).
(?:(?=1(?<1>){149571})|(?=0)).
(?:(?=1(?<1>){100932})|(?=0)).
(?:(?=1(?<1>){40519})|(?=0)).
(?:(?=1(?<1>){173492})|(?=0)).
(?:(?=1(?<1>){80972})|(?=0)).
(?:(?=1(?<1>){115790})|(?=0)).
(?:(?=1(?<1>){29265})|(?=0)).
(?:(?=1(?<1>){91730})|(?=0)).
(?:(?=1(?<1>){173140})|(?=0)).
(?:(?=1(?<1>){52821})|(?=0)).
(?:(?=1(?<1>){176726})|(?=0)).
(?:(?=1(?<1>){170211})|(?=0)).
(?:(?=1(?<1>){150105})|(?=0)).
(?:(?=1(?<1>){23131})|(?=0)).
(?:(?=1(?<1>){81503})|(?=0)).
(?:(?=1(?<1>){77412})|(?=0)).
(?:(?=1(?<1>){106086})|(?=0)).
(?:(?=1(?<1>){4284})|(?=0)).
(?:(?=1(?<1>){142610})|(?=0)).
(?:(?=1(?<1>){167534})|(?=0)).
(?:(?=1(?<1>){190577})|(?=0)).
(?:(?=1(?<1>){147731})|(?=0)).
(?:(?=1(?<1>){133748})|(?=0)).
(?:(?=1(?<1>){194750})|(?=0)).
(?:(?=1(?<1>){49257})|(?=0)).
(?:(?=1(?<1>){49274})|(?=0)).
(?:(?=1(?<1>){120767})|(?=0)).
(?:(?=1(?<1>){172668})|(?=0)).
(?:(?=1(?<1>){24703})|(?=0)).
(?:(?=1(?<1>){108160})|(?=0)).
(?:(?=1(?<1>){60546})|(?=0)).
(?:(?=1(?<1>){56963})|(?=0)).
(?:(?=1(?<1>){30340})|(?=0)).
(?:(?=1(?<1>){95368})|(?=0)).
(?:(?=1(?<1>){59530})|(?=0)).
(?:(?=1(?<1>){53388})|(?=0)).
(?:(?=1(?<1>){14477})|(?=0)).
(?:(?=1(?<1>){28302})|(?=0)).
(?:(?=1(?<1>){182927})|(?=0)).
(?:(?=1(?<1>){59024})|(?=0)).
(?:(?=1(?<1>){146200})|(?=0)).
(?:(?=1(?<1>){153746})|(?=0)).
(?:(?=1(?<1>){39571})|(?=0)).
(?:(?=1(?<1>){134293})|(?=0)).
(?:(?=1(?<1>){158362})|(?=0)).
(?:(?=1(?<1>){170139})|(?=0)).
(?:(?=1(?<1>){182940})|(?=0)).
(?:(?=1(?<1>){7327})|(?=0)).
(?:(?=1(?<1>){143525})|(?=0)).
(?:(?=1(?<1>){119464})|(?=0)).
(?:(?=1(?<1>){82090})|(?=0)).
(?:(?=1(?<1>){170667})|(?=0)).
(?:(?=1(?<1>){49522})|(?=0)).
(?:(?=1(?<1>){69806})|(?=0)).
(?:(?=1(?<1>){15535})|(?=0)).
(?:(?=1(?<1>){16049})|(?=0)).
(?:(?=1(?<1>){163358})|(?=0)).
(?:(?=1(?<1>){181876})|(?=0)).
(?:(?=1(?<1>){58044})|(?=0)).
(?:(?=1(?<1>){16062})|(?=0)).
(?:(?=1(?<1>){39616})|(?=0)).
(?:(?=1(?<1>){31425})|(?=0)).
(?:(?=1(?<1>){94404})|(?=0)).
(?:(?=1(?<1>){86848})|(?=0)).
(?:(?=1(?<1>){16589})|(?=0)).
(?:(?=1(?<1>){195280})|(?=0)).
(?:(?=1(?<1>){199377})|(?=0)).
(?:(?=1(?<1>){43731})|(?=0)).
(?:(?=1(?<1>){67534})|(?=0)).
(?:(?=1(?<1>){106198})|(?=0)).
(?:(?=1(?<1>){54999})|(?=0)).
(?:(?=1(?<1>){52952})|(?=0)).
(?:(?=1(?<1>){125828})|(?=0)).
(?:(?=1(?<1>){169691})|(?=0)).
(?:(?=1(?<1>){184542})|(?=0)).
(?:(?=1(?<1>){177888})|(?=0)).
(?:(?=1(?<1>){43233})|(?=0)).
(?:(?=1(?<1>){127203})|(?=0)).
(?:(?=1(?<1>){116518})|(?=0)).
(?:(?=1(?<1>){117990})|(?=0)).
(?:(?=1(?<1>){67815})|(?=0)).
(?:(?=1(?<1>){62202})|(?=0)).
(?:(?=1(?<1>){165611})|(?=0)).
(?:(?=1(?<1>){197356})|(?=0)).
(?:(?=1(?<1>){29933})|(?=0)).
(?:(?=1(?<1>){90862})|(?=0)).
(?:(?=1(?<1>){90863})|(?=0)).
(?:(?=1(?<1>){149232})|(?=0)).
(?:(?=1(?<1>){61681})|(?=0)).
(?:(?=1(?<1>){137970})|(?=0)).
(?:(?=1(?<1>){90357})|(?=0)).
(?:(?=1(?<1>){47351})|(?=0)).
(?:(?=1(?<1>){172509})|(?=0)).
(?:(?=1(?<1>){78293})|(?=0)).
(?:(?=1(?<1>){66303})|(?=0)).
(?:(?=1(?<1>){66262})|(?=0)).
(?:(?=1(?<1>){158471})|(?=0)).
(?:(?=1(?<1>){5676})|(?=0)).
(?:(?=1(?<1>){127242})|(?=0)).
(?:(?=1(?<1>){51979})|(?=0)).
(?:(?=1(?<1>){162060})|(?=0)).
(?:(?=1(?<1>){27405})|(?=0)).
(?:(?=1(?<1>){153874})|(?=0)).
(?:(?=1(?<1>){150291})|(?=0)).
(?:(?=1(?<1>){1814})|(?=0)).
(?:(?=1(?<1>){193815})|(?=0)).
(?:(?=1(?<1>){82200})|(?=0)).
(?:(?=1(?<1>){59161})|(?=0)).
(?:(?=1(?<1>){78620})|(?=0)).
(?:(?=1(?<1>){123678})|(?=0)).
(?:(?=1(?<1>){147232})|(?=0)).
(?:(?=1(?<1>){71457})|(?=0)).
(?:(?=1(?<1>){118562})|(?=0)).
(?:(?=1(?<1>){129830})|(?=0)).
(?:(?=1(?<1>){161841})|(?=0)).
(?:(?=1(?<1>){60295})|(?=0)).
(?:(?=1(?<1>){165426})|(?=0)).
(?:(?=1(?<1>){107485})|(?=0)).
(?:(?=1(?<1>){171828})|(?=0)).
(?:(?=1(?<1>){166200})|(?=0)).
(?:(?=1(?<1>){35124})|(?=0)).
(?:(?=1(?<1>){160573})|(?=0)).
(?:(?=1(?<1>){7486})|(?=0)).
(?:(?=1(?<1>){169279})|(?=0)).
(?:(?=1(?<1>){151360})|(?=0)).
(?:(?=1(?<1>){6978})|(?=0)).
(?:(?=1(?<1>){136003})|(?=0)).
(?:(?=1(?<1>){56133})|(?=0)).
(?:(?=1(?<1>){8520})|(?=0)).
(?:(?=1(?<1>){87436})|(?=0)).
(?:(?=1(?<1>){57162})|(?=0)).
(?:(?=1(?<1>){197965})|(?=0)).
(?:(?=1(?<1>){145230})|(?=0)).
(?:(?=1(?<1>){95459})|(?=0)).
(?:(?=1(?<1>){180564})|(?=0)).
(?:(?=1(?<1>){157850})|(?=0)).
(?:(?=1(?<1>){109399})|(?=0)).
(?:(?=1(?<1>){191832})|(?=0)).
(?:(?=1(?<1>){110223})|(?=0)).
(?:(?=1(?<1>){75102})|(?=0)).
(?:(?=1(?<1>){140639})|(?=0)).
(?:(?=1(?<1>){49504})|(?=0)).
(?:(?=1(?<1>){197987})|(?=0)).
(?:(?=1(?<1>){52744})|(?=0)).
(?:(?=1(?<1>){96615})|(?=0)).
(?:(?=1(?<1>){13672})|(?=0)).
(?:(?=1(?<1>){73068})|(?=0)).
(?:(?=1(?<1>){104814})|(?=0)).
(?:(?=1(?<1>){66929})|(?=0)).
(?:(?=1(?<1>){23410})|(?=0)).
(?:(?=1(?<1>){122686})|(?=0)).
(?:(?=1(?<1>){44918})|(?=0)).
(?:(?=1(?<1>){101752})|(?=0)).
(?:(?=1(?<1>){3961})|(?=0)).
(?:(?=1(?<1>){31807})|(?=0)).
(?:(?=1(?<1>){54933})|(?=0)).
(?:(?=1(?<1>){140096})|(?=0)).
(?:(?=1(?<1>){49026})|(?=0)).
(?:(?=1(?<1>){5507})|(?=0)).
(?:(?=1(?<1>){96132})|(?=0)).
(?:(?=1(?<1>){167303})|(?=0)).
(?:(?=1(?<1>){57877})|(?=0)).
(?:(?=1(?<1>){88461})|(?=0)).
(?:(?=1(?<1>){111853})|(?=0)).
(?:(?=1(?<1>){126531})|(?=0)).
(?:(?=1(?<1>){110998})|(?=0)).
(?:(?=1(?<1>){7575})|(?=0)).
(?:(?=1(?<1>){7064})|(?=0)).
(?:(?=1(?<1>){59289})|(?=0)).
(?:(?=1(?<1>){122203})|(?=0)).
(?:(?=1(?<1>){175005})|(?=0)).
(?:(?=1(?<1>){28025})|(?=0)).
(?:(?=1(?<1>){49057})|(?=0)).
(?:(?=1(?<1>){6373})|(?=0)).
(?:(?=1(?<1>){50084})|(?=0)).
(?:(?=1(?<1>){70565})|(?=0)).
(?:(?=1(?<1>){75178})|(?=0)).
(?:(?=1(?<1>){142763})|(?=0)).
(?:(?=1(?<1>){56237})|(?=0)).
(?:(?=1(?<1>){32176})|(?=0)).
(?:(?=1(?<1>){113073})|(?=0)).
(?:(?=1(?<1>){149939})|(?=0)).
(?:(?=1(?<1>){16308})|(?=0)).
(?:(?=1(?<1>){12725})|(?=0)).
(?:(?=1(?<1>){75190})|(?=0)).
(?:(?=1(?<1>){54711})|(?=0)).
(?:(?=1(?<1>){180664})|(?=0)).
(?:(?=1(?<1>){68540})|(?=0)).
(?:(?=1(?<1>){93117})|(?=0)).
(?:(?=1(?<1>){161781})|(?=0)).
(?:(?=1(?<1>){15808})|(?=0)).
(?:(?=1(?<1>){130814})|(?=0)).
(?:(?=1(?<1>){162379})|(?=0)).
(?:(?=1(?<1>){80836})|(?=0)).
(?:(?=1(?<1>){149943})|(?=0)).
(?:(?=1(?<1>){16841})|(?=0)).
(?:(?=1(?<1>){149452})|(?=0)).
(?:(?=1(?<1>){182733})|(?=0)).
(?:(?=1(?<1>){56270})|(?=0)).
(?:(?=1(?<1>){163792})|(?=0)).
(?:(?=1(?<1>){34770})|(?=0)).
(?:(?=1(?<1>){101843})|(?=0)).
(?:(?=1(?<1>){199124})|(?=0)).
(?:(?=1(?<1>){129493})|(?=0)).
(?:(?=1(?<1>){43990})|(?=0)).
(?:(?=1(?<1>){113112})|(?=0)).
(?:(?=1(?<1>){71129})|(?=0)).
(?:(?=1(?<1>){61402})|(?=0)).
(?:(?=1(?<1>){145852})|(?=0)).
(?:(?=1(?<1>){98781})|(?=0)).
(?:(?=1(?<1>){141790})|(?=0)).
(?:(?=1(?<1>){163235})|(?=0)).
(?:(?=1(?<1>){110566})|(?=0)).
(?:(?=1(?<1>){117737})|(?=0)).
(?:(?=1(?<1>){67050})|(?=0)).
(?:(?=1(?<1>){68075})|(?=0)).
(?:(?=1(?<1>){124047})|(?=0)).
(?:(?=1(?<1>){181587})|(?=0)).
(?:(?=1(?<1>){125429})|(?=0)).
(?:(?=1(?<1>){112118})|(?=0)).
(?:(?=1(?<1>){196088})|(?=0)).
(?:(?=1(?<1>){25082})|(?=0)).
(?:(?=1(?<1>){178684})|(?=0)).
(?:(?=1(?<1>){13822})|(?=0)).
(?<-1>){10094986}
(?(1)(?!))
$

यदि प्रत्येक अंक 1 पाया जाता है, तो प्रत्येक (?:(?=1(?<1>){n})|(?=0)).पंक्ति nसमूह में खाली स्ट्रिंग को धकेलती है 1और यदि 0पाया जाता है तो कुछ भी नहीं करती है। (?<-1>){10094986}(?(1)(?!))फिर जाँचता है कि समूह 1 के अंत तक खाली स्ट्रिंग की कुल संख्या 10094986 है। इसलिए हमारा लक्ष्य संख्याओं का एक सबसेट ढूंढना है, जैसे कि उनका कुल योग 10094986 है। यह वास्तव में सबसेट समस्या है, जो एक विशेष मामला है दस्ता समस्या, और एनपी-पूर्ण है।

पर परीक्षण किया गया रेगेक्स हीरो (इस एक के लिए रेगेक्स स्टॉर्म बार आउट) ।


2
मैच: 01111111111111111111111011001111111111011111111111111111111101111111111 11111111111111111111011111111000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000 (उन रिक्त स्थान को हटा दें)। गैर मैच: KnapsackAlgorithm। मेरे उबंटू मशीन पर सिल्वरलाइट स्थापित करना आसान नहीं है। लेकिन इसने कुछ अन्य परीक्षक पर काम किया।
jimmy23013

@ user23013 आह उफ़, मैं भूल गया था कि सिल्वरलाइट की आवश्यकता थी। लेकिन ईमानदारी से, या तो मैं बदकिस्मत हूं या बहुत सारे समाधान हैं, क्योंकि वहां अंत में 0s की एक बेवकूफ लंबी श्रृंखला है। फिर से मुझे पहले 32-बिट
इंट्रस्ट

मेरे पास पहले से ही मेरे नवीनतम उत्तर में 700+ बिट पूर्णांक थे!
jimmy23013

@ user23013 और आप हमें बता रहे हैं कि इसे कैसे करें? इतना मतलबी! : पी
Sp3000

2
कारक के पूर्णांक 1536 बिट है।
jimmy23013

4

.NET स्वाद (52506 बाइट्स)

सबसेट योग, डीलक्स संस्करण।

रेगेक्स यहाँ , विस्तारित संस्करण यहाँ , RegExLib और रेगेक्स हीरो पर परीक्षण किया गया


मैच: 1000010001000000001101011000001101110101001010011101000101010011011101000001010101001000010010000111011101100101001101001111000111010101100000101000101010110001010101001100100001110010001101010101100010110011000000110110000000011111101000001000011111100010

मिसमैच: Huzzah for NP-complete regexes

यह रेगेक्स एक सबसे बड़ी सबसे बड़ी समस्या है, और डेटा स्टोर करने के लिए 16 समूहों का उपयोग करता है। 1स्ट्रिंग में प्रत्येक 16 10-बिट संख्याओं का प्रतिनिधित्व करता है, जो एक साथ 160-बिट पूर्णांक का प्रतिनिधित्व करते हैं। रेगेक्स की अंतिम कुछ पंक्तियाँ समूहों में मान को ले जाती हैं ताकि समूह 2-16 1023 तक जा सकें (जैसे 1 * 1023 + 1024 2 * 1023 + 1), अन्यथा अन्यथा हम केवल 16 समकालिक मिनी सबसेट हल करेंगे एक बड़ी एक के विपरीत समस्याओं का योग।


72 घंटे के माध्यम से इसे बनाने के लिए बधाई! अब आप कुंजी को प्रकट करके क्रैकिंग के खिलाफ अपना जवाब लॉक कर सकते हैं। जब तक आप नहीं करते, तब तक उत्तर को क्रैक किया जा सकता है।
मार्टिन एंडर

4

.NET स्वाद, 53,884 बाइट्स [सुरक्षित]

GnuPG द्वारा निर्मित!और pgpdump द्वारा निकाला जाता है। यह 1536 बिट है क्योंकि ऑनलाइन परीक्षक पर लंबे समय तक संस्करण विफल रहे।

रेगेक्स यहाँ है: http://pastebin.com/PkJnj9ME

RegExLib पर परीक्षण किया गया (चयनित कोई विकल्प नहीं है)। मुझे आशा है कि मैंने उनके लिए बहुत अधिक परेशानी का कारण नहीं बनाया।

आप शायद आसान संस्करण को क्रैक करना चाहते हैं पहले । यह एक के रूप में एक ही है, एक बहुत छोटी कुंजी होने के अलावा।

आप शायद यह संख्या भी चाहते हैं:

1877387013349538768090205114842510626651131723107399383794998450806739516994144298310401108806926034240658300213548103711527384569076779151468208082508190882390076337427064709559437854062111632001332811449146722382069400055588711790985185172254011431483115758796920145490044311800185920322455262251745973830227470485279892907738203417793535991544580378895041359393212505410554875960037474608732567216291143821804979045946285675144158233812053215704503132829164251

चाबी

मैच:

Ëòčĵċsïݲ¤ėGâĥÓŧÿÃiTüū&0EĚĵŒR@bĵ¤¿Ĉ=ķüÙļÞďYaŃīŲĢŪÕďųïyĘŊŢĝĪĘŠćĢmtŠîĽþĽłŶāĨĩģTő!ĺw=aŧïųţĨíœą¸Ëč!,ĵţ¨ŌąŜ7ć<ůū¹"VCæ>õêqKËĖ¡ôÕÂúëdčÜÇĺřGĝ¢ÈòTdĩŤŭi§aćŎŭųä«´3ĚΦîŇĬÒÕ¥ńü½å±ì³Jõ«D>ìYũʼn5öķ@ŪĠďàÂIĭųė!

गैर मैच:

1111111111111111

प्रमुख संख्या:

1332079940234179614521970444786413763737753518438170921866494487346327879385305027126769158207767221820861337268140670862294914465261588406119592761408774455338383491427898155074772832852850476306153369461364785463871635843192956321
1409365126404871907363160248446313781336249368768980464167188493095028723639124224991540391841197901143131758645183823514744033123070116823118973220350307542767897614254042472660258176592286316247065295064507580468562028846326382331

स्पष्टीकरण आसान संस्करण में है

जनरेटर स्क्रिप्ट (CJam में)

'~),'!i>"+.()?*\\[]{|}^$/,^-:#"-
'ǝ,'¡i>173c-+289<:T;

95:F;
95:G;

"
^
(?=["T",]{"FG+)`"}$)
(?=.{"F`"},)
(?!.*,.*,)
(?:
    (?(X)
        (?<-X>)
        (?(L)(?<-L>)(?<l>)|){16}
    |
        (?:
            "
            [T289,]z
            {[~17md["(?<l>){"\'}]["(?<L>){"@'}]]}%'|*
            "
        )
        (?<X>)
    )
    (?=.*,
        (?:
            (?(Y)
                (?<-Y>)
                (?(R)(?<-R>)(?<r>)|){16}
            |
                (?:
                    "
                    [T289,]z
                    {[~17md["(?<r>){"\'}]["(?<R>){"@'}]]}%'|*
                    "
                )
                (?<Y>)
            )

            (?(l)
                (?<-l>)(?<x>)
                (?(r)(?<-r>)(?<y>)(?<v>)|){16}
                (?(y)(?<-y>)(?<r>)|){16}
            |){16}
            (?(x)(?<-x>)(?<l>)|){16}

            (?(p)(?<-p>)(?<s>)(?<z>)|){"F2*(`"}
            (?(z)(?<-z>)(?<p>)|){"F2*(`"}
            (?(q)(?<-q>)(?<s>)(?<z>)|){"G2*(`"}
            (?(z)(?<-z>)(?<q>)|){"G2*(`"}
            "
            "
            (?(s)
                (?<-s>)
            "FG+(2**
            "
                (?(v)(?<-v>)(?<a"FG+(2*`">)|){256}
            "
            ["
            |
                (?(v)(?<-v>)(?<a"">)|){256}
            )
            "]aFG+(2*,W%m*{~\~@`\}/
            "
            (?(r)(?<-r>)|){16}
            (?<q>)
        ){"G2*`"}
        (?<-q>){"G2*`"}
    )
    (?(l)(?<-l>)|){16}
    (?<p>)
){"F2*`"},

"
[
l~17bW%_,FG+2*\- 0a*+
FG+2*,
]z
{
~:A`:B;:C;
"
(?<-a"B">){"C`"}
(?(a"B")(?<-a"B">){17}(?<a"A)`">)|){4100}
(?(a"B")(?!)|)"
}/

]:+N9c+-

इनपुट उपरोक्त संख्या होनी चाहिए।

आपके द्वारा किए जाने के बाद, समाधान इस कार्यक्रम द्वारा उत्पन्न किया जा सकता है:

'~),'!i>"+.()?*\\[]{|}^$/,^-:#"-
'ǝ,'¡i>173c-+289<:T;

95:F;
95:G;

{
r~289bW%_,FG:F;\- 0a*+
{T=}%
}2*',\

इनपुट दो पूर्णांक होना चाहिए।


बहुत बुरा। RegExLib नीचे है। मुझे लगता है कि लोगों को सिल्वरलाइट या स्थानीय परीक्षक का बेहतर उपयोग करना चाहिए। लेकिन मैं उनका परीक्षण नहीं कर सकता।
jimmy23013

IIRc, RegexHero सिल्वरलाइट का उपयोग करके ब्राउज़र में .NET परीक्षक है।
n --h'a̷̭̿h̸̡̅ẗ̵̨́d̷̰̀ĥ̷̳

बड़े पूर्णांकों के बारे में एक अन्य विचार यह है कि 200 के करीब उत्पाद मॉड प्राइम संख्याओं की गणना की जाए। यह तेज होना चाहिए। लेकिन कोड बहुत लंबा होगा और मैं पूर्णांक कारक जवाब में ऐसा नहीं करने जा रहा हूं।
jimmy23013

72 घंटे के माध्यम से इसे बनाने के लिए बधाई! अब आप कुंजी को प्रकट करके क्रैकिंग के खिलाफ अपना जवाब लॉक कर सकते हैं। जब तक आप नहीं करते, तब तक उत्तर को क्रैक किया जा सकता है।
मार्टिन एंडर

4

PHP, 395 बाइट्स [ नेनेओनो द्वारा फटा ]

^( *)( *)( *)(['.-])((?!\4)(?4)+?)((?!\4|\5)(?4)++)\1\3whale
(?=.(.))\6.\7\4(?!\4|\6)([_\/])\3(?!(?11))\8\2(?=\2)\3\1_((?=\4+.).\5(?!\6)\5)(?!.?')\7\4
(?=.\7)\6.([,`])\3{2}(?=.((?!\8)[_\/])\11)\Q(_\E.\4{2}(?!\.)\5((?!\10)(?10)(?!\4+|\5|\6))\1\3{3}(\\)
(\3{3})\13\2{2}\1{1}\3+(?<=\S {10})\4\1\3\|
\1(?=\12)(?12)(?!`,)\10\4(\11{2})\4\14\10\15\9\8
\14{2}(?=\6)['-]\4(?<!-)\11\8\11\4\6\11\15\.-|(?!)

मेरी अंतिम प्रविष्टि से बेहतर आरा।

नोट: मिलान कुंजी बहुस्तरीय है, प्रत्येक पंक्ति को नई रेखा वर्ण द्वारा अलग किया गया है \n। कुछ ASCII कला का पुनर्निर्माण करें!

यहाँ एक रेगेक्स डेमो है


3
मैच : 202e272d207768616c650a2d3a3a2e2f202f205f2e27273a2e0a2d3a2c2020285f5f2e2e27602020205c0a2020205c202020202020202020202e207c0a602c2e5f5f2e2020202c5f5f2e27272f0a2020202020202d2e5f2f5f2e2d5f5f5f2e2d(हेक्स-एन्कोडेड)। गैर मैच : IDon'tThinkIGotTheRightPicture। प्रमाण कार्यक्षेत्र: regex101.com/r/gF9pU0/1
nneonneo

1
@nneonneo वाह! आपने इसे हल किया: D लेकिन सही चित्र यहाँ है: regex101.com/r/oM9rC4/1
Unihedron

1
हाँ, मुझे लगा कि मेरे पास पर्याप्त स्थान नहीं हैं (लेकिन रेगेक्स ने बहुत दृढ़ता से जांच नहीं की है)। और, ऐसा लगता है कि मैंने .-'शुरू में ही परस्पर संबंध स्थापित कर लिया है .'-
Hindsight

3

पर्ल स्वाद, 97 [फटा]

मुझे डर है कि यह महत्वपूर्ण लंबाई सीमा के कारण बहुत आसान होने जा रहा है।

^([^,]+),(?!\1)([^,]+),(?!\1|\2,)([^,]+),(?!\1|(?:\2|\3),)([^,]+),(?=.\2+$)(?=.\3+$)(?=.\4+$)\1+$

यदि आपको लगता है कि आपने इसके पीछे का विचार खोज लिया है, तो लंबे संस्करण का प्रयास करें (चुनौती का हिस्सा नहीं):

^((?:[^,]{3})+),(?!\1)([^,]+),(?!\1|\2,)([^,]+),(?!\1|(?:\2|\3),)([^,]+),(?!\1|(?:\2|\3|\4),)([^,]+),(?!\1|(?:\2|\3|\4|\5),)([^,]+),(?!\1|(?:\2|\3|\4|\5|\6),)([^,]+),(?!\1|(?:\2|\3|\4|\5|\6|\7),)([^,]+),(?=.\2+$)(?=.\3+$)(?=.\4+$)(?=.\5+$)(?=.\6+$)(?=.\7+$)(?=.\8+$)\1+$

1
मैच: aaaaaaa,a,aa,aaa,aaaaaaa। गैर मैच: aaaabaaacaaadaaa
jimmy23013

लंबा संस्करण: मैच: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,a,aa,(इन वर्णों को aaaa,aaaaaaa,aaaaaaaa,aaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaa,हटा दें ) (इन वर्णों को हटा दें) aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa। गैर-मैच:aaaabaaacaaadaaa
जिम्मी 23013

@ user23013: लघु संस्करण सही है! मेरा मतलब था कि कैप्चर समूहों का कम से कम दो अक्षर लंबा होना चाहिए, जिसने कुंजी को थोड़ा लंबा कर दिया होगा, लेकिन मैं इसे बदलना भूल गया: पी अब लंबा संस्करण गलत है।
एल

जब मैंने उन्हें पोस्ट किया तो इस साइट ने कुछ अदृश्य विशेष वर्ण जोड़े। मुझे लगता है कि अब यह तय हो गया है। (बिना (remove these characters)।)
jimmy23013

@ user23013 हाँ, यह एक मैच है। मैंने वास्तव में इसके लिए इतना आसान होने की योजना नहीं बनाई थी: पी
एल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.