Szekeres এর ক্রম


9

সংজ্ঞা

  • a(1) = 1
  • a(2) = 2
  • a(n)এটি সর্বনিম্ন সংখ্যা k>a(n-1)যা কোনও 3-মেয়াদী গাণিতিক অগ্রগতি এড়ায় a(1), a(2), ..., a(n-1), k
  • অন্য কথায়, a(n)ক্ষুদ্রতম সংখ্যা k>a(n-1)যেমন বিদ্যমান নয় যে x, yযেখানে 0<x<y<nএবং a(y)-a(x) = k-a(y)

উদাহরণস্বরূপ কাজ

এর জন্য n=5:

আমাদের আছে a(1), a(2), a(3), a(4) = 1, 2, 4, 5

যদি a(5)=6, তবে 2, 4, 6একটি গাণিতিক অগ্রগতি গঠন করুন।

যদি a(5)=7, তবে 1, 4, 7একটি গাণিতিক অগ্রগতি গঠন করুন।

যদি a(5)=8, তবে 2, 5, 8একটি গাণিতিক অগ্রগতি গঠন করুন।

যদি a(5)=9, তবে 1, 5, 9একটি গাণিতিক অগ্রগতি গঠন করুন।

যদি a(5)=10, কোনও গাণিতিক অগ্রগতি খুঁজে পাওয়া যায় না।

অতএব a(5)=10

কার্য

দেওয়া n, আউটপুট a(n)

চশমা

  • n ধনাত্মক পূর্ণসংখ্যা হবে।
  • আপনি 1-ইনডেক্সের পরিবর্তে 0-সূচক ব্যবহার করতে পারেন, যে ক্ষেত্রে nহতে পারে 0। আপনি যদি 0-ইনডেক্সড ব্যবহার করেন তবে দয়া করে আপনার উত্তরে এটি লিখুন।

স্কোরিং

যেহেতু আমরা 3-মেয়াদী গাণিতিক অগ্রগতি এড়াতে চাইছি এবং 3 হ'ল একটি ছোট সংখ্যা, তাই আপনার কোডটি বাইট-কাউন্টের ক্ষেত্রে, যতটা সম্ভব ছোট (অর্থাত্ সংক্ষিপ্ত) হওয়া উচিত।

Testcases

টেস্টকেসগুলি 1-সূচকযুক্ত। আপনি 0-ইনডেক্সড ব্যবহার করতে পারেন তবে দয়া করে যদি আপনার উত্তরটি থাকে তবে তা উল্লেখ করুন।

1     1
2     2
3     4
4     5
5     10
6     11
7     13
8     14
9     28
10    29
11    31
12    32
13    37
14    38
15    40
16    41
17    82
18    83
19    85
20    86
10000 1679657

তথ্যসূত্র


2
সম্পর্কিত। (যদি আমি আপনার চ্যালেঞ্জটি সঠিকভাবে বুঝতে পারি))
মার্টিন এন্ডার

@ মার্টিনএেন্ডার আপনি আমার চ্যালেঞ্জটি সঠিকভাবে বুঝতে পেরেছিলেন।
লিকি নুন

উত্তর:


8

জেলি , 4 বাইট

Bḅ3‘

এটি অনলাইন চেষ্টা করুন! বা সমস্ত পরীক্ষার কেস যাচাই করুন

কিভাবে এটা কাজ করে

এটি 0-ভিত্তিক সূচক এবং ওইআইএসের প্রাথমিক সংজ্ঞা ব্যবহার করে :

Szekeres এর ক্রম: বাইনারি মধ্যে একটি (n) -1 টেরিনারি = এন -1

Bḅ3‘  Main link. Argument: n

B     Convert n to binary.
 ḅ3   Convert from ternary to integer.
   ‘  Increment the result.

6

হাস্কেল, 37 36 32 বাইট

OEIS এন্ট্রিতে প্রদত্ত সূত্রটি ব্যবহার করে 0-ভিত্তিক সূচকগুলি ব্যবহার করে। ধন্যবাদ @ নিমিকে 4 বাইটের জন্য!

a 0=1;a m=3*a(div m 2)-2+mod m 2

3

পাইথন 3, 28 বাইট

lambda n:int(bin(n)[2:],3)+1

একটি বেনামী ফাংশন যা যুক্তির মাধ্যমে ইনপুট নেয় এবং ফলাফলটি দেয়। এটি শূন্য-সূচকযুক্ত।

কিভাবে এটা কাজ করে

lambda n    Anonymous function with input zero-indexed term index n
bin(n)      Convert n to a binary string..
...[2:]     ...remove `0b` from beginning...
int(...,3)  ...convert from base-3 to decimal...
...+1       ...increment...
:...        and return

আইডিয়নে চেষ্টা করে দেখুন



2

রুবি, 28 24 বাইট

0-ভিত্তিক সূচী সহ ডেনিসের মতো একই পদ্ধতি ব্যবহার করা:

->n{n.to_s(2).to_i(3)+1}

Repl.it এ পরীক্ষার কেসগুলি চালান: https://repl.it/Cif8/1



0

জাভা 8, 52 46 বাইট

0 সূচকযুক্ত।

i->Integer.valueOf(Integer.toString(i,2),3)+1;

আপনি প্রয়োজন হবে না returnকিন্তু পরে তুমি আমায় সেমিকোলন প্রয়োজন
লিকি নূনের

এই উত্তর যা বলে যে সেমিকোলনগুলি গণনা করা হয় না; আমি এটি যে কোনও উপায়ে পরিবর্তন করতে পারি, তবে সেমিকোলনগুলি theক্যমতের গণনা করছি?
জাস্টিন

এহ, তারা আমাকে বলেছিল। আমি জানি না theক্যমত্যটি তেমন ছিল কিনা।
ফাঁস নুন

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