ক্ষুদ্রতম অদেখা, তবে ভাগ করে নেওয়ার সংখ্যা নেই!


28

চ্যালেঞ্জ

এখানে পিপিসিজিতে আমরা অবশ্যই আমাদের সিকোয়েন্সগুলি পছন্দ করি, সুতরাং এখানে আরও একটি মজাদার

এর সংজ্ঞায়িত করা যাক a(n)হচ্ছে ক্ষুদ্রতম অ নেতিবাচক পূর্ণসংখ্যা Xযে কোনো সমান নয় a(k)( 0 < k < n), এবং a(n-1)এবং Xকোন দশমিক সংখ্যা ভাগ করবেন না।a(0) = 0

একটি ইনপুট দেওয়া হয়েছে n > 0, যেমন আউটপুট a(n)

উদাহরণস্বরূপ, ইনপুট জন্য n = 13, আমরা a(13) = 20, যেহেতু a(12) = 11এবং 20হয় ক্ষুদ্রতম অ নেতিবাচক পূর্ণসংখ্যা আমরা এখনো দেখা যায় না যে সঙ্গে কোনো দশমিক সংখ্যা ভাগাভাগি করে না 11

ক্রম

আপনাকে শুরু করার জন্য এখানে প্রথম 20 টি শর্ত রয়েছে। এটি OEIS এ ক্রম A067581

0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 22, 11, 20, 13, 24, 15, 23, 14, 25

বিধি

  • ইনপুট এবং আউটপুটটি আপনার ভাষার স্থানীয় সংখ্যার সাথে মানানসই fit
  • ইনপুট এবং আউটপুট যে কোনও সুবিধাজনক বিন্যাসে দেওয়া যেতে পারে ।
  • আপনি আমার তালিকাতে এখানে থাকায় আপনি 0-সূচককে বেছে নিতে পারেন, বা আপনার জমা দেওয়ার জন্য 1-সূচক। আপনি যা করছেন দয়া করে তা জানান।
  • হয় একটি সম্পূর্ণ প্রোগ্রাম বা একটি ফাংশন গ্রহণযোগ্য। যদি কোনও ফাংশন হয় তবে আপনি আউটপুটটি মুদ্রণের পরিবর্তে ফিরিয়ে দিতে পারেন।
  • যদি সম্ভব হয় তবে দয়া করে একটি অনলাইন পরীক্ষার পরিবেশের একটি লিঙ্ক অন্তর্ভুক্ত করুন যাতে অন্য লোকেরা আপনার কোডটি চেষ্টা করে দেখতে পারে!
  • স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ।
  • এটি তাই সাধারণ গল্ফিংয়ের সমস্ত নিয়ম প্রয়োগ হয় এবং সংক্ষিপ্ততম কোড (বাইটে) জয়ী হয়।

আমরা কি ইনপুট হিসাবে n > 1(বা n ≥ 2) পেতে পারি ? (1-ইনডেক্সিং)
এরিক দ্য আউটগল্ফার

পছন্দ করেছেন কপি-পেস্ট করার সময় আমি স্পষ্টতই বুলেট পয়েন্টটি মিস করেছি, কারণ এটি আমার চ্যালেঞ্জগুলির একটি মান।
অ্যাডমবর্কবার্ক

5
ছিটান চক্রান্ত নিশ্চিত চমৎকার :) দেখায়
flawr

উত্তর:



7

জাপট , 18 বাইট

@A{!ZøA «As oX}a}g

এটি অনলাইন পরীক্ষা! আমি gএখানে ব্যবহৃত বৈশিষ্ট্যটি কেবল যুক্ত করেছি , তবে এটি এমন একটি বিষয় যা আমি দীর্ঘকাল ধরে যুক্ত করতে চাইছি (এবং এটি আমাকে ধারে ধাক্কা দিয়েছে, কারণ আমার অ- gসমাধানটি প্রায় 35 বাইটের মধ্যে ছিল)।

ব্যাখ্যা

@   A{!ZøA «  As oX}a}g
XYZ{A{!ZøA &&!As oX}a}gU
                           Implicit: U = input integer
   {                 }gU   Starting with [0, 1], return the U'th item generated by
XYZ{                 }     this function: (X = previous item, Y = index, Z = full array)
    A{             }a        Return the smallest non-negative integer A where
      !ZøA &&                  Z does not contain A (A is not yet in the sequence), and
             !As oX            A.toString() does not contain any of the same chars as X.
                           Implicit: output result of last expression

এতে আমার মাথা খারাপ হয়ে যায়! তবে, তখন আমি জাপটের কোনও ফাংশন পদ্ধতিতে সবে নজরে পড়েছি।
শেগি

প্রশ্নটি দেওয়ার পরে আপনি কি ভাষাতে কিছু যুক্ত করতে পারবেন না এমন ডিফল্ট নিয়মটি নয়? অন্যথায় কেবল সর্বদা একটি নতুন অন্তর্নির্মিত তৈরি করা চ্যালেঞ্জকে সমাধান করে এবং এগুলি সমস্ত ইচ্ছাকৃতভাবে সংক্ষিপ্ত করে তোলে তুচ্ছ।
trlkly

@ ট্রলক্লি আমি বিশ্বাস করি এটি সুবিচারের মধ্যেই অনুমোদিত। আমি অন্তর্নির্মিত যুক্তটি কেবল এই একটি উত্তরের চেয়ে বেশি সাধারণ-উদ্দেশ্য। আমি কাউকে মনে করতে পারে তাত্ত্বিক সম্পূর্ণরূপে একটি বিল্ট-ইন করে সমাধান চ্যালেঞ্জ যোগ করুন, কিন্তু যে ভালো কোন উত্তর নিশ্চিত খুব দুর্বল প্রাপ্ত করা হবে।
ইটিএইচ প্রোডাকশনস 11:58

5

মনে মনে যদি আমি আপনার উত্তরে একটি পরীক্ষা স্যুট যুক্ত করি ?
মিঃ এক্সকডার

@ মিঃ এক্সকোডার এগিয়ে যান।
লিকি নুন

3

হাস্কেল, 79 বাইট

f 0=0
f x=[i|i<-[1..],all((/=i).f)[1..x-1],all(`notElem`show(f$x-1))$show i]!!0

কোডটি মারাত্মকভাবে অক্ষম। বড় মানগুলি গণনা করতে, অর্থাৎ> 12, f x|x<11=xদুটি লাইনের মধ্যে যোগ করুন ( gটিআইও লিঙ্কটিতে একটি প্রয়োগ করা হয়েছে)।

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


1

জাভাস্ক্রিপ্ট (ES6), 82 বাইট

0-ইন্ডেক্স।

f=(n,x=[1,p=0])=>n--?f(x[(g=k=>x[k]||(k+'').match(`[${p}]`)?g(k+1):p=k)(0)]=n,x):p

ডেমো


1

হুশ , 18 বাইট

!¡₁;0
ḟȯ¬V€d→⁰d-⁰N

একটি 1 সূচকযুক্ত সমাধান। এটি অনলাইন চেষ্টা করুন!

সম্পাদনা করুন: +1 বাইটের জন্য স্থির বাগ।

ব্যাখ্যা

হাস্কের অন্তর্নির্মিত পুনরাবৃত্তি ফাংশনের ¡অনেক অর্থ রয়েছে। এখানে, আমি "বিদ্যমানগুলি থেকে বারবার নতুন উপাদান যুক্ত করে অসীম তালিকা তৈরি করছি" ব্যবহার করছি। দ্বিতীয় লাইন হ'ল সহায়ক ফাংশন যা একটি নতুন উপাদানকে গণনা করে:

ḟȯ¬V€d→⁰d-⁰N  Takes a list of existing elements, e.g. x = [0,1,...,10]
           N  The positive integers
         -⁰   with elements of x removed:        [11,12,13,...
ḟȯ            Find an element n of this list that satisfies:
        d     Digits of n.
   V          Is any of them
    €         an element of
     d        the digits of
      →⁰      the last element of x?
  ¬           Negate.
              Returns 22.

প্রথম লাইনটি প্রধান কাজ:

!¡₁;0  Takes an integer k.
 ¡     Iterate adding new elements to the list
   ;0  [0]
  ₁    using the helper function,
!      take k'th element of result.

আমি হসকে গল্ফিং ভাষার তালিকায় যুক্ত করেছি ; যদি আমার কোনও বিবরণ ভুল হয় তবে আমাকে জানান।
ইটিএইচ প্রডাকশনগুলি

1

হাস্কেল, 78 বাইট

n!k|r:_<-[j|j<-[1..],all(/=j)k,all(`notElem`show n)$show j]=n:r!(r:k)
(0![]!!)

এটি আরও কার্যকর হবে যদি দ্বিতীয় যুক্তিটি !দেখা সংখ্যার তালিকা নয় তবে অদৃশ্য সংখ্যাগুলির হয়। তবে আমি আরও বাইট ব্যবহার না করে এটি করতে পারি না।

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


0

গাণিতিক 115 বাইট

এটিকে গল্ফ দেওয়ার জন্য স্থির জায়গা - এবং সম্ভবত পুনরাবৃত্তি ব্যবহার করুন (এভাবে এটি দ্রুত করা হবে)।

(For[z={0};i=1,Length@z<#,
For[i=1,!FreeQ[z,i]||!DisjointQ@@IntegerDigits/@{l,i},i++];
z~AppendTo~i;l=Last@z;
];l)&

একই মূল ধারণা সহ আসল ভার্বোস কোড:

MakeSequenceA067581[n_]:=Module[{list={0}, innerCounter=1},

While[Length@list<n,
innerCounter=1;
(* inner loop *)While[Or[MemberQ[list,innerCounter],Intersection[IntegerDigits[Last@list],IntegerDigits[innerCounter]]!={}],innerCounter++];
AppendTo[list,innerCounter];
];
list
]
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.