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.