एन + 1 के साथ समवर्ती एन


44

परिचय

OEIS अनुक्रम A127421 संख्याओं का अनुक्रम है, जिसका दशमलव विस्तार 2 लगातार बढ़ते गैर-ऋणात्मक संख्याओं का एक संयोजन है। बस रखो, अनुक्रम में हर संख्या एक साथ रख कर बनाई है n के साथ n + 1 कुछ गैर नकारात्मक के लिए, का मान पूर्णांक एन । पहले कई शब्द हैं:

1, 12, 23, 34, 45, 56, 67, 78, 89, 910, 1011, 1112, 1213, 1314, 1415, 1516, 1617, 1718, 1819, 1920, 2021, 2122, 2223, 2324, 2425, 2425 २५२६, २६२30, २ ,२,, २ ,२ ९, २ ९ ३०, ३१३१, ३३३३, ३३३३, ३३३३, ३३३४, ३५३६, ३५३६, ३ 35३,, ३ ,३,, ३ ,३ ९, ४०४१, ४१४२, ४२४३, ४३४४, ४४४५, ४५४६, ...

चुनौती

एक सकारात्मक पूर्णांक n को देखते हुए , बढ़ते क्रम में OEIS अनुक्रम A127421 की पहली n प्रविष्टियाँ प्रिंट करें ।

  • इनपुट और आउटपुट किसी भी स्वीकार्य प्रारूप में हो सकते हैं । आउटपुट के लिए स्ट्रिंग्स या नंबर ठीक हैं।
  • अग्रणी शून्य की अनुमति नहीं है
  • या तो एक पूर्ण कार्यक्रम या फ़ंक्शन की अनुमति है।
  • इस चुनौती के प्रयोजनों के लिए, n सकारात्मक होगा और 100 से कम होगा।
  • मानक कमियां डिफ़ॉल्ट रूप से अस्वीकृत हो जाती हैं।
  • यह प्रश्न कोड गोल्फ है, इसलिए सबसे कम बाइट-काउंट जीतता है।
  • यहाँ कुछ नमूना इनपुट और आउटपुट है:

    1 => 1
    2 => 1, 12
    3 => 1, 12, 23
    10 => 1, 12, 23, 34, 45, 56, 67, 78, 89, 910
    

यदि आपके कोई प्रश्न हैं, तो पूछने में संकोच न करें। सौभाग्य।

पुनश्च यह मेरी पहली चुनौती है, इसलिए उम्मीद है कि यह सब समझ में आता है।

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


1
क्या इसे 0 अनुक्रमित किया जा सकता है?
जो किंग

3
किसी ने भी यह नहीं कहा, लेकिन पीपीसीजी में आपका स्वागत है! अच्छा पहला सवाल, बहुत कठिन नहीं, फिर भी पूरी तरह से या तो तुच्छ नहीं है, और कई अलग-अलग दृष्टिकोण हैं
जो किंग

3
7 दिनों के बाद, मैं सबसे छोटा उत्तर स्वीकार करूंगा जो इन सभी मानदंडों को पूरा करता है। चुनौती को समाप्त करने की आवश्यकता क्यों है?
निकोल

2
आजकल हम एक उत्तर को स्वीकार नहीं करते हैं, क्योंकि यह उत्तर की और पोस्टिंग को हतोत्साहित करता है। मुझे लगता है कि आप एक मॉडल के रूप में पुरानी चुनौतियों को लेते हैं (जो भी हतोत्साहित किया जाता है) चीजों को देखने से बचें-जब-तब लेखन-चुनौतियां
user202729

2
@ डेनिस ठीक है, मैं चुनौती से तारीख हटा दूँगा; शायद मैं स्वीकार करता हूँ जब कोई और नए जवाब नहीं आ रहे हैं।
उभयलिंगी जूल

जवाबों:


13

जेली , 3 बाइट्स

ŻVƝ

एक पूर्णांक लिंक जो एक पूर्णांक को स्वीकार करता है जो पूर्णांक की एक सूची देता है

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

कैसे?

ŻVƝ - Link: integer       e.g. 59
Ż   - zero-range               [0,1,2,3,4,5,6, ... ,58,59]
  Ɲ - apply to each pair: i.e: [0,1] or [5,6]  or  [58,59]
 V  -   evaluate* jelly code   1     or 56     or  5859
    -                       -> [1,12,23,45,56, ... 5859]

* When given a list V actually joins the Python string values and evaluates that
  ...so e.g.: [58,59] -> ['58','59'] -> '5859' -> 5859

बहिष्कृत डेनिस!
ओकेक्स

10

आर , 32 बाइट्स

strtoi(paste0((x=1:scan())-1,x))

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

मिकटी द्वारा बहिष्कृत , तो उस उत्तर को बढ़ाएं !


स्ट्रिंग्स की अनुमति देने के लिए एक संपादन किया गया है ... स्ट्रैटो की कोई आवश्यकता नहीं है!
JayCe

2
@JayCe 0को पहले आउटपुट से अग्रणी बनाना आवश्यक है ।
ग्यूसेप

क्या आप [-1]उपयोग करने के बजाय समाप्त होने वाले शून्य को हटा नहीं सकते थे strtoiया जो किसी किनारे मामले या अन्य में विफल रहता है?
JDL

@JDL strtoiका उपयोग इस से बदलने के लिए किया जा रहा "01"है 1क्योंकि हम paste0वापस लौट आएंगे c("01","12","23","34",...)और हमें लौटने की अनुमति नहीं है "01"
ग्यूसेप

1
@CriminallyVulgar दुर्भाग्य से जो इनपुट के लिए विफल हो जाएगा1
Giuseppe


8

हास्केल, 38 37 बाइट्स

f n=("":)>>=zipWith(++)$show<$>[1..n]

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

एक बाइट के लिए कैट विज़ार्ड का धन्यवाद !


जहां तक ​​गोल्फ जाता है, आप इसके <$>विकल्प के रूप में भी उपयोग कर सकते हैं map, जिसे संक्रमित किया जा सकता है।
गेहूं जादूगर

7

क्यूबिक्स , 19 बाइट्स

I.1.W)>OSo;u.uO;@!-

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

यह निम्नानुसार क्यूब पर लपेटता है

    I .
    1 .
W ) > O S o ; u
. u O ; @ ! - .
    . .
    . .

यह देखो भागो

अभी तक खेलने के लिए एक छोटा कमरा मिला है, लेकिन इस समय

  • W शीर्ष मुख के नीचे पुनर्निर्देशित करें
  • I1> इनपुट के साथ स्टैक सेट करें और 1 फिर मुख्य लूप में रीडायरेक्ट करें
  • OSo;u स्टैक के शीर्ष पर आउटपुट, स्टैक के लिए स्थान जोड़ें, आउटपुट, निकालें और यूटर्न
  • -!@;Ou)इनपुट से टीआई को घटाएं, यदि 0 पॉप अप परिणाम, आउटपुट टीओएस, यूटर्न और इंक्रीमेंट टीओएस। मुख्य पाश में वापस।

7

पर्ल 6 , 19 18 बाइट्स

{(^$_ Z~1..$_)X+0}

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

बेनामी कोड ब्लॉक जो कि 1 से n के बीच 1 से n तक के कॉन्टेक्शन ऑपरेटर का उपयोग करके ज़िप करता है, फिर इसे जोड़ने के लिए हर तत्व को 0 से जोड़ता है और लीड 0 को हटाता है।


5

आर , 30 29 बाइट्स

@Giuseppe के लिए एक अतिरिक्त बाइट धन्यवाद

10^nchar(n<-1:scan())*(n-1)+n

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

इसके nchar()बजाय का उपयोग करने के अलावा, ज्यादातर गणितीय समाधान floor(log10())। मैं वास्तव में आश्चर्यचकित था कि यह स्ट्रिंग संस्करण की तुलना में कम है ।


29 बाइट्स! इस पर अच्छा काम, मैंने कभी नहीं सोचा होगा!
Giuseppe

अतिरिक्त बाइट के लिए @Giuseppe धन्यवाद।
मिकट



4

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

f=lambda n:n-1and f(n-1)+[`n-1`+`n`]or[1]

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

पुनरावर्ती फ़ंक्शन जो स्ट्रिंग्स और पूर्णांकों की मिश्रित सूची देता है


क्या आपने मूल विवरण "अनाम फ़ंक्शन जो किसी सूची को लौटाता है" को संपादित करने का इरादा किया था?
बजे फलों के जूल

@EsolangingFruit ऊप्सी, तय! धन्यवाद
जो राजा

शायद मुझे कुछ याद आ रहा है, लेकिन यह '12' दूसरे तत्व के रूप में नहीं है।
एलपेड्रो

2
@ElPedro के साथ एक बाइट को बचाकर तय किया जा सकता हैn and
श्री एक्सकोडर

1
यह अक्सर नहीं है कि एक फिक्स बाइट्स बचाता है :-)
ElPedro


4

ब्लॉसम , 88 बाइट्स

rule e<int x>[1(x)]=>[1(x-1),2(str(x)+str(x+1))|1->2];rule c[1(0),2|1->2]=>[2("12")];e!c

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

कोड का एक निर्विवाद संस्करण यह है:

rule expand <int x>
    [ 1 (x) ]
 => [ 1 (x-1), 2(str(x)+str(x+1)) | 1->2 ]
where x > 0;

rule clean
    [ 1 (0), 2 ("12") | 1->2 ]
 => [ 2 ("12") ];

expand! clean

यह दो नियमों को परिभाषित करता है: एक कहा जाता है expand, जो (जबकि वर्तमान ग्राफ में एक पूर्णांक-मूल्यवान लेबल के साथ एक नोड है) अपने वेतन वृद्धि के साथ एक और नोड बनाता है, और मूल्य को कम करता है। यह इन दो नोड्स के बीच एक बढ़त भी बनाता है। इस नियम में यह भी शर्त है कि x 0 से अधिक है।

!लंबे समय के रूप के रूप में यह ग्राफ पर लागू किया जा सकता के लिए इस नियम को निष्पादित करता है, तो इस मामले में यह निष्पादित करेंगे जब तक एक्स 0. और फिर हैclean नियम इस 0 नोड और अपनी बढ़त को हटा।

खिलना गोल्फ के लिए नहीं बनाया गया था, लेकिन यह बहुत बुरी तरह से नहीं करता है, मुझे नहीं लगता है। वर्तमान में लोगों के लिए ब्लॉसम कोड का परीक्षण करने का एक आसान तरीका नहीं है (और इस समय मैं जिस पर काम कर रहा हूं, वह काफी समाप्त नहीं हुआ है और थोड़ी छोटी है), लेकिन यह बिल्कुल एक प्रतिस्पर्धी प्रविष्टि नहीं है!



3

शेक्सपियर , 703 बाइट्स

Q.Ajax,.Ford,.Act I:.Scene I:.[enter Ajax and Ford]Ford:Open mind!Scene V:.Ajax:You is the sum of thyself the sum of myself the sum of a big bad fat old red pig a big bad fat old lie!Ford:Open mind!Is you nicer zero?Ajax:If so, you is twice the sum of the sum of twice thyself twice thyself thyself!If so,Let us Scene V!Ford:You a cat!Open heart!Scene X:.Ajax:You is the sum of thyself a pig!Is you worse than a cat?If so,let us Scene C.Remember thyself.You is the sum of the sum of a big old red cute rich cat a big old red cute joy a big old pig!Speak mind!You is a big old red cute rich cat!Speak mind!Recall!Ford:Open heart!You is the sum of thyself a joy!Open heart!Let us Scene X.Scene C:.[exeunt]

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

ungolfed संस्करण

127421th Night.
Ajax, likes to read the stars.
Ford, someone Ajax can always count on.
Act I:.
Scene I: Ajax reads a star.
[enter Ajax and Ford]
Ford: Open your mind! 
Scene V: Ford counts what ajax has learned.
Ajax: you are the sum of thyself and the sum of myself and the sum of a big bad fat old red pig and a big bad fat old lie!
Ford: Open Your mind! Are you nicer than zero?
Ajax: If so, you are twice the sum of the sum of twice thyself and twice thyself and thyself! 
If so, Let us Scene V!
Ford: You are a cat! Open your heart!

Scene X: Ajax and Ford recall the nights.
Ajax: You are the sum of thyself and a pig! Are you worse than a cat? If so, Let us Scene C.
Remember thyself. 
You are the sum of the sum of a big old red cute rich cat and a big old red cute joy and a big old pig! 
Speak you mind!
You are a big old red cute rich cat! Speak your mind! Recall your finest hour!
Ford: Open your heart! You are the sum of thyself and a joy! Open your heart! Let us Scene X.
Scene C: Fin.
[exeunt]

3

ग्रूवी , 35 बाइट्स

{(0..<it)*.with{""+it+++it as int}}

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

मैं अंतिम बार * .कल के बजाय * के उपयोग के विचार के साथ आया था। मुझे नहीं पता कि क्या it+++itमायने रखता है लेकिन क्या यह it++ + itया it + ++itवे दोनों एक ही काम करते हैं। मैंने इसमें से छुटकारा पाने के तरीके के बारे में सोचने की कोशिश की। <इसे 1 में बदलकर। इसे हटा दें लेकिन मुझे नहीं लगता कि यह कम हो जाएगा।


PPCG में आपका स्वागत है; अच्छी पहली पोस्ट! पार्सिंग के बारे में a+++b, यह परीक्षण बताता है कि इसे बाएं से दाएं, अर्थ से पार्स किया गया है (a++)+b
जोनाथन फ्रीच

3

सी (जीसीसी) , 44 43 बाइट्स

f(i){i--&&printf(" %2$d%d"+5*!f(i),i+1,i);}

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


@ डॉकल %m$प्रारूप निर्दिष्ट करता है "वांछित तर्क की तर्क सूची में स्थिति को दर्शाता है, 1 से शुरू अनुक्रमित" ( printf(3)मैन पेज) । यह बहुत आसान है जब तक आपकी सी लाइब्रेरी इसका समर्थन करती है!
ErikF

धन्यवाद ... लेकिन मैं अभी भी उलझन में हूं कि %d%d(और तर्कों के क्रम को बदलकर) काम क्यों नहीं करता। (मैं इसे करने की कोशिश की, लेकिन पता नहीं क्यों यह कोई उत्पादन नहीं पैदा करता है।)
DLosc

यदि आप प्रारूप स्ट्रिंग को बदलते हैं, तो इसके बाद ऑफसेट को बदलना सुनिश्चित करें (जैसे " %d%d"होना चाहिए +3*!f(i), अन्यथा, स्ट्रिंग के अंत में +5 ऑफसेट NUL को इंगित करता है।)
ErikF

ओह, ठीक है - मैं अंत में इसे प्राप्त करता हूं: "# 2, फिर # 1" आवश्यक है क्योंकि आधार मामले में, छोटा प्रारूप स्ट्रिंग सिर्फ "# 1" बन जाता है और इसलिए आपको होने वाले पहले प्रिंटफ तर्क की आवश्यकता है i+1, नहीं i। बहुत ही रोचक।
DLosc

3

अजगर , 9 ६ बाइट्स

ms+`dh

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

स्पष्टीकरण:

       - implicit output
m      - map function with argument d:
  +    -  concatenate
    d  -  argument d
   `   -  to string
     h -  into implicit d + 1
       - into Q (implicit input)

1
PPCG के लिए वेलकम! :)
झबरा

@ शगुन शुक्रिया, ऐसा करने का यह मेरा पहला मौका है।
u_ndefined 13:18 पर



2

05AB1E , 6 बाइट्स

>GNJ,N

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

व्याख्या

>G       # for N in [1 ... input]
  N      # push N
   J     # join stack
    ,    # print
     N   # push N (for next iteration)

LεD<ìï एक ही बाइट गिनती के लिए काम करेगा लेकिन सूची उत्पादन के साथ




2

जाप -m , 6 5 बाइट्स

ó2 ¬n

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

हमेशा की तरह, झंडे को जानें

अनपैक्ड और यह कैसे काम करता है

-m       Convert to range and map...

Uó2 q n
Uó2      Construct [U, U+1]
    q    Join
      n  Convert to number

         Implicit output (Array is printed as comma-delimited values)

5 बाइट्स । पता नहीं क्यों óयहाँ के बिना काम नहीं करता है 2
झबरा

मेरे पास 2 अन्य 5 बाइट समाधान हैं (दोनों एक ही विधि का उपयोग कर रहे हैं) जो किसी ध्वज का उपयोग नहीं करते हैं, अगर कोई और उन पर एक छुरा लेना चाहता है।
झबरा

मुझे लगता है कि झंडे की वजह से 5 + 2 = 7 बाइट्स?
u_ndefined


2

C # (विजुअल C # इंटरएक्टिव कंपाइलर) , 103 71 64 56 बाइट्स


गोल्फ ऑनलाइन यह कोशिश करो!

i=>{for(int x=0;x<i;)Write($"{(x>0?$",{x}":"")}{++x}");}

Ungolfed

i => {
    for( int x = 0; x < i; )
        Write( $"{( x > 0 ? $",{x}" : "")}{ ++x }" );
}

पूर्ण कोड

Action<Int32> a = i => {
    for( int x = 0; x < i; )
        Write( $"{( x > 0 ? $",{x}" : "")}{ ++x }" );
    };

Int32[]
    testCases = new Int32[] {
        1,
        2,
        3,
        10,
    };

foreach( Int32[] testCase in testCases ) {
    WriteLine( $" Input: {testCase}\nOutput:" );
    a(testCase);
    WriteLine("\n");
}

पुराने संस्करण:

  • v1.2, 64 बाइट्स

    i=>{for(int x=0;x<i;)Write($"{(x>0?$",{x}":"")}{++x}");}
  • v1.1, 71 बाइट्स

    i=>{for(int x=0;x<i;)System.Console.Write($"{(x>0?$",{x}":"")}{++x}");}
  • v1.0, 103 बाइट्स

    i=>{for(int x=0;x<i;)System.Console.Write($"{(x>0?",":"")}{x++*System.Math.Pow(10,$"{x}".Length)+x}");}

विज्ञप्ति

  • v1.3 - - 8 bytes- raznagulConsole को फिर से धन्यवाद हटा दिया गया
  • v1.2 - - 7 bytes- raznagulSystem के लिए धन्यवाद हटा दिया गया
  • v1.1 --32 bytes
  • v1.0 - 103 bytes- प्रारंभिक समाधान।

टिप्पणियाँ

  • कोई नहीं

1
C # इंटरएक्टिव कंपाइलर के लिए स्थैतिक आयात है System.Console। तो आप इसे हटाकर 15 बाइट्स बचा सकते हैं।
रज़्नगुल

सही! उनका उपयोग करने की आदत
auhmaan

आप यह भी निकाल सकते हैं Console.: TIO
raznagul


2

एबीएपी, 101 बाइट्स

वास्तव में एक गोल्फ भाषा नहीं है, लेकिन मैं इसके साथ बहुत मज़ा कर रहा हूं

WHILE x<w.
CLEAR z.
IF x=1.
WRITE x.
ELSE.
CONCATENATE y x INTO z.
WRITE z.
ENDIF.
y=x.
x=x+1.
ENDDO.

डब्ल्यू इनपुट शब्द है, एक्स 1 से काउंटर है, वाई दूसरी तरफ से एक्स -1 है, आगे से जेड स्ट्रिंग है।


2

पॉवर्सशैल, 27 26 बाइट्स

1.."$args"|%{"$p$_";$p=$_}

-1 बाइट: धन्यवाद AdmBorkBork

टेस्ट स्क्रिप्ट:

$f = {
1.."$args"|%{"$p$_";$p=$_}
}

&$f 1
""
&$f 2
""
&$f 3
""
&$f 10
""
&$f 46

1
आप 1.."$args"इसके बजाय एक बाइट कर बचा सकते हैं ।
AdmBorkBork



2

जावास्क्रिप्ट, 43 44,46,49,53 बाइट्स

n=>[...Array(n)].map((_,a)=>~~(a+(a+1+"")))

पिछला संस्करण :

n=>[...Array(n)].map((_,a)=>~~(a+(""+ ++a)))
n=>[...Array(n)].map((_,a)=>0- -(a+(""+ ++a)))
n=>[...Array(n).keys()].map(a=>0- -(a+(""+ ++a)))
n=>[...Array(n).keys()].map(a=>parseInt(a+(""+ ++a)))

3 बाइट्स @ Shaggy के समाधान (जो मेरा से बेहतर है) को निकालने के लिए धन्यवाद .keys()


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