এটি কি সুপার-প্রাইম?


22

পটভূমি

একটি সুপার-প্রাইম এমন এক মৌলিক সংখ্যা যার সমস্ত সূচকের তালিকায় সূচকটিও প্রাইম। ক্রমটি এর মতো দেখাচ্ছে:

3, 5, 11, 17, 31, 41, 59, 67, 83, 109, 127, 157, 179, 191, ...

এটি OEIS এর ক্রম A006450

চ্যালেঞ্জ

ধনাত্মক পূর্ণসংখ্যা দেওয়া হয়েছে, এটি সুপার-প্রাইম কিনা তা নির্ধারণ করুন।

পরীক্ষার মামলা

2: মিথ্যা
3: সত্য
4: মিথ্যা
5: সত্য
7: মিথ্যা
11: সত্য
13: মিথ্যা
17: সত্য
709: সত্য
851: মিথ্যা
991: সত্য

স্কোরিং

এটি , তাই প্রতিটি ভাষার সংক্ষিপ্ত উত্তর জিততে পারে।


6
2 এর সূচকটি কী ? এটি 1 বা 0 ?
ডেনিস

1
@ ডেনিস ক্রমটি 1-সূচকযুক্ত; 2 এর সূচকটি হ'ল 1
সঙ্গীতজ্ঞ 523

2
সুপার-প্রাইম কী তা পড়ার পরে প্রথম চিন্তা করেছিলেন: আপনি সুপার-সুপার-প্রাইমগুলি কী বলবেন? বা সুপার ^ 3-প্রাইমস? এর চেয়ে বড় কী, মহাবিশ্বে পরমাণুর সংখ্যা বা ১১ তম সুপার -11-প্রাইম? প্রিয় ইন্টারনেট ব্যক্তি, আপনি আমার প্রাইম টাইমের কয়েক ঘন্টা আরও চুরি করছেন!
J_F_B_M

@ জ_এফ_বি_এম এর ভিত্তিতে একটি চ্যালেঞ্জ তৈরি করুন! : ডি
সঙ্গীতজ্ঞ 523

1
@ জ_এফ_বি_এম ১১ একটি সুপার-প্রাইম যিনি সুপার-প্রাইম তালিকায় সূচকটিও একটি সুপার-প্রাইম (3), তাই 11' তম সুপার-প্রাইম একটি সুপার-সুপার-প্রাইম
স্কিডদেব

উত্তর:


21

জেলি , 5 বাইট

ÆRÆNċ

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

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

ÆRÆNċ  Main link. Argument: n

ÆR     Prime range; yield the array of all primes up to n.
  ÆN   N-th prime; for each p in the result, yield the p-th prime.
    ċ  Count the occurrences of n.

8
খুশী হোন, আপনি আবার জিতবেন ...
ETH প্রোডাকশনগুলি

3
তিনি সর্বদা করেন ...
গ্রিফন - মনিকা

@ এথ প্রডাকশনস ওয়েল, সমাধানটি বেশ সুস্পষ্ট ... এটি এখানে কেবল নিনজা।
এরিক আউটগল্ফার

14

গণিত, 26 23 বাইট

ইউজার 202729 3 বাইট সংরক্ষণ করার জন্য ধন্যবাদ।

PrimeQ/@(#&&PrimePi@#)&

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


1
23 বাইট: PrimeQ/@(#&&PrimePi@#)&
ব্যবহারকারী 202729

@ ব্যবহারকারী 202729 ভাল লাগল, ধন্যবাদ :)
মার্টিন ইন্ডার

10

জেলি , 6 বাইট

ÆRi³ÆP

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

ব্যবহার আমার Japt উত্তর হিসাবে একই টেকনিক: পর্যন্ত মৌলিক জেনারেট করুন এন , সূচী পেতে এন যে তালিকায়, এবং চেক করুন যে primality জন্য। যদি এন নিজেই প্রাইম না হয় তবে সূচকটি 0 হয় যা প্রাইমও হয় না তাই 0 কে যাইহোক ফেরত দেওয়া হয়।


9

জাপট , 13 11 বাইট

õ fj bU Ä j

এটি অনলাইন পরীক্ষা!

ব্যাখ্যা

এটি আমার আসল জমায়ের বিপরীতে আসলে খুব সোজা-এগিয়ে রয়েছে:

 õ fj bU Ä  j    
Uõ fj bU +1 j    Ungolfed
                 Implicit: U = input integer
Uõ               Generate the range [1..U].
   fj            Take only the items that are prime.
      bU         Take the (0-indexed) index of U in this list (-1 if it doesn't exist).
         +1 j    Add 1 and check for primality.
                 This is true iff U is at a prime index in the infinite list of primes.
                 Implicit: output result of last expression

4

পাইথন 3 , 104 97 93 বাইট

p=lambda m:(m>1)*all(m%x for x in range(2,m))
f=lambda n:p(n)*p(len([*filter(p,range(n+1))]))

রিটার্নস 0/ 1, 4 বাইট আর যদি এটা হতে হয়েছে সর্বাধিক True/ False

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


1
0/1 ঠিক আছে। চমৎকার উত্তর! যেহেতু আপনি কি কখনো মান ব্যবহার করবেন না f, আপনি আপনার কোড ফরম্যাট করতে পারেন ভালো এবং বাইট গণনা থেকে এটা অগ্রাহ্য।
musicman523

@ musicman523 টিপটির জন্য ধন্যবাদ!
সি ম্যাকাভয়

3

জেলি , 7 বাইট

ÆCÆPaÆP

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

ÆCমৌলিক সংখ্যার সংখ্যা কম বা গন্য ইনপুট (তাই, যদি ইনপুট হয় সমান এন ম প্রধানমন্ত্রী, এটা ফেরৎ এন )। তারপরে প্রাথমিকতার ÆPজন্য এই সূচকটি পরীক্ষা করে। শেষ অবধি, aএই ফলাফল এবং ÆPমূল ইনপুটটির (প্রাথমিকতা পরীক্ষা) এর মধ্যে একটি যৌক্তিক AND করে ।







1

কিউবিআইসি , 33 বাইট

~µ:||\_x0]{p=p-µq|~q=a|_xµp]q=q+1

ব্যাখ্যা

~   |   IF   ....  THEN (do nothing)
  :         the number 'a' (read from cmd line) 
 µ |        is Prime
\_x0        ELSE (non-primes) quit, printing 0
]           END IF
{           DO
            In this next bit, q is raised by 1 every loop, and tested for primality. 
            p keeps track of how may primes we've seen (but does so negatively)
    µq|     test q for primality (-1 if so, 0 if not)
p=p-        and subtract that result from p (at the start of QBIC: q = 1, p = 0)
~q=a|       IF q == a
_xµp        QUIT, and print the prime-test over p (note that -3 is as prime as 3 is)
]           END IF
q=q+1       Reaise q and run again.


1

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

f=filter
p x=2==(length$f(\a->mod(x)a==0)[1..x])
s=map(\(_,x)->x)$f(\(x,_)->p x)$zip[1..]$f(p)[2..]
r x=x`elem`(take x s)

1
(\(_,x)->x)হয় snd, (\(x,_)->p x)হয় (p.fst)। উভয়ই fstএবং sndপ্রিলিওডে রয়েছে, তাই আমদানির কোনও প্রয়োজন নেই।
লাইকনি

ব্যাকটিক খুব প্রায়ই ব্যবহার করবেন না : r x=elem x$take x s। যাইহোক, এই ক্ষেত্রে আপনি pointfree (ব্যাকটিক আবার উপস্থাপক) যেতে পারেন এবং ফাংশন নাম বাদ: elem<*>(`take`s)
নিমি



1

মতলব, 36 34 বাইট

টম কার্পেন্টারকে ধন্যবাদ 2 বাইট সংরক্ষণ করা।

অন্তর্নির্মিত ফাংশনগুলি ব্যবহার করে একটি খুব নিষ্পাপ বাস্তবায়ন:

isprime(x)&isprime(nzz(primes(x)))

1
অক্টেভ জন্য শুধুমাত্র আপনার কাছে আরও বাইট সঙ্গে সংরক্ষণ করতে পারেন(p=@isprime)(x)&p(nnz(primes(x)))
টম ছুতার

1

পাইথন 2 , 89 বাইট

def a(n):
 r=[2];x=2
 while x<n:x+=1;r+=[x]*all(x%i for i in r)
 return{n,len(r)}<=set(r)

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

নির্মাণ r, প্রাইমগুলির তালিকা <= n; যদি এন মৌলিক হয়, তবে nতা len(r)'ম প্রধান। সুতরাং এন হ'ল একটি সুপার প্রাইম iff এন আর আর এবং লেন (আর) r তে।



0

জুলিয়া 0.6, 61 বাইট

x যদি একটি সুপার-প্রাইম হয়, তবে অন্যথায় 0 করুন।

কোনও ইস্প্রাইম-জাতীয় ফাংশন ব্যবহার না করে।

x->a=[0,1];for i=3:x push!(a,0i%(2:i-1))end;a[sum(a)]&a[x]
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.