काउच 2048: 2048 तक कितना अधिक?


20

मैंने अभी-अभी काउच 2048 नामक एक गेम की कोशिश की है ।
(नोट: आपको इस प्रश्न को बेहतर ढंग से समझने के लिए एक नज़र रखना चाहिए।)
चूंकि यह मेरे लिए बहुत रोमांचक नहीं था, इसलिए मैं खुद से पूछ रहा हूं कि '2048 तक कितना अधिक हो !?'
इसने मुझे एक चुनौती पोस्ट करने के लिए प्रेरित किया, क्योंकि यह गणना करना उतना आसान नहीं है जितना मैंने सोचा था।

आपका लक्ष्य:
सोफे पर गेंदों की एक सूची को देखते हुए, आपको आउटपुट करना होगा कि 2 के मान के साथ कितनी गेंदों को आसमान से गिरना है ताकि कोई गेम जीत सके (2048 गेंद तक पहुंचकर)।

  • मान लें कि इनपुट मान्य है।
  • मान लें कि खिलाड़ी किसी भी गेंद को नहीं गिराएगा।
  • आसमान से गिरने वाली गेंदों का मान हमेशा 2 है, जैसा कि मैंने कहा है।
  • वैध उत्पादन उदाहरण: 3, "4", [5], ["6"]

संपादित करें:
मुझे कुछ स्पष्ट करना चाहिए:
- आपको 2 एस की सबसे छोटी राशि प्रिंट करनी होगी ।

परीक्षण के मामले:
[2048] -> 0 आप पहले ही जीत चुके हैं, आपको श्रृंखला को सक्रिय
[1024,1024] -> 0 करने के लिए
[1024,512,256,128,64,32,16,8,4,2] -> 1एक गेंद जीतने के लिए किसी और गेंद की आवश्यकता नहीं है
[512] -> 768
[512,2] -> 767
[4,16,64] -> 982

नोट्स :
मैं एक देशी वक्ता नहीं हूं - मुझे बताएं कि क्या आपने कोई टाइपो या कुछ गैर-व्याकरणिक पाठ देखा है।
यदि कुछ अस्पष्ट है, तो टिप्पणियों में पूछें।


क्यों [4,16,64] -> 22?
l4m2

3
PPCG में आपका स्वागत है। ऐसा लगता है कि यह चुनौती है: सरणी में सभी तत्वों को जोड़ना, घटाना 2048और विभाजित करना 2- यदि हां, तो आप अंतिम परीक्षण मामले की दोहरी जांच करना चाहते हैं - यदि नहीं, तो कृपया यह समझाने के लिए उदाहरण के रूप में उपयोग करें कि आउटपुट इएसएन क्यों है? 'टी 982
झबरा

1
एक मूर्खतापूर्ण गलती को नोटिस करने के लिए @Shagy thx

4
वाह, मैंने नहीं सोचा है कि मेरी पहली चुनौती में पहले घंटे में 7 उत्तर और 2 अपवोट होंगे! और मैं ~ 28 लोगों तक पहुँच गया!

2
हे, नीच: अपनी बात समझा! चुनौती के लिए सुधार करना आवश्यक है!

जवाबों:


11

जावा 8, 17 बाइट्स

s->1024-s.sum()/2

पोर्ट @LuisFelipeDeJesusMunoz 'जावास्क्रिप्ट जवाब

इसे ऑनलाइन आज़माएं।

स्पष्टीकरण:

s->           // Method with IntStream parameter and int return-type
  1024-       //  Return 1024, minus:
   s.sum()    //   The sum of the input-IntStream
          /2  //   Divided by 2

11
जब जावा दोनों अजगर (क्योंकि लैम्ब्डा सिंटैक्स) और जावास्क्रिप्ट (क्योंकि राशि) को महसूस कर रहा है, तो यह महसूस कर रहा है
क्विंटेक

8

ब्रेन-फ्लैक , 72 बाइट्स

({{}})({<({}[()()])>()}{})([{}]((((((((()()()()){}){}){}){}){}){}){}){})

इसे ऑनलाइन आज़माएं!

({{}})                     # Sum entire stack
      (                  ) # Push:
       {<          >()}{}  #   The number of times you can...
         ({}[()()])        #   Subtract 2 before reaching 0

([{}]                                        ) # Subtract that from...
     ((((((((()()()()){}){}){}){}){}){}){}){}  # 1024

1
धन्यवाद! मुझे ब्रेन-फ्लैक सीखने में दिलचस्पी है और आपकी व्याख्या उपयोगी थी।
गैलेन इवानोव



5

05AB1E , 5 बाइट्स

O;žBα

पोर्ट @LuisFelipeDeJesusMunoz 'जावास्क्रिप्ट जवाब

इसे ऑनलाइन आज़माएं या सभी परीक्षण मामलों को सत्यापित करें

स्पष्टीकरण:

O        # Sum of the (implicit) input-list
 ;       # Halved
  žB     # Push 1024
    α    # Absolute difference between the two (and output implicitly)





2

कैथोलिक , 5 बाइट्स

-`L̇½Ṗ

स्पष्टीकरण:

-      subtract
 `L̇    1024
       from
   ½   half of the
    Ṗ  sum [of the input]

1
क्या यह एक नई गोल्फ भाषा है जिसकी मुझे गंध आती है? :)
ETHproductions

1
नई भाषा के लिए +1। एक और जानने के लिए </ आह>
ElPedro





1

perl -aE, 27 बाइट्स

$"=$:;say eval"(2048-@F)/2"

यह संख्याओं (व्हॉट्सएप से अलग) के साथ एक पंक्ति पढ़ता है STDINऔर से उत्तर लिखता है STDOUT

यह जो करता है वह 2048 से इनपुट से सभी संख्याओं को घटाता है, और यह शेष को 2 से विभाजित करता है। -aस्विच सरणी @F(एक तत्व प्रति तत्व) में डालता है । यदि हम किसी सरणी को एक स्ट्रिंग (जो हम यहां कर रहे हैं) में प्रक्षेपित करते हैं, तो पर्ल $"तत्वों के बीच का मान डालता है । थोड़ा उपयोग किया जाने वाला चर $:डिफ़ॉल्ट है \n-; और चूंकि टोकन के बीच सफेद स्थान को नजरअंदाज किया जाता है, परिणाम 2048 से सभी संख्याओं को घटा रहा evalहै। गणना करता है।







0

AWK, 26 बाइट्स

{s+=$1}END{print 1024-s/2}

इनपुट नंबर अलग से आते हैं newlines (यानी प्रति पंक्ति एक)


0

नीम, 6 बाइट्स

नीम के लिए बहुत अच्छा है, लेकिन यह काम कर रहा है

𝐬ᚺςᚫᛦ𝕤

स्पष्टीकरण:

  𝐬         : Sum input
   ᚺ        : Divide by 2 (stack now [input summed and divided by 2])
    ς       : Variable set to 16 pushed to stack
     ᚫ      : Multiply by 2
      ᛦ     : Square (stack now [input summed and divided by 2, 1024])
       𝕤    : Subtract then absolute

इसे ऑनलाइन आज़माएं!






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