অনুরূপ ক্ষমতা সহ নম্বর


17

একটি পূর্ণসংখ্যা দেওয়া পি> 1 , ক্ষুদ্রতম পূর্ণসংখ্যা এটি কুই> P যেমন যে প্রধানমন্ত্রী গুণকনির্ণয় মধ্যে বহিঃপ্রকাশ তালিকা কুই এর যে একই পি , কোন আদেশ বা মৌলিক উত্পাদক মান ব্যাপার।

উদাহরণ

প্রধানমন্ত্রী গুণকনির্ণয় P = 20 হয় 2 2 এক্স 5 1 । এর প্রধান গুণক হিসাবে অদ্বিতীয় এক্সটোন্টরগুলির সাথে পি এর চেয়ে ছোটতম পূর্ণসংখ্যা হল Q = 28 = 2 2 x 7 1

প্রধানমন্ত্রী গুণকনির্ণয় P = 2500 হয় 2 2 এক্স 5 4 । এর প্রধান ফ্যাক্টরিয়েশনে অভিন্ন উদ্দীপকগুলির সাথে পি এর চেয়ে কম ছোট পূর্ণসংখ্যা হল Q = 2704 = 2 4 x 13 2

বিধি

  • ইনপুটটি 1 এর চেয়ে বড় পূর্ণসংখ্যা হওয়ার গ্যারান্টিযুক্ত।
  • এটি , তাই বাইটের মধ্যে সংক্ষিপ্ত উত্তর ins

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

Input | Output
------+-------
2     | 3
20    | 28
103   | 107
256   | 6561
768   | 1280
2500  | 2704
4494  | 4510
46552 | 46584
75600 | 105840

2
কেবলমাত্র রেফারেন্সের জন্য, এটি OEIS এ A081761
জোনাথন ফ্রেচ

উত্তর:



5

গণিত, 61 বাইট

(f[x_]:=Sort[Last/@FactorInteger@x];s=#;While[f@++s!=f@#];s)&  

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

@ মিশা লাভরভের থেকে -4 বাইট


এই ধরনের Whileলুপ লেখার আরও সংক্ষিপ্ত উপায় s=#;While[f@++s!=f@#];s
মিশা লাভরভ 21

1
বাইট সংরক্ষণ করতে আপনি এর f[x_]সাথে প্রতিস্থাপন করতে পারেন f@x_
নম্বরমানিয়াক

1
বা সংজ্ঞায়নের রচনা-সালাদ রুটও যান f=Last/@#&@*FactorInteger/*Sort
মিশা লাভরভ

4

পাইথ , 15 বাইট

fqFmShMrPd8,QTh

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

কিভাবে কাজ করে?

fqFmShMrPd8,QTh   ~ Full program. Q = first input.

f             h   ~ First input where the condition is truthy over [Q+1, Q+2, ...]
           ,QT    ~ The two element list [Q, current value (T)].
   m              ~ Map over ^ with d.
       Pd         ~ The prime factorization of d.
      r  8        ~ Run-Length encode ^.
    hM            ~ Get the first element of each.
 qF               ~ Check if the values are equal.
                  ~ Output implicitly.

বিকল্প

অন্য 15 বাইটার:

LShMrPb8fqyQyTh

এবং কয়েকটি (দীর্ঘতর) বিকল্প:

fqFmSlM.gkPd,QTh
LSlM.gkPbfqyQyTh
LS/LPb{PbfqyQyTh
f!-FmlM.gkPd,QTh

4

জেলি , 15 14 বাইট

1 বাইট আউটগলফার এরিককে ধন্যবাদ।

ÆEḟ0Ṣ
,Ç€Eð2#Ṫ

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


এটি আপনাকে প্রায় 3 মিনিট সময় নিয়েছে। ;)
আর্নল্ড


4

ব্র্যাচল্যাগ , 13 বাইট

<.;?{ḋḅlᵐ}ᵐ=∧

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

আমি একটি উত্তর পোস্ট করার পরে অনেক দিন হয়েছে ...

ব্যাখ্যা

<.               Input < Output
 .;?             The list [Output, Input]
    {    }ᵐ      Map on [Output, Input]:
     ḋ             Prime decomposition
      ḅ            Group into sublists of consecutive equal elements
       lᵐ          Take the length of each sublist
           =∧    The result of the map must be the same for the Output and the Input

4

পাইথন 2 , 176 179 171 170 169 বাইট

  • প্রশ্ন থেকে পরিবর্তিত তিন বাইট যোগ করা হয়েছে বহিঃপ্রকাশ সেট করার বহিঃপ্রকাশ তালিকা ; set(f)পরিবর্তিত হয়েছিল sorted(f)
  • Ovs ধন্যবাদ আট বাইট সংরক্ষণ করা ; গল্ফিং যদি / অন্য কোনও গুণকে অবরুদ্ধ করে।
  • একটি বাইট সংরক্ষণ করা; golfed (n!=r)করতে (n>r)
  • একটি বাইট সংরক্ষণ করা; golfed while N>1করতে while~-N
N=input();n=-~N
def F(N):
 r,f=0,[]
 while~-N:
	for n in range(2,-~N):
	 if N%n<1:f+=[1]*(n>r);f[-1]+=n==r;r=n;N/=n;break
 return sorted(f)
while F(N)!=F(n):n+=1
print n

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


3

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

import Data.List
import Data.Numbers.Primes
p=sort.map(1<$).group.primeFactors
f x=until((==p x).p)(+1)$x+1

এটি অনলাইন চেষ্টা করুন! ব্যবহারের উদাহরণ: f 2500ফলন 2704

একটি ত্রুটি নির্দেশ করে এবং একগুচ্ছ বাইট সংরক্ষণ করার জন্য নিমিকে ধন্যবাদ জানাই।


বিল্ট primeFactors-ইন (117 বাইট) ছাড়াই

import Data.List
1%n=[]
x%n|0<-mod x n=n:div x n%n|m<-n+1=x%m
p=sort.map(1<$).group.(%2)
f x=until((==p x).p)(+1)$x+1

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


2

পাইথন - 141 বাইট

def s(n):
 i=1;d={}
 while n-1:
  i+=1
  if n%i<1:d[i]=d.get(i,0)+1;n/=i;i=1
 return d.values()
a=input()
j=a+1
while s(a)!=s(j):j+=1
print j

আপনার প্রোগ্রামটি 2500একটি ইনপুট হিসাবে ভুল মান আউটপুট বলে মনে হচ্ছে ; 4624পরিবর্তে 2704
জোনাথন ফ্রেচ 9

while n-1:হতে পারে while~-n:
জোনাথন ফ্রেচ 9


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