डक्ट टेप मातृ दिवस को ठीक कर सकता है


54

डक्ट टेप के आधार पर किसी भी प्रश्न को ठीक किया जा सकता है , यह बहुत व्यापक था, बहुत ही समान नियमों के साथ। केवल इस समय उद्देश्य बहुत विशिष्ट है:

चुनौती

आपका मिशन एक प्रोग्राम बनाना है जो प्रदर्शित करता है hello mom- कभी भी कोड की एक पंक्ति लिखे बिना।

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


नियम

  1. आपको अपने उत्तर में उपयोग किए गए प्रश्नों / उत्तरों के लिंक शामिल करने होंगे।
  2. आप निम्न अपवादों के साथ, आपके द्वारा पाए गए कोड को संशोधित नहीं कर सकते हैं:

    ए। आप चर, कार्यों और विधियों का नाम बदल सकते हैं। (इसका मतलब यह नहीं है कि आप एक विधि मंगलाचरण को बदल सकते हैं , बदलकर कह scanner.nextInt()सकते हैं scanner.nextLine()और दावा कर रहे हैं कि आप एक विधि नाम बदल रहे हैं। परिवर्तन एक ही इकाई की परिभाषा या संदर्भ में होना चाहिए।) समाधान अभी भी काम करना चाहिए अगर चर, फ़ंक्शन या विधियों को फिर से नाम दिया जाएगा, इसलिए hello momचर नाम के रूप में शामिल करने के लिए कोड का नाम बदलना गिनती नहीं है।

    ख। आप उचित रूप से इंडेंटेशन को समायोजित कर सकते हैं।

    सी। आप मान सकते हैं कि काम करने के लिए कोड स्निपेट्स के लिए उचित मॉड्यूल लोड किए गए हैं। (उदाहरण के लिए, importजावा और पायथन के usingकथन, C # और C ++ के कथन, और सभी भाषाओं में उनके समतुल्य) यदि कोड स्निपेट में आपके लिए imports शामिल है , तो आप उन्हें कोड के शीर्ष पर ले जा सकते हैं।

    घ। यदि भाषा को निष्पादित करने के लिए कोड को किसी प्रकार की विधि निकाय में होना आवश्यक है (जैसे, public static void main(String[] args)जावा के लिए, static int Main(string[] args)C # के लिए, और इसी तरह), तो आप उचित विधि में अपने कोड को लपेट सकते हैं। लेकिन उस मुख्य विधि की सामग्री को अनमोड होना चाहिए।

  3. आपको प्रदर्शन किए गए किसी भी चर / विधि / फ़ंक्शन / वर्ग का नाम बदलने की स्पष्ट सूची प्रदान करनी चाहिए।

  4. आप स्निपेट के स्निपेट नहीं ले सकते (यदि आप किसी पोस्ट से कोड ब्लॉक लेते हैं, तो आप पूरी बात ले लेते हैं)
  5. उन लोगों के लिए कोड का एक संक्षिप्त विवरण प्रदान करें जो आपके द्वारा उपयोग की जा रही भाषा के साथ अंतरंग नहीं हैं।
  6. इस चुनौती को शुरू करने से पहले आपको पोस्ट किए गए स्निपेट्स का उपयोग करना होगा।
  7. लोकप्रियता की लड़ाई, इसलिए सबसे ज्यादा जीतता है जीत!

समयसीमा

मैं उस सबमिशन को स्वीकार करूंगा जिसमें मातृ दिवस (UTC-11 टाइमज़ोन की मध्यरात्रि) के अंत के आसपास सबसे अधिक वोट हैं, लेकिन बाद में प्रस्तुतियाँ अभी भी वोट प्राप्त कर सकती हैं।


1
@iamkrillin यह किसी भी हैलो वर्ल्ड कोड को हैलो मॉम कोड में स्थानांतरित करने के लिए काफी तुच्छ बना देगा। चर का नाम बदलने के बारे में नियम में अंतिम पंक्ति पर भी ध्यान दें।
डेनिस जहरुद्दीन

23
7. आपको इस चुनौती से पहले पोस्ट किए गए स्निपेट्स का उपयोग करना चाहिए । (मैं ऐसा करने वाले कोड के साथ स्ट्रिंग से संबंधित सवालों के एक गुच्छा का जवाब दे सकता हूं)
जियोबिट्स

1
क्या आप दूसरे स्निपेट के अंदर कोड डाल सकते हैं?
डुर्रोन 597

3
@ आप जानते हैं, अन्य देश हैं ...
मार्टिन

1
@JeffGohlke या एक mया oएक शाब्दिक के रूप में। या एक स्निपेट जो कोड बिंदुओं को अक्षरों और स्निपेट में परिवर्तित करता है जो आपको सही कोड बिंदु की गणना करने देता है। प्रतिबंध वास्तव में यहाँ रचनात्मकता को प्रोत्साहित करता है। यह वही है जो मैंने आपकी अपनी चुनौती पर उल्लेख किया है, और मैंने गुंजाइश को सीमित करने का सुझाव क्यों दिया (और बाद में इसे बंद क्यों किया गया)।
मार्टिन एंडर

जवाबों:


60

Brainfuck

हे भगवान मैंने खुद से ऐसा क्यों किया?

कहीं न कहीं किसी उत्तर में कोड स्निपेट के रूप में प्रत्येक बीएफ प्रतीक को खोजने के लिए वास्तव में संभव है। दिलचस्प बिट अन्य लोगों के कोड के बिट्स को एक साथ जोड़ रहा था, प्रत्येक बीएफ निर्देशों के एक ब्लॉक का प्रतिनिधित्व करता था। दुर्भाग्य से मूल रूप से कोई बेजोड़ नहीं है [और ]वहां से प्रतीक निकलते हैं, इसलिए मुझे उन लोगों के लिए थोड़ा धोखा देना पड़ा, और मुझे एक फंकी हास्केल स्निपेट से बहुत अधिक लाभ प्राप्त करना पड़ा, जिसमें प्लसस का एक गुच्छा था। वहाँ शायद वहाँ दूसरों रहे हैं। इसके अलावा, यहाँ कुछ फ्रेंकेनस्टेन कोड है:

byte x = 1;
byte y = 2;
byte z = x + y;   // ERROR: Cannot implicitly convert type 'int' to 'byte'
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
[
int a = (b > 10) ? some_value                 
                 : another_value;
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
int a = (b > 10) ? c : d;
byte x = 1;
byte y = 2;
byte z = x + y;   // ERROR: Cannot implicitly convert type 'int' to 'byte'
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
?"<<-"
]
exec >{space}> (command)
byte z = (int) x + (int) y;
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
find . -type f -print -exec cat {} \;
git reset .
byte x = 1;
byte y = 2;
byte z = x + y;   // ERROR: Cannot implicitly convert type 'int' to 'byte'
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
System.out.print("B");
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
fatal: Failed to resolve 'HEAD' as a valid ref.
while read p; do 
echo $p
done < $filename
static HMODULE hMod = NULL;
  static bool once = false;
  if (!once++)
    hMod = LoadLibrary("xxx");
 if (originalValue.length > size) {
static HMODULE hMod = NULL;
  static bool once = true;
  if (once--)
    hMod = LoadLibrary("xxx");
$ cd /usr/local/wherever
$ grep timmy accounts.txt
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub}
ls -ld $(find .)
git commit --amend -m "New commit message"
wget -q -O - $line 
git rebase --interactive $parent_of_flawed_commit
find . -type f -user 'user1' -maxdepth 1

और, जब से मेरी मां ब्रिटिश है, आउटपुट काफी सरल है hello mum

ग्रंथ सूची:

https://stackoverflow.com/questions/17845014/what-does-the-regex-mean

[और ], माफी के साथ

https://stackoverflow.com/a/21460161/2581168

find . -type f -print -exec cat {} \;

https://stackoverflow.com/questions/6161328/what-exactly-does-this-do-exec-command

exec >{space}> (command)

https://stackoverflow.com/questions/20130538/what-is-in-haskell

addop = do {symb "+"; return Op Add}  +++ do {symb "-"; return Op Sub} 

https://stackoverflow.com/questions/21947452/why-is-printing-b-dramatically-slower-than-printing

System.out.print("B");

https://stackoverflow.com/questions/941584/byte-byte-int-why

byte x = 1;
byte y = 2;
byte z = x + y;   // ERROR: Cannot implicitly convert type 'int' to 'byte'

https://stackoverflow.com/a/160295/2581168

int a = (b > 10) ? c : d;

तथा

int a = (b > 10) ? some_value                 
                 : another_value;

https://stackoverflow.com/questions/13273002/what-does-mean-in-r

?"<<-"

https://stackoverflow.com/questions/3450420/bool-operator-and

static HMODULE hMod = NULL;
static bool once = false;
if (!once++)
    hMod = LoadLibrary("xxx");

तथा

static HMODULE hMod = NULL;
static bool once = false;
if (!once--)
    hMod = LoadLibrary("xxx");

https://stackoverflow.com/questions/22776085/in-which-case-will-size-originalvalue-length-in-string-constructor-string

if (originalValue.length > size) {

https://stackoverflow.com/questions/3797795/does-mean-stdout-in-bash

wget -q -O - $line 

https://stackoverflow.com/questions/179123/how-do-i-edit-an-incorrect-commit-message-in-git/179147#179147

git commit --amend -m "New commit message"

तथा

git rebase --interactive $parent_of_flawed_commit

https://stackoverflow.com/questions/14763413/grep-ls-output-across-tabs/14763499#14763499

find . -type f -user 'user1' -maxdepth 1

https://stackoverflow.com/questions/945288/saving-current-directory-to-bash-history

$ cd /usr/local/wherever
$ grep timmy accounts.txt

https://stackoverflow.com/questions/348170/undo-git-add-before-commit/682343#682343

fatal: Failed to resolve 'HEAD' as a valid ref.

त्रुटि संदेश कोड नहीं हैं। हालांकि उस एक को ठीक करना आसान होना चाहिए
डुर्रोन 597

6
इसके अलावा, संभवतः इस बात पर भी निर्णय होना चाहिए कि कोड स्निपेट को उत्तर की भाषा में होना चाहिए या नहीं। लेकिन अच्छी तरह से, परवाह किए बिना
Durron597

@ durron597, सच है, लेकिन मुझे वहां पर त्रुटि संदेश पसंद है। वहाँ एक है git add .अगर ओपी इसके साथ एक समस्या है एक ही पोस्ट में।
यम्बर्ट

वहाँ कुछ J उत्तर हो सकते हैं जो बेजोड़ हैं [], लेकिन जो अक्सर .शामिल होते हैं। stackoverflow.com/questions/21898628/…
ʇǝɥʇıʎu Mays

1
यह कमाल का है। +1000
ऐस्टर

33

जावा

इनसे शुरू करें:

https://stackoverflow.com/a/19509316/1768232

String myStr = "hello";
String myStr1 = "hello";

https://stackoverflow.com/a/8341513/1768232

String[] history = new String[] { "hey", "you", "Mom" };

https://stackoverflow.com/a/23300004/1768232

String editednames = titleCase(name);

https://stackoverflow.com/a/20698093/1768232

myString = myString.toLowerCase();

https://stackoverflow.com/a/19393222/1768232

System.out.println(Name + " " + Income);

https://stackoverflow.com/a/1181979/1768232

public static <T> T last(T[] array) {
   return array[array.length - 1];
}

आवश्यक जोड़ें classऔर public static void main(String[] args){ }जैसा कि नियम # 2d (स्थिर विधि के आसपास नहीं) में अनुमति दी गई है, और कुछ चर / विधि के नाम को 6 स्निपेट में से 3 में बदलें:

  • तीसरा स्निपेट में बदलाव name->history
  • तीसरा स्निपेट में बदलाव editednames->myString
  • बदलें Name-> myStrपांचवें स्निपेट में
  • बदलें Income-> myStringपांचवें स्निपेट में
  • बदलें last-> titleCaseछठे स्निपेट में

परिणाम कार्यक्रम:

public class DuctTape {
  public static void main(String[] args) {
    // https://stackoverflow.com/a/19509316/1768232
    String myStr = "hello";
    String myStr1 = "hello";

    // https://stackoverflow.com/a/8341513/1768232
    String[] history = new String[] { "hey", "you", "Mom" };

    // https://stackoverflow.com/a/23300004/1768232
    String myString = titleCase(history);

    // https://stackoverflow.com/a/20698093/1768232
    myString = myString.toLowerCase();

    // https://stackoverflow.com/a/19393222/1768232
    System.out.println(myStr + " " + myString);
  }

  // https://stackoverflow.com/a/1181979/1768232
  public static <T> T titleCase(T[] array) {
    return array[array.length - 1];
  }
}

आउटपुट:

hello mom

2
यह नियमों को तोड़ने के लिए प्रकट होता है; 2a इंगित करता है कि आप विधि कॉल द्वारा किस विधि को परिवर्तित नहीं कर सकते हैं, जो आपने शीर्षक () से अंतिम () में परिवर्तित किया था।
बिली मेलमैन

1
@BillyMailman यदि आपकी व्याख्या सही है तो आप तब तक विधि परिभाषा का उपयोग नहीं कर सकते जब तक कि q / भी कहीं उस पद्धति पर कॉल प्रदान नहीं करता है। मैं संपादित करने की कोशिश करूँगा अगर वहाँ ओपी से एक सत्तारूढ़ है
durron597

2
दरअसल, @BillyMailman सही है। लेकिन जिस तरह से आप ऐसा करते हैं वह बाहरी संदर्भ का नाम बदलने के बजाय विधि का titleCase()नाम बदलने से है। आप इसे एक साथ कैसे बांधेंगे। नियम 2 ए यह तय करता है कि बदलती पद्धति / कार्य नाम कानूनी है।
ऐस्टर

1
@JeffGohlke फिक्स्ड
ड्यूर्रोन 597

28

सी#

संभवतः (सटीक) परिणाम प्राप्त करने के लिए संभवतः पागल, गोल, और दृढ़ तरीका है - किसी भी कोड में केवल चर नाम और बिना शाब्दिक "माँ" के साथ।

"यदि आप एक पोस्ट से एक कोड ब्लॉक लेते हैं, तो आप पूरी बात लेते हैं" नियम बहुत शाब्दिक रूप से मदद नहीं करता है - लेकिन इसे और अधिक मजेदार बना दिया।

using System;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Text.RegularExpressions;

public class Program
{
    void Main()
    {
        // Step 1
        var n = 3;
        var helloAndGoodbye = "12345678900"
                    .Select((c, i) => new { letter = c, group = i / n })
                    .GroupBy(l => l.group, l => l.letter)
                    .Select(g => string.Join("", g))
                    .ToList();

        // Step 2
        string place = "world";
        string greet = String.Format("Hello {0}!", place); 

        // Step 3
        byte[] b1 = System.Text.Encoding.UTF8.GetBytes (greet);
        byte[] b2 = System.Text.Encoding.ASCII.GetBytes (greet);

        // Step 4
        string encryptionKey = "test";
        var md5 = MD5.Create();
        var keyBytes = Encoding.UTF8.GetBytes(encryptionKey);
        byte[] encryptionKeyBytes = md5.ComputeHash(keyBytes);

        // Step 5
        string strName = md5.GetType().Name;
        if(strName == "Person")
        {
            //My Code
        }

        // Step 6
        string HashAlgorithm = new string(strName.Take(n).ToArray());

        // Step 7
        int previousYear = DateTime.Now.AddYears(-1).Year;

        // Step 8
        string myString = previousYear.ToString();

        // Step 9
        string totallyRandomString = new string(myString.Take(n).ToArray());

        // Step 10
        int myInt = System.Convert.ToInt32(totallyRandomString);

        // Step 11
        int x = myInt << 1 + 1;

        // Step 12
        PasswordDeriveBytes DerivedPassword = 
                    new PasswordDeriveBytes(place, b1, HashAlgorithm, x);
        byte[] KeyBytes = DerivedPassword.GetBytes(32);

        // Step 13
        string base64 = Convert.ToBase64String(KeyBytes);
        byte[] bytes = Convert.FromBase64String(base64);

        // Step 14
        var split = base64.Split('/');
        var last = split[split.Length -1];
        var prev = split[split.Length -2];

        // Step 15
        string truncatedToNLength = new string(last.Take(n).ToArray());

        // Step 16
        Regex rgx = new Regex("[^a-zA-Z0-9 -]");
        greet = rgx.Replace(greet, "");

        // Step 17
        var newString = greet.Replace(place.ToString(), truncatedToNLength);

        // Step 18
        var searchStr = newString.ToLower();
            searchStr = searchStr.Trim();

        // Step 19
        Console.WriteLine(searchStr); 
    }
}

.NET फेल्ड

http://dotnetfiddle.net/PbjhPn

http://dotnetfiddle.net/bg20wb (हटाए गए कोड ब्लॉक में अनावश्यक लाइनों के साथ)

संक्षिप्त व्याख्या

असल में, हमें "हैलो वर्ल्ड!" एक साधारण स्ट्रिंग प्रारूप से। अब हमें इसे बदलने के लिए "माँ" की आवश्यकता है। उसके लिए, हम MD5 का उपयोग करते हुए "दुनिया" के साथ पासवर्ड और "हैलो वर्ल्ड!" के साथ PBKDF1 के 804 पुनरावृत्तियों को चलाने के Base64 एन्कोडेड परिणाम का उपयोग करते हैं। नमक के रूप में। यह एक स्ट्रिंग "ciSf5cCls1l / MoM ..." पैदा करता है। हम उस "एमओएम" को निकालते हैं और इसे "दुनिया" के प्रतिस्थापन के रूप में उपयोग करते हैं। फिर हम स्ट्रिंग को साफ करते हैं।

हम 804 कैसे प्राप्त करते हैं? पिछला वर्ष तीन वर्णों (= "201") तक पहुंच गया, और फिर 4 से गुणा किया गया।

लंबी व्याख्या और विशेषता

1: हम कुछ नियम-पालन ओवरकिल के साथ शुरू करते हैं। पूर्णांक 3 इस कार्यक्रम में एक बहुत ही महत्वपूर्ण स्थिरांक है। यहाँ हम उस पूर्णांक को असाइन करते हैं n। हमें स्रोत से पूरे ब्लॉक को शामिल करना चाहिए। यह निरर्थक हो सकता है, लेकिन यह ठीक ठीक संकलन करेगा, जब तक हम उस splitचर का नाम बदल देते हैं जिसकी हमें बाद में आवश्यकता होगी। स्रोत

बदला हुआ चर नाम:

split              > helloAndGoodbye

2: स्टार्टिंग स्ट्रिंग सेट करें ("हैलो वर्ल्ड!")। स्रोत

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

3: कन्वर्ट greet("नमस्ते दुनिया!") नमकीन के लिए बाइट सरणी के लिए। स्रोत

myString           > greet

4: हालांकि हम क्रिप्टोग्राफी का उपयोग कर रहे हैं, हमें वास्तव में MD5 वर्ग को तुरंत लिखने की आवश्यकता नहीं है। हालांकि, हमें अपने किसी एक पैरामीटर को और नीचे उपयोग करने के लिए दिए गए स्ट्रिंग "MD5" की आवश्यकता है - और यह प्रयोग करने योग्य कोड में खोजना आसान नहीं है। तो हम एक और लेंगे ... "शॉर्टकट" ... एक बार फिर, पूरे कोड ब्लॉक को नियमों के अनुसार शामिल किया गया है, हालांकि हमें केवल दूसरी पंक्ति की आवश्यकता है। स्रोत

5: अब हमें md5वेरिएबल के प्रकार के नाम की आवश्यकता है ( MD5CryptoServiceProvider)। ifअभी तक एक और अतिरेक है। स्रोत

entity             > md5

6: टाइप नाम के पहले 3 (ऊह, वहाँ हमारा स्थिर है!) अक्षर प्राप्त करें। स्रोत

s                  > strName
truncatedToNLength > HashAlgorithm

7: कोड-ट्रोलिंग: DateTime.Nowइसका उपयोग करने का अर्थ यह होगा कि यह 2019 तक ही काम करेगा। इसे भविष्य का थोड़ा सा प्रमाण बनाने के लिए, हम पिछले वर्ष का उपयोग करते हैं। फिर यह 2020 तक काम करेगा ;-) स्रोत

8: हमारे previousYearस्ट्रिंग में कनवर्ट करें । स्रोत

myInt              > previousYear

9: अरे, कोड का पुन: उपयोग! ;-) हमारे वर्ष के पहले 3 (हमारे स्थिर!) वर्ण प्राप्त करें। स्रोत

s                  > myString
truncatedToNLength > totallyRandomString

10: Aaaaaaaand ... परिणाम को पूर्णांक में बदलें। स्रोत

myString           > totallyRandomString

11: एरिक लिपर्ट हर उत्तर को बेहतर बनाता है। गोल चक्कर में 4 से गुणा करें। स्रोत

y                  > myInt

12: PBKDF1 के माध्यम से भेजें place(पासवर्ड) और greet(नमक) MD5 के साथ x(जो अब है 201*4 = 804) पुनरावृत्तियों का उपयोग कर। स्रोत

Password           > place
SaltValueBytes     > b1
PasswordIterations > x

13: जॉन स्कीट भी हर उत्तर को बेहतर बनाता है। अपने व्युत्पन्न पासवर्ड को बेस 64 में बदलें। हम bytesएरे को फेंक देते हैं । स्रोत

bytes (first occurrence) > KeyBytes

14: क्या एक पागल यादृच्छिक घटना है! अब हम base64इसमें "MoM" के साथ हैं। आसानी से, "MoM" से ठीक पहले एक एकल '/' है। तो स्ट्रिंग को उस चरित्र के साथ सीमांकक के रूप में विभाजित करें: स्रोत

filePath          > base64

15: अरे, कोड पुन: उपयोग टेप के हमारे पसंदीदा टुकड़ा! के पहले 3 (स्थिर!) अक्षर प्राप्त करें lastस्रोत

s                 > last

16: "हटाओ!"। स्रोत

str               > greet

17: MoM हमारी दुनिया है - इसलिए स्ट्रिंग को प्रतिबिंबित करें ("MoM" के साथ "दुनिया" बदलें)। स्रोत

someTestString   > greet
someID           > place
sessionID        > truncatedToNLength

18: अंत में, लोअर केस में कनवर्ट करें। अच्छे उपाय के लिए ट्रिम करें (या संभवतः क्योंकि यह डक्ट टेप ब्लॉक का हिस्सा है)। स्रोत

wordToSearchReplacemntsFor > newString

19: कंसोल को आउटपुट। स्रोत

_surface         > searchStr

"बोनस सामग्री" / टिप्पणी का एक सा

  • सबसे पहले मैंने अंतर्निहित क्रिप्टोग्राफिक हैश (प्रत्येक एचएमएसी के साथ संयुक्त) और इनपुट्स ("दुनिया", "हैलो वर्ल्ड!", "हैलो वर्ल्ड", "हैलो वर्ल्ड" आदि) के प्रत्येक संयोजन को देखने की कोशिश की कि क्या कुछ चमत्कारिक रूप से देगा? "माँ" को प्राप्त करने के लिए एक प्रयोग करने योग्य आउटपुट - पीडीकेडीबी 1 (या 2) के पुनरावृत्तियों की संख्या की तलाश में आसान मार्ग लेने से पहले जो उपयोगी होगा।

  • 201 * 4 = 804 पुनरावृत्तियों के लिए इनपुट के रूप में वर्ष के उपयोग से बिल्कुल खुश नहीं थे। सबसे पहले मैंने HttpStatusCode.Createdइनपुट के रूप में उपयोग करने के लिए (201) के लिए कुछ उपयोगी कोड खोजने की कोशिश की - "हमने अपनी 'हैलो वर्ल्ड!' स्ट्रिंग, इसलिए एक अच्छा अभ्यास यहां 'क्रिएटेड स्टेटस कोड' का उपयोग करना होगा। दुर्भाग्य से, मैंने कभी भी उस HttpStatusCodeएन्यूमरेशन का उपयोग नहीं किया जो ASP.NET वेबएपीआई के अधिकांश ढांचे पर निर्भरता का परिचय नहीं देता था।

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


5
"माँ हमारी दुनिया है" के लिए +1, और "लिपर्ट और स्कीट हर उत्तर को बेहतर बनाते हैं"।
फ्लोरिस

"अच्छे उपाय के लिए ट्रिम ..." मुझे एक अच्छा चकली दिया।
नीत

24

बेफुज 98

मेरा कोड:

var abc = function(){};
display: table-*
display: table-*
display: table-*
display: table-*
display: table-*
display: table-*
display: table-*
display: table-*
+
+
+
+
+
+
+
, new {area = ""}
byte z = x + y;
byte z = x + y;
byte z = x + y;
byte z = x + y;
byte z = x + y;
byte z = x + y;
byte z = x + y;
byte z = x + y;
display: table-*
+
+
+
+
+
+
+
+
, new {area = ""}
"1,23,4"
  String[] temp = data.split("\\s+\\^,?\"'\\|+");
List<Set<Integer>> foo;
"1,23,4"
+
: base(name)
: base(name)
, new {area = ""}
, new {area = ""}
10001.10010110011
10001.10010110011
10001.10010110011
+
+
+
, new {area = ""}
"1,23,4"
  String[] temp = data.split("\\s+\\^,?\"'\\|+");
"1,23,4"
, new {area = ""}
"1,23,4"
[5326, 4223, 1204]
Runnable prs = new Runnable() {
    public void run() {
        Document doc = null;
        try {
            doc = Jsoup.connect("http://play.radio.com/").get();

        } catch (IOException e) {

            e.printStackTrace();
        }
        parser.postDelayed(prs, 10000);
    }
};
"1,23,4"
$selector.append("somestuff");
$selector.append("somestuff");
-new Date().getTimezoneOffset()/60;
: base(name)
10001.10010110011
10001.10010110011
10001.10010110011
+
+
+
 [0000] push        ebp
 [0001] mov         ebp,esp
 [0003] push        edi
 [0004] push        esi
 [0005] push        ebx
 [0006] sub         esp,1Ch
 [0009] xor         eax,eax
 [000b] mov         dword ptr [ebp-20h],eax
 [000e] mov         dword ptr [ebp-1Ch],eax
 [0011] mov         dword ptr [ebp-18h],eax
 [0014] mov         dword ptr [ebp-14h],eax
 [0017] xor         eax,eax
 [0019] mov         dword ptr [ebp-18h],eax
*[001c] mov         esi,1
 [0021] xor         edi,edi
 [0023] mov         dword ptr [ebp-28h],1
 [002a] mov         dword ptr [ebp-24h],0
 [0031] inc         ecx
 [0032] mov         ebx,2
 [0037] cmp         ecx,2
 [003a] jle         00000024
 [003c] mov         eax,esi
 [003e] mov         edx,edi
 [0040] mov         esi,dword ptr [ebp-28h]
 [0043] mov         edi,dword ptr [ebp-24h]
 [0046] add         eax,dword ptr [ebp-28h]
 [0049] adc         edx,dword ptr [ebp-24h]
 [004c] mov         dword ptr [ebp-28h],eax
 [004f] mov         dword ptr [ebp-24h],edx
 [0052] inc         ebx
 [0053] cmp         ebx,ecx
 [0055] jl          FFFFFFE7
 [0057] jmp         00000007
 [0059] call        64571ACB
 [005e] mov         eax,dword ptr [ebp-28h]
 [0061] mov         edx,dword ptr [ebp-24h]
 [0064] lea         esp,[ebp-0Ch]
 [0067] pop         ebx
 [0068] pop         esi
 [0069] pop         edi
 [006a] pop         ebp
 [006b] ret
10001.10010110011
+
: base(name)
, new {area = ""}
"1,23,4"
List<Set<Integer>> foo;

"1,23,4"
+
10001.10010110011
10001.10010110011
10001.10010110011
+
+
+
, new {area = ""}
, new {area = ""}
def logme(func):
    def wrapped(*args):
        for arg in args: print str(arg)
        func(*args)
    return wrapped

@logme
def my_func(*args):
    res = 1
    for arg in args :
        print "Multiplying %s by %s" % (arg, res)
        res*=arg
    print res
    return res

यह काम करता है क्योंकि पहले v (पहली पंक्ति में) आईपी को नीचे की ओर भेजता है। इसलिए हम मूल रूप से इस कार्यक्रम को अंजाम दे रहे हैं:

dddddddd+++++++,bbbbbbbbd++++++++," L"+::,,111+++," ","[R           }"$$-:111+++             *                            1+:,"L "+111+++,,d     @

जो यह करता है:

  • dddddddd+++++++, धक्का 104 और प्रिंट
  • bbbbbbbbd++++++++, धक्का 101 और प्रिंट
  • " L"+, धक्का 32 और एससीआई का मान L, फिर उन्हें जोड़ता है, दो बार डुप्लिकेट करता है, और दो बार प्रिंट करता है
  • जो नकल गया, उसे 111+++, 3 और प्रिंट जोड़ता है
  • " ",एक स्पेस प्रिंट करता है। "[R }"$$-:111+++धक्का देता है9 और इसे डुप्लिकेट करता है, फिर शीर्ष मूल्य में 3 जोड़ता है
  • * शीर्ष दो मूल्यों को गुणा करता है
  • 1+:, संख्या में वृद्धि, डुप्लिकेट, और प्रिंट
  • "L "+111+++,प्रिंट करता है o। पहले से ,प्रिंट करता mहै, और d @धक्का देता है 13(जो कुछ नहीं करता है) और कार्यक्रम को समाप्त करता है।

4
और हाँ। मैंने वास्तव में इसे चलाया था और यह आउटपुट करता हैhello mom
जस्टिन

14

जावा

import java.util.*;

public class HelloMom {

     public static void main(String[] args) {
         Hashtable<String, String> ht = new Hashtable<String, String>();

        ht.put("Answer", "42");
        ht.put("Hello", "World");    // First value association for "Hello" key.
        ht.put("Hello", "Mom");      // Second value association for "Hello" key.

        for (Map.Entry<String, String> e : ht.entrySet()) {
          System.out.println(e);
        }
    }
}

उत्पादन

Answer=42
Hello=Mom

वहाँ एक pesky = है, लेकिन यह सबसे अच्छा मैं कर सकता है

https://stackoverflow.com/a/1050075/573421


खोजने योग्य है!
फ्लोरिस

1
वास्तव में मैंने चुनौती शुरू करने से पहले थोड़ी खोज की और एक पोस्ट में इस तरह के पूर्ण समाधान खोजने की उम्मीद नहीं की। अच्छा है कि आप वैसे भी एक मिल गया!
डेनिस जहरुद्दीन

11

सी

इस कोड का अधिकांश उत्तर BLUEPIXY द्वारा पोस्ट किए गए पहले शब्द की शुरुआत को खोजने के लिए होता है , जो BLUEPIXY द्वारा पोस्ट किया गया है mom। लाइनों 21 और 22 पर, प्रिंटफ के helloजवाब के अंत में एक कोड स्निपेट द्वारा प्रिंट किया जाता है , user142019 द्वारा प्रिंटफ ( "%%% s", "हैलो") पर (जिसने सौभाग्य से एक अर्धविराम अंत में जोड़ा), और बीच का स्थान शब्द एम ओहम द्वारा ग में पैडिंग के साथ अंतरिक्ष को कैसे प्रिंट करें , इसका उत्तर आता है ।

आउटपुट:

%hello        mom

मैं दुर्भाग्य से अतिरिक्त स्थान या प्रतिशत चरित्र को समाप्त करने में सक्षम नहीं था :(

सोर्स कोड:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int isPalindrome(const char *str){
    const char *front, *back;
    front=str;
    back =str + strlen(str)-1;
    for(;front<back;++front,--back){
        while(!isalpha(*front))++front;//isalnum?
        while(!isalpha(*back))--back;
        if(front > back || tolower(*front)!=tolower(*back))
            return 0;
    }
    return 1;
}

int main(){
    const char *data="Hello mom and dad, how is it going?";
    char *p, *src;
    printf("%%%s", "hello");
    printf("        ");
    p=src=strdup(data);
    for(;NULL!=(p=strtok(p, " \t\n,.!?"));p=NULL){
        if(isPalindrome(p)){
            printf("%s\n", p);
            break;
        }
    }
    free(src);
    return 0;
}

7

जावा

import java.io.ByteArrayOutputStream;
import java.io.FileDescriptor;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.util.Arrays;
import java.util.Random;

/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
/**
 *
 * @author LH
 */
public class Kopierpaste
{

    //https://stackoverflow.com/questions/15182496/why-does-this-code-using-random-strings-print-hello-world
    //randomizer code for the first String
    public static String randomString(int i)
    {
        Random ran = new Random(i);
        StringBuilder sb = new StringBuilder();
        for (int n = 0;; n++)
        {
            int k = ran.nextInt(27);
            if (k == 0)
            {
                break;
            }

            sb.append((char) ('`' + k));
        }

        return sb.toString();
    }

    public static void main(String[] nope)
    {
        //catching a System.out() based code snippet
        //https://stackoverflow.com/questions/4183408/redirect-stdout-to-a-string-in-java
        ByteArrayOutputStream baos = new ByteArrayOutputStream();
        System.setOut(new PrintStream(baos));
        //same as randomizer
        //getting hello, world inside a ByteArray
        System.out.println(randomString(-229985452) + " " + randomString(-147909649));

        //undo the redirecct of System.out()
        //https://stackoverflow.com/questions/4183408/redirect-stdout-to-a-string-in-java && https://stackoverflow.com/a/14716148/1405227
        System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));


        //stringify the out of first part
        //https://stackoverflow.com/questions/4183408/redirect-stdout-to-a-string-in-java
        String text = baos.toString();


        //getting rid of the world part
        //https://stackoverflow.com/a/17008136/1405227
        String firstWord = text.substring(0, text.indexOf(' '));

        //needing the word Mom
        //https://stackoverflow.com/a/8341513/1405227
        //history -> a
        String[] a = new String[]
        {
            "hey", "you", "Mom"
        };

        //stitching the array together in a certain fashion ([elem1, elem2, elem3]
        //https://stackoverflow.com/a/2822736/1405227
        //myarray->a
        String b = Arrays.toString(a);

        //getting rid of the ,s
        //https://stackoverflow.com/a/7552284/1405227 stripping annoying bullcrap out
        //result ->c
        //yourString ->b
        String c = b.replaceAll("[-+.^:,]", "");


        //getting the Mom] part
        //https://stackoverflow.com/a/15317037/1405227
        //sentence -> c
        String lastToken = c.replaceAll(".* ", "");

        //getting rid of more crap
        //https://stackoverflow.com/a/18599016/1405227
        //message -> lastToken
        lastToken = lastToken.replaceAll("\\W", "");


        //finally out
        //https://stackoverflow.com/a/19393222/1405227
        //name -> firstWord
        //income -> lastToken
        System.out.println(firstWord + " " + lastToken);
    }
}

दस्तावेज़ और स्रोत लिंक टिप्पणियों में हैं (// के साथ शुरू)

उपयोग किए गए स्रोतों की स्वच्छ सूची


+1। मैं रैंडम हेलो वर्ल्ड अप्रोच के लिए जाना चाहता था, लेकिन ऊब गया और इसे और अधिक सरलता से किया। अच्छी तरह से किया
डुर्रोन 597

हाँ, यह याद है, और इसे बाहर निकालने के लिए मुझे सिस्टम का दुरुपयोग करना पड़ा। मुझे अपने दृष्टिकोण और कुछ गंदे regexes के साथ माँ को प्राप्त करने में थोड़ा समय लगा। लेकिन सौभाग्य से हमें एसओ
मास्टरएक्स 244
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.