N + 1 দিয়ে এন প্রতিযোগিতা করা


44

ভূমিকা

OEIS ক্রম A127421 হ'ল সংখ্যার ক্রম যার দশমিক বিস্তৃতি ধারাবাহিকভাবে 2 ক্রমবর্ধমান অ-নেতিবাচক সংখ্যার সংমিশ্রণ। সহজভাবে বললে ক্রমানুসারে প্রতি NUMBER একসঙ্গে নির্বাণ দ্বারা গঠিত এন সঙ্গে এন +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, 2526, 2627, 2728, 2829, 2930, 3031, 3132, 3233, 3334, 3435, 3536, 3637, 3738, 3839, 3940, 4041, 4142, 4243, 4344, 4445, 4546,…

চ্যালেঞ্জ

একটি একক ধনাত্মক পূর্ণসংখ্যা n দেওয়া , ক্রমবর্ধমান ক্রমে OEIS ক্রম A127421 এর প্রথম এন এন্ট্রিগুলি মুদ্রণ করুন ।

  • ইনপুট এবং আউটপুট যে কোনও গ্রহণযোগ্য বিন্যাসে হতে পারে । স্ট্রিং বা সংখ্যা আউটপুট জন্য জরিমানা।
  • শীর্ষস্থানীয় শূন্যগুলি অনুমোদিত নয়
  • হয় একটি সম্পূর্ণ প্রোগ্রাম বা ফাংশন অনুমোদিত হয়।
  • এই চ্যালেঞ্জের উদ্দেশ্যে, এন ইতিবাচক এবং 100 এর নিচে হবে।
  • স্ট্যান্ডার্ড লুফোলগুলি ডিফল্টরূপে অনুমোদিত নয়।
  • এই প্রশ্নটি কোড গল্ফ, তাই সর্বনিম্ন বাইট-কাউন্ট জেতা।
  • এখানে কিছু নমুনা ইনপুট এবং আউটপুট দেওয়া হচ্ছে:

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

আপনার যদি কোনও প্রশ্ন থাকে তবে জিজ্ঞাসা করতে দ্বিধা করবেন না। শুভকামনা।

পিএস এটি আমার প্রথম চ্যালেঞ্জ, সুতরাং আশা করি এটি সমস্ত অর্থবোধ করে।

সম্পাদনা: সংখ্যা বা স্ট্রিংগুলিকে অনুমতি দেওয়ার জন্য আউটপুট সীমাবদ্ধতা সরানো হয়েছে।


1
এটি 0 সূচকযুক্ত হতে পারে?
জো কিং

3
এটি এখনও কেউ বলেনি, তবে পিপিসিজিতে আপনাকে স্বাগতম! প্রথম প্রথম প্রশ্ন, খুব কঠিন নয়, তবুও সম্পূর্ণ তুচ্ছ নয়, এবং বিভিন্ন পদ্ধতি রয়েছে
জো কিং

3
7 দিন পরে, আমি এই সংক্ষিপ্ত উত্তরটি গ্রহণ করব যা এই সমস্ত মানদণ্ডগুলিতে মেলে। কেন চ্যালেঞ্জটি শেষ হওয়ার দরকার আছে?
এরিক আউটগল্ফার

2
আজকাল আমরা একটি উত্তর গ্রহণ না করার ঝোঁক করি কারণ এটি উত্তর পোস্ট করা আরও নিরুৎসাহিত করে। আমি মনে করি আপনি একটি মডেল হিসাবে পুরানো চ্যালেঞ্জ গ্রহণ করেন (যা নিরুৎসাহিতও করা হয়) কখন-লেখার-চ্যালেঞ্জগুলি-এড়ানো-এড়াতে
ব্যবহারকারী 202729

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

আউটগল্ফড ডেনিস!
Okx

10

আর , 32 বাইট

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

এটি অনলাইন চেষ্টা করুন!

মিকিটি আউটগল্ফড , সুতরাং উত্তরটি উপরে যান!


স্ট্রিংগুলিকে অনুমতি দেওয়ার জন্য একটি সম্পাদনা হয়েছে ... আরআরটিইয়ের দরকার নেই!
জেসি

2
@ জাইসি 0প্রথম আউটপুট থেকে অগ্রণী কেড়ে নেওয়া দরকার ।
জিউসেপে 16

আপনি [-1]ব্যবহার না করে শেষ করে শীর্ষস্থানীয় শূন্যটি মুছে ফেলতে পারেন না strtoiযে কোনও প্রান্তের ক্ষেত্রে বা অন্য ক্ষেত্রে ব্যর্থ হয়?
জেডিএল

@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 দিয়ে 0 থেকে n-1 সীমাটি জিপ করে, তারপরে প্রতিটি উপাদানকে একটি সংখ্যায় জোর করতে এবং 0 টি শীর্ষস্থানীয় মুছে ফেলার জন্য 0 যুক্ত করে।


5

আর , 30 29 বাইট

@ জিউসেপ্পকে একটি অতিরিক্ত বাইট ধন্যবাদ

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

এটি অনলাইন চেষ্টা করুন!

nchar()পরিবর্তে ব্যবহার ব্যতীত একটি বেশিরভাগ গাণিতিক সমাধান floor(log10())। আমি সত্যিই বিস্মিত হয়েছিলাম যে এটি স্ট্রিং সংস্করণের চেয়ে স্বল্পতায় এসেছে ।


29 বাইট! এই উপর দুর্দান্ত কাজ, আমি এটি কখনও চিন্তা করতে হবে না!
জিউসেপে

@ জিউসেপ্প অতিরিক্ত বাইটের জন্য ধন্যবাদ
মিকিটি

4

এপিএল (ডায়ালগ) , 13 12 বাইট

1 ফেরাউনফ্রোগের জন্য বাইট সংরক্ষিত হয়েছে

(⍎⍕,∘⍕1∘+)¨⍳

এটি অনলাইন চেষ্টা করুন!


বাহ, আমাদের উত্তরগুলি বাঁধা
Zacharý

@ Zachary পুলিশের যদিও :) আরো APLish হয়
ঊরীয়েল

1 টি সংরক্ষণ করুন:(⍎⍕,∘⍕1∘+)¨⍳
ফ্রাউনফ্রগ


4

পাইথন 2 , 42 41 বাইট

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

এটি অনলাইন চেষ্টা করুন!

রিকার্সিভ ফাংশন যা স্ট্রিং এবং পূর্ণসংখ্যার একটি মিশ্র তালিকা দেয়


আপনি কি "বেনামে ফাংশন যা একটি তালিকা ফিরিয়ে দেয়" মূল বিবরণটি সম্পাদনা করার পরিকল্পনা নিয়েছিল?
ফল ফলবান

নিবন্ধন করুন ধন্যবাদ
জো কিং

সম্ভবত আমি কিছু মিস করছি তবে এটি দ্বিতীয় উপাদান হিসাবে '12' বলে মনে হচ্ছে না।
এলপেড্রো 8

2
@ এলপিড্রো এটি দিয়ে বাইট সংরক্ষণ করে ঠিক করা যেতে পারেn and
মিঃ এক্সকোডার

1
এটি প্রায়শই নয় যে কোনও
স্থিরতা


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 এর চেয়ে বড়।

দ্য !যতদিন যেমন গ্রাফ উপর প্রয়োগ করা যেতে পারে এই নিয়ম executes, তাই এই ক্ষেত্রে এটি চালানো থাকবে যতক্ষন না এক্স 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]

এখানে চেষ্টা করুন

অসম্পূর্ণ সংস্করণ

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তারা উভয় একই জিনিস করে। আমি <ইন .. <কে এটিকে ১. রূপান্তর করে কমিয়ে আনার একটি উপায় সম্পর্কে ভাবতে চেষ্টা করেছি তবে আমার মনে হয় না যে এটি আরও কম হবে।


পিপিসিজিতে আপনাকে স্বাগতম; প্রথম প্রথম পোস্ট! পার্সিং সম্পর্কিত a+++b, এই পরীক্ষাটি বোঝায় যে এটি বাম থেকে ডানে, অর্থ অর্থ পার্স করা হয়েছে (a++)+b
জোনাথন ফ্রেচ

3

সি (জিসিসি) , 44 43 বাইট

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

এটি অনলাইন চেষ্টা করুন!


@DLosc %m$বিন্যাস সুনির্দিষ্টভাবে উল্লেখ করা "পছন্দসই যুক্তির যুক্তি তালিকায় অবস্থান, ইন্ডেক্স 1 থেকে শুরু উল্লেখ করে" ( printf(3)মানুষ পৃষ্ঠা) । আপনার সি লাইব্রেরি যতক্ষণ সমর্থন করে ততক্ষণ এটি বেশ সহজ!
এরিকএফ

ধন্যবাদ ... তবে আমি এখনও বিভ্রান্ত হয়েছি কেন %d%d(এবং যুক্তির ক্রম স্যুইচ করা) কাজ করে না। (আমি চেষ্টা করেছিলাম, তবে কেন এটির আউটপুট তৈরি হয় না জানি না))
ডিএলকাস

@ ডিএলকাস আপনি যদি ফর্ম্যাট স্ট্রিংটি পরিবর্তন করেন তবে তার পরে অফসেটটি পরিবর্তন করার বিষয়টি নিশ্চিত করুন (উদাহরণস্বরূপ " %d%d"হওয়া উচিত +3*!f(i); অন্যথায়, স্ট্রিংয়ের শেষে +5 অফসেটটি
NUL- এ নির্দেশ করে

ওহ, ঠিক আছে - আমি শেষ পর্যন্ত এটি পেয়েছি: "# 2, তারপরে # 1" প্রয়োজনীয় কারণ বেস ক্ষেত্রে, সংক্ষিপ্ত বিন্যাসের স্ট্রিংটি কেবল "# 1" হয়ে যায় এবং তাই আপনার প্রথম প্রিন্টফ যুক্তিটি হওয়া দরকার i+1, না i। অনেক আগ্রহব্যাঞ্জক.
DLosc

3

পাইথ , 9 8 6 বাইট

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
ওয়েলকমকে পিপিসি! :)
শেগি

@ শেগি আপনাকে ধন্যবাদ, এটি আমার প্রথমবার এটি করা।
u_nd परिभाषित






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_nd परिभाषित


2

সি # (ভিজ্যুয়াল সি # ইন্টারেক্টিভ সংকলক) , 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}");}

রিলিজ


নোট

  • না

1
সি # ইন্টারেক্টিভ কম্পাইলারের জন্য স্থিতিশীল আমদানি রয়েছে System.Console। সুতরাং আপনি এটি সরিয়ে 15 বাইট সংরক্ষণ করতে পারেন।
রাজনগুল

রাইট! তাদের ব্যবহার করার অভ্যাস
অহমান

এছাড়াও আপনি মুছে ফেলতে পারেন Console.: টিআইও
রাজনগুল


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 বাইট: ধন্যবাদ অ্যাডমবর্কবার্ক

পরীক্ষার স্ক্রিপ্ট:

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

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

1
1.."$args"পরিবর্তে আপনি একটি বাইট করছেন সংরক্ষণ করতে পারেন ।
অ্যাডমবর্কবার্ক



2

জাভাস্ক্রিপ্ট, 44 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 বাইট সংরক্ষণ করা হয়েছে .keys()


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.