এটি একটি গাণিতিক-জ্যামিতিক ক্রম?


11

একটি গাণিতিক-জ্যামিতিক ক্রম হ'ল একটি গাণিতিক ক্রম এবং জ্যামিতিক অনুক্রমের উপাদানযুক্ত পণ্য। উদাহরণস্বরূপ, 1 -4 12 -32পাটিগণিত ক্রম 1 2 3 4এবং জ্যামিতিক অনুক্রমের পণ্য 1 -2 4 -8। পূর্ণসংখ্যার গাণিতিক-জ্যামিতিক অনুক্রমের নবম পদটি হিসাবে প্রকাশ করা যেতে পারে

an=rn(a0+nd)

কিছু বাস্তব সংখ্যার জন্য d , বাস্তব অশূন্য r , এবং পূর্ণসংখ্যা a0 । দ্রষ্টব্য যে r এবং d অগত্যা পূর্ণসংখ্যা নয়।

উদাহরণস্বরূপ, ক্রম 2 11 36 100 256 624 1472 3392হয়েছে a0=2 , r=2 , এবং d=3.5

ইনপুট

কোনও যুক্তিসঙ্গত বিন্যাসে ইনপুট হিসাবে n2 পূর্ণসংখ্যার একটি আদেশ তালিকা । যেহেতু জ্যামিতিক অনুক্রমের কয়েকটি সংজ্ঞা r=0 অনুমতি দেয় এবং 00=1 সংজ্ঞায়িত করে , কোনও ইনপুট একটি গাণিতিক-জ্যামিতিক অনুক্রম হয় কিনা তা r এর অনুমতি দেওয়া হবে কিনা তার উপর নির্ভর করবে না উদাহরণস্বরূপ, 123 0 0 0 0ইনপুট হিসাবে দেখা যাবে না।

আউটপুট

এটি পাটিগণিত-জ্যামিতিক অনুক্রম কিনা। সত্যবাদী / মিথ্যা মান, বা দুটি পৃথক ধারাবাহিক মান আউটপুট দেয়।

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

সত্য:

1 -4 12 -32
0 0 0
-192 0 432 -1296 2916 -5832 10935 -19683
2 11 36 100 256 624 1472 3392
-4374 729 972 567 270 117 48 19
24601 1337 42
0 -2718
-1 -1 0 4 16
2 4 8 16 32 64
2 3 4 5 6 7
0 2 8 24

মিথ্যা:

4 8 15 16 23 42
3 1 4 1
24601 42 1337
0 0 0 1
0 0 1 0 0
1 -1 0 4 16

1
অবগতির জন্য আপনার সাথে ইনলাইন গণিত মোড ব্যবহার করতে পারেন \$মত লেখার জিনিস একটি0
FryAmTheEggman

দ্বি-মেয়াদী ইনপুট কি আসলেই সম্ভব? পরীক্ষার ক্ষেত্রে কোনও নেই।
xnor

@xnor trivially আপনি সেট করতে পারেন বা = 0 তাই সিকোয়েন্স যে ক্ষেত্রে অনন্য নয়, কিন্তু আউটপুট সবসময় truthy হওয়া উচিতR=1=0
: Giuseppe

1
টেস্টকেস 0 0 8 8 24, 0 0 1, 0 0 0 1
tsh

1
1 -1 0 4 16এটি একটি কার্যকর মিথ্যা মামলা হবে, যেহেতু এটি প্রতিটি সত্যিকারের ক্ষেত্রে টানা চারটি উপাদান ভাগ করে 1 -1 0 4 -16এবং -1 -1 0 4 16
অ্যান্ডারস ক্যাসরগ

উত্তর:


2

পার্ল 6 , 184 128 135 বাইট

{3>$_||->\x,\y,\z{?grep ->\r{min (x,{r&&r*$_+(y/r -x)*($×=r)}...*)Z==$_},x??map (y+*×sqrt(y²-x*z).narrow)/x,1,-1!!y&&z/y/2}(|.[^3])}

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

প্রথম তিনটি উপাদান থেকে R এবং গণনা করে ফলাফলের ক্রমটি ইনপুটটির সাথে মেলে কিনা তা পরীক্ষা করে। দুর্ভাগ্যক্রমে, রকুডো শূন্য দ্বারা বিভাজন করার সময় একটি ব্যতিক্রম ছুঁড়ে দেয়, এমনকি ভাসমান-পয়েন্ট সংখ্যাগুলি ব্যবহার করেও cost 9 বাইট।

উল্লেখ ক্রম ব্যবহার একটিএন=Rএকটিএন-1+ +Rএন

কিছু উন্নতি আরনাউল্ডের জাভাস্ক্রিপ্ট উত্তরে অনুপ্রাণিত হয়েছে।

ব্যাখ্যা

3>$_||  # Return true if there are less than three elements

->\x,\y,\z{ ... }(|.[^3])}  # Bind x,y,z to first three elements

# Candidates for r
x  # If x != 0
??map (y+*×sqrt(y²-x*z).narrow)/x,1,-1  # then solutions of quadratic equation
!!y&&z/y/2  # else solution of linear equation or 0 if y==0

?grep ->\r{ ... },  # Is there an r for which the following is true?

    ( ,                         ...*)  # Create infinite sequence
     x  # Start with x
       {                       }  # Compute next term
        r&&  # 0 if r==0
                (y/r -x)  # d
           r*$_  # r*a(n-1)
                          ($×=r)  # r^n
                +        *  # r*a(n-1)+d*r^n
                                     Z==$_  # Compare with each element of input
min  # All elements are equal?

2

জাভাস্ক্রিপ্ট (ES7), 135 127 বাইট

a=>!([x,y,z]=a,1/z)|!a.some(n=>n)|[y/x+(d=(y*y-x*z)**.5/x),y/x-d,z/y/2].some(r=>a.every((v,n)=>(v-(x+n*y/r-n*x)*r**n)**2<1e-9))

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

কিভাবে?

R<10-9

বিশেষ ক্ষেত্রে # 1: 3 টিরও কম শর্ত

যদি 3 টিরও কম শর্ত থাকে তবে সবসময় একটি মিলের ক্রম সন্ধান করা সম্ভব। সুতরাং আমরা একটি সত্য মান জোর।

বিশেষ ক্ষেত্রে # 2: কেবল জিরো

0একটি0=0=0R0

সহ প্রধান কেসএকটি0=0

একটি0=0

একটিএন=Rএন×এন×

যা দেয়:

একটি1=R×একটি2=2R2×

0একটি10

R=একটি22একটি1

সঙ্গে মূল কেসএকটি00

একটিএন+ +1একটিএন

একটিএন+ +1=Rএকটিএন+ +Rএন+ +1

একটিএন+ +2, আমাদের আছে:

একটিএন+ +2=Rএকটিএন+ +1+ +Rএন+ +2=R(Rএকটিএন+ +Rএন+ +1)+ +Rএন+ +2=R2একটিএন+ +2RRএন+ +1=R2একটিএন+ +2R(একটিএন+ +1-Rএকটিএন)=-R2একটিএন+ +2Rএকটিএন+ +1

আমাদের উল্লেখযোগ্যভাবে রয়েছে:

একটি2=-R2একটি0+ +2Rএকটি1

নিম্নলিখিত চতুষ্কোণ নেতৃত্ব:

R2একটি0-2Rএকটি1+ +একটি2=0

যার শিকড়:

R0=একটি1+ +একটি12-একটি0একটি2একটি0R1=একটি1-একটি12-একটি0একটি2একটি0


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