वह प्रोग्राम ढूंढें जो इस पूर्णांक अनुक्रम को प्रिंट करता है (रॉबर्स थ्रेड)


20

यह लुटेरों का धागा है। पुलिस का धागा यहाँ जाता है

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

फटा कोड समान नहीं होना चाहिए, जब तक कि इसकी लंबाई समान हो और किसी भी प्रकट वर्ण सही स्थिति में हों। भाषा भी समान होनी चाहिए (संस्करण संख्या भिन्न हो सकती है)। आउटपुट निश्चित रूप से समान होना चाहिए।

लुटेरे के समाधान में नो-ऑप्स का उपयोग किया जा सकता है।

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

सबमिशन को इस तरह से फॉर्मेट किया जाना चाहिए:

भाषा, एनएन वर्ण (उत्तर के लिए लिंक सहित), कॉप का उपयोगकर्ता नाम

कोड:

function a(n)
    if n<2 then
        return n
    else
        return a(n-1) + a(n-2)
    end
end

उत्पादन

a(0) returns 0
a(3) returns 2

वैकल्पिक स्पष्टीकरण और टिप्पणियाँ।


यहां ये नियम, कॉप थ्रेड से भिन्न हैं, जहां यह कहता है: हालांकि, कोई भी प्रस्तावित स्रोत कोड जो आउटपुट के समान सेट का उत्पादन करता है, वह भी मान्य है, जब तक कि यह OEIS में भी पाया जाता है।
18

यदि उदाहरण कई OEIS श्रृंखला से मेल खाते हैं तो क्या होगा? यह बस अदनान और मेरे साथ हुआ
FliiFe

@FliiFe वर्तमान नियमों के तहत, कोई भी कोड जो पुलिस के कोड से मेल खाता है और OEIS अनुक्रम को आउटपुट करता है जिसके मान पुलिस के उदाहरणों के साथ मेल खाते हैं, एक वैध दरार है।
मेगो

क्या यह समाप्त हो गया है? क्या कोई विजेता है?
एंड्रयू सविनाख

जवाबों:



5

हेक्सागोनी , 7 बाइट्स, अदनान , A005843

?{2'*!@

या

 ? {
2 ' *
 ! @

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

बस इनपुट को दोगुना करता है (और सकारात्मक इनपुट मानता है)। कोड को (एक बार के लिए) केवल पढ़ने के क्रम में निष्पादित किया जाता है। कोड तीन मेमोरी किनारों , बी , सी का उपयोग करता है , जिसमें मेमोरी पॉइंटर को दिखाया गया है:

यहां छवि विवरण दर्ज करें

?    Read integer from STDIN into edge A.
{    Move memory pointer forwards to edge B.
2    Set edge B to 2.
'    Move memory pointers backwards to edge C.
*    Multiply edges A and B and store result in C.
!    Print result to STDOUT.
@    Terminate program.

ठीक वैसा ही जैसा मेरे पास था! :)
लीके नन

@KennyLau मुझे लगता है कि समाधान की भूमिकाओं की अदला-बदली के लिए अद्वितीय निर्भर है Bऔर C
मार्टिन एंडर

4

जे, 7 बाइट्स, Cᴏɴᴏʀ O'Bʀɪᴇɴ

कोड

2+*:@p:

उत्पादन

   f =: 2+*:@p:
   f 0
6
   f 2
27

इसे जेजे के साथ आजमाएं

यह काम किस प्रकार करता है

अनुक्रम A061725 को a (n): = p n 2 + 2 के रूप में परिभाषित किया गया है , जहाँ p n एक (n + 1) th अभाज्य संख्या है।

2+*:@p:  Monadic verb. Argument: n

    @    Atop; combine the verbs to the right and to the left, applying one after
         the other.
     p:  Compute the (n+1)th prime number.
  *:     Square it.
2+       Add 2 to the result.

अच्छी नौकरी! आप कोड से अधिक समझते हैं कि मैंने XD
कॉनर ओ'ब्रायन


4

जावास्क्रिप्ट, 10 बाइट्स , user81655 , A033999

मुझे लगता है कि मैं समझ गया। हाँ। यह एक वास्तव में कठिन था। मुझे प्रस्तुत करना पसंद है क्योंकि यह पूर्वनिर्धारण पर बहुत निर्भर करता है।


यह A033999 क्रम है :

a (n) = (-1) ^ n।

स्रोत

t=>~t.z**t

व्याख्या

यदि आप जावास्क्रिप्ट कोड के अनुसार इस कोड को विभाजित करते हैं, तो आपके द्वारा प्राप्त की जाने वाली वरीयताएँ :

  1. .(पूर्ववर्ती 18 ) पहले मूल्यांकन किया जाता है और t.zवापस आ जाएगाundefined
  2. ~(पूर्ववर्ती 15 ) कास्ट करने की कोशिश करता है undefined, जिसके परिणामस्वरूप 0और -1बिटवाइज़ के बाद वापस नहीं आता है।
  3. **(पूर्वता 14 ) वापस आ जाएगी -1 ^ t, जहां tहै अजीब या भी , जिसका परिणाम -1या 1

डेमो

console.log(
    (t=>~t.z**t)(0),
    (t=>~t.z**t)(1),
);

खरीदने से पहले कोशिश करें


मैं इस शांत कॉप सबमिशन पर 100 प्रतिनिधि इनाम प्रदान करूंगा।


1
आप सही हैं, बधाई हो! :)
user81655

मैं अपने आप को जावास्क्रिप्ट में अच्छी तरह से वाकिफ हूं, लेकिन मुझे नहीं पता कि यह कैसे काम करता है।
कॉनर ओ'ब्रायन

@ C @O'Bʀɪᴇɴ मैंने एक स्पष्टीकरण जोड़ा है। उम्मीद है कि यह इसे अच्छी तरह से समझाता है।
insertusernamehere

यही कारण है कि जानवर बल इसे नहीं मिला। मैंने गलत ऑप मिसरी> _ <
कॉनर ओ'ब्रायन

3

तत्व , 7 बाइट्स , PhiNotPi , A000042

_'[,1`}

नोट: मैं }soooooo के लिए लंबे समय से गुमराह किया गया था । तो यह भी मेल खाता है [

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


यह काम किस प्रकार करता है:

_'[,1`}
_        main_stack.push(input());
 '       control_stack.push(main_stack.pop());
  [      Object temp = control_stack.pop();
         for(int i=0;i<temp;i++){
   ,         Object a = main_stack.pop(); //is actually zero
             main_stack.push(a.toChars()[0]);
             main_stack.push(a);
    1        main_stack.push(1);
     `       System.out.println(main_stack.pop());
      }  }

अच्छा! मैं यह कोशिश कर रहा था, लेकिन मैं यह नहीं पता लगा सका कि ,ब्रेकिंग चीजों को कैसे रोका जाए।
निधि मोनिका का मुकदमा

मेरी ट्रिक ,$1 का निर्माण करने की थी , जिसने मुझे ,अपने प्रोग्राम में वास्तव में भ्रमित करने वाला ऑपरेटर डालने का बहाना दिया ।
PhiNotPi

मैं }बहुत लंबे समय से अटका हुआ था :(
लीक नं।


3

MATL , 9 बाइट्स, बीकर , A022844

कोड (अंत में एक व्हाट्सएप के साथ):

3x2xYP*k 

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

मुझे लिखी गई स्क्रिप्ट के साथ निम्नलिखित तीन मैच मिले:

Found match: A022844
info: "name": "Floor(n*Pi).",

Found match: A073934
info: "name": "Sum of terms in n-th row of triangle in A073932.",

Found match: A120068
info: "name": "Numbers n such that n-th prime + 1 is squarefree.",

मैंने पहले एक करने की कोशिश की, जो मूल रूप से इसके साथ किया जाता है YP*k:

3x2x       # Push 3, delete it, push 2 and delete that too
    YP     # Push pi
      *    # Multiply by implicit input
       k   # Floor function

3

Jolf, 3 बाइट्स , पूर्वी Irk , A001477

axx

एक साधारण बिल्ली ( ax) एक नो-ऑप के बाद होती है। यकीन नहीं हो रहा था कि सिपाही यहाँ किस लिए जा रहा था।


यही कारण है कि सबसे निश्चित रूप से है नहीं पहचान समारोह। यह इनपुट सचेत करता है। वास्तविक पहचान कार्य हैं: पी
कॉनर ओ'ब्रायन

3

जावा, 479 बाइट्स , डैनियल एम। , A000073

कोड:

import java.util.*;
public class A{

    public static int i=0;
    public boolean b;

    static A a = new A();

    public static void main(String[] args){
        int input = Integer.parseInt(args[0]);

        LinkedList<Integer> l = new LinkedList<>();
        l.add(1);
        l.add(0);
        l.add(0);

        for(int ix = 0; ix<=input; ix++)if(ix>2){
            l.add(0,l//d
            .get(1)+l.peekFirst()+     l.get(2));
        }

        System.out.println(input<2?0:l.pop()
              +(A.i        +(/*( 5*/ 0 )));
    }
}

यदि आप गैर-प्रकट वर्णों को याद करते हैं, तो उन्हें रिक्त स्थान से बदल दिया जाता है।


1
मूल कोड से बहुत अलग, लेकिन फिर भी, बधाई!
डैनियल एम।


3

05AB1E , 4 बाइट्स, पॉल पिकार्ड , A001317

कोड:

$Fx^

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

स्पष्टीकरण:

$      # Pushes 1 and input
 F     # Pops x, creates a for-loop in range(0, x)
  x    # Pops x, pushes x and 2x
   ^   # Bitwise XOR on the last two elements
       # Implicit, ends the for-loop
       # Implicit, nothing has printed so the last element is printed automatically

अनुक्रम मूल रूप से एक द्विआधारी Sierpinski त्रिकोण है:

f(0)=      1                    =1
f(1)=     1 1                   =3
f(2)=    1 0 1                  =5
f(3)=   1 1 1 1                 =15
f(4)=  1 0 0 0 1                =17

और सूत्र में अनुवाद करता है a (n) = (n - 1) XOR (2 × (n - 1))

सौभाग्य से, मुझे यह याद आया :)


1
और यह वास्तव में एक ही है, वास्तव में: डी
पॉल पिकार्ड


2

जोल्फ, 5 वर्ण , Cᴏɴᴏʀ O'Bʀɪᴇɴ , A033536

कोड:

!K!8x

आउटपुट:

a(2) = 8
a(10) = 4738245926336

यह वही सटीक उत्तर था जो मेरे पास था। मैं इसे पोस्ट करने वाला था। :(
निधि मोनिका का मुकदमा

न तो उत्तर मूल है, लेकिन वे कार्यात्मक रूप से समान हैं।
कॉनर ओ'ब्रायन

@QPaysTaxes क्षमा करें :(
नन

2

रेंग v3.3 , 36 बाइट्स , C v O'B A , A005449

iv:#+##->>)2%æ~¡#~
#>:3*1+*^##</div>

उत्पादन

a(1) = 2
a(3) = 15

व्याख्या

मैंने पूर्व निर्धारित आदेशों को पूरी तरह से अनदेखा कर दिया, को छोड़कर ) क्योंकि मेरे पास पर्याप्त स्थान नहीं था।

वास्तव में उपयोगी कमांड यहाँ हैं:

iv      >>)2%æ~
 >:3*1+*^

एक सीधी रेखा में बढ़ा:

i:3*1+*)2%æ~

स्पष्टीकरण के साथ:

i:3*1+*)2%æ~ stack
i            [1]      takes input
 :           [1,1]    duplicates
  3          [1,1,3]  pushes 3
   *         [1,3]    multiplies
    1        [1,3,1]  pushes 1
     +       [1,4]    adds
      *      [4]      multiplies
       )     [4]      shifts (does nothing)
        2    [4,2]    pushes 2
         %   [2]      divides
          æ  []       prints
           ~ []       halts

सूत्र है a(n) = n(3n+1)/2


+1 के लिए </div>, एक HTML समापन टैग जो किसी तरह रेंग कोड में दिखाई दिया।
user48538

@ zyabin101 गलत जगह?
लीकी नून

नहीं। मुझे कोड में छिपे हुए रहस्य ढूंढना पसंद है। :-P
user48538

खैर यह पुलिस के कोड में है, इसलिए ...
लीक नून

2

05AB1E, 3 बाइट्स , अदनान , A000292

LLO

उत्पादन

a(9) = 165
a(10) = 220

यह काम किस प्रकार करता है

LLO Stack
L   [1,2,3,4,5,6,7,8,9]                         range
 L  [1,1,2,1,2,3,1,2,3,4,...,1,2,3,4,5,6,7,8,9] range of range
  O sum all of them

गणितीय समतुल्य है sum(sum(n)), कहां sumहै summation


अच्छा काम, वही सटीक समाधान था :)
अदनान

2

जोल्फ, 11 बाइट्स, QPaysTaxes , A000005

aσ0xxdxxxxx

सरल पर्याप्त: alert σ0(संख्या के विभाजक) x, फिर अंत में बेकार सामान डालें।

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

(आप इसे दो बाइट के लिए नीचे कर सकते हैं! बस σ0अच्छी तरह से किया होगा।)


1
वाह! ले बिल्डिन माइनसकुलस! +1
अदनान

1
यह ऐसा कुछ भी नहीं है जो मेरे पास था, लेकिन यह निश्चित रूप से काम करता है। मेरा समय इतना लंबा था क्योंकि आपके पास डॉक्स में विभाजक खोजने का कोई उल्लेख नहीं था।
निधि मोनिका मुकदमा

@QPaysTaxes मुझे लगता है कि मुझे डॉक्स अपडेट करने की आवश्यकता है: P लेकिन गंभीरता से, बस Ctrl + F स्रोत कोड;)
Conor O'Brien

यदि आप इसे देखना चाहते हैं तो मैंने अपने प्रश्न में अपना मूल कोड डाल दिया। पूर्वव्यापी में, मुझे अलग-अलग वर्ण दिखाना चाहिए: P
निधि मोनिका मुकदमा

2

पायथन 2, 87 बाइट्स , Sp3000 , A083054

n=input()
_=int(3**.5*n)-3*int(n/3**.5)########################################
print _

वास्तव में इतना कठिन नहीं है। बस उन सीक्वेंस की तलाश की जो बाधाओं से मिले जब तक कि मुझे एक ऐसा नहीं मिला जो दिए गए स्थान में उत्पन्न हो सकता है।



2

जावास्क्रिप्ट (ES6), 119 बाइट्स, C ES O'Bʀɪᴇɴ , A178501

x=>(n="=>[[["|x|"##r(###f#n###;##")|n?Math.pow("#<1##].c####t.##pl##[####nc#"|10,"y([###(###(#]###)"|x-1|``):0|`#h####`

मुझे यकीन है कि वास्तविक कोड इस से एक पेचीदा अनुक्रम उत्पन्न करता है, लेकिन सिर्फ दो आउटपुट के साथ, यह OEIS अनुक्रम सरल है और उनसे मेल खाता है।

सभी उपेक्षित पात्रों के बिना, एल्गोरिथ्म बस है x=>x?Math.pow(10,x-1):0


2

05AB1E , 5 बाइट्स, लुइस मेंडो , A051696

कोड:

Ðms!¿

स्पष्टीकरण:

Ð      # Triplicate input.
 m     # Power function, which calculates input ** input.
  s    # Swap two top elements of the stack.
   !   # Calculate the factorial of input.
    ¿  # Compute the greatest common divisor of the top two elements.

तो, मूल रूप से यह gcd (n !, n n ) की गणना करता है, जो है A051696 है

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




2

पीएचपी, 137 बाइट्स, इंसुसरनमेयर , ए 1000959

कोड:

for($s=range(1,303);$i<($t=count($s));$s=array_merge($s))for($j=($k=++$i==1?2:$s[$i-1])-1;$j<$t;$j+=$k )unset($s[$j]);echo$s[$argv[1]-1];

आउटपुट:

a(3)  =   7
a(7)  =  21
a(23) =  99

अच्छी तरह से किया। आपका स्रोत थोड़ा अलग है और आपने एक बाइट भी बचाई है। :)
8::





1

पायथ , 70 बाइट्स, फ़्लिफ़े , A070650

कोड (नीचे obfuscated संस्करण के साथ):

DhbI|qb"#"qb"#"R!1Iqb"#";=^Q6+""s ]%Q27  ;.qlY+Q1Ih+""Z##;.q)=Z+Z1;@YQ
DhbI|qb"#"qb"#"R!1Iqb"#"#####+""s####2###;##lY+Q1Ih+""Z#####)=Z+Z1;@YQ (obfuscated)

यह मूल रूप से करता है:

=^Q6%Q27

यह a (n) = n 6 % 27 की गणना करता है, जो A070650 है । स्पष्टीकरण:

=^Q6       # Assign Q to Q ** 6
    %Q27   # Compute Q % 27
           # Implicit output

इसे यहाँ आज़माएँ


उफ़, यह एक नहीं है। मैंने अपना जवाब एक और एक के साथ अद्यतन किया
FliiFe

नियमों से, यह मान्य है। बधाई !
फ्लिफी

मुझे लगता है कि मैं आपको अब अनुक्रम बता सकता हूं, यह A007770 (0-अनुक्रमित) है
FliiFe

@ फ़लीफ़े ओह, मैंने कभी अनुमान नहीं लगाया होगा कि: पी
अदनान

वास्तव में, यदि आप अनुक्रम जानते हैं, तो यह आसानी से देखने योग्य है, लेकिन यदि आप नहीं करते हैं, तो यह वास्तव में कठिन हो जाता है
FliiFe

1

अजगर, 108, CAD97 , A005132

def a(n):
 if n == 0: return 0
 f=a(n-1)-n
 return f if f>0 and not f in(a(i)for i in range(n))else a(n-1)+n

ओफ़्फ़ुसेटेड कोड:

def a(n):
 ###n####0######n#0
 f=a#######
 return f #f#####a###### f ####a(##f###i#i###a####n##else a#######

आउटपुट:

>>> a(0)
0
>>> a(4)
2
>>> a(16)
8
>>> a(20)
42

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