বিভিন্ন কম্বিনেশন সম্ভব


9

সমস্যা

একটি মান এন দেওয়া হয়েছে, একটি রেফারেন্স (0, 0) থেকে (2 এন, 0) লিখিত একটি পাহাড়ের আড়াআড়ি কল্পনা করুন। Opালু এবং সাদা পর্বতগুলি X অক্ষের নীচে নেমে আসে না between সমস্যার সমাধান করতে হবে: প্রদত্ত এন (যা ল্যান্ডস্কেপের আকারকে সংজ্ঞায়িত করে) এবং কে পিক্সের সংখ্যা (কে সবসময় এন এর চেয়ে কম বা সমান), কে পিক্সের সাথে কতগুলি পর্বতের সংমিশ্রণ সম্ভব?

ইনপুট

n কে ল্যান্ডস্কেপ এবং কে এর প্রস্থ উপস্থাপন করে যা শৃঙ্খলার সংখ্যা।

আউটপুট

সম্ভব সংখ্যার সংখ্যা।

উদাহরণ

দেওয়া n = 3 এবং কে = 2 উত্তর 3 সংমিশ্রণ।

কেবল একটি চাক্ষুষ উদাহরণ দেওয়ার জন্য, তারা নিম্নলিখিত:

   /\     /\      /\/\
/\/  \   /  \/\  /    \

6 (3 * 2) অবস্থান এবং 2 শিখর ব্যবহার করে 3 টি সংমিশ্রণ সম্ভব।

সম্পাদনা করুন: - আরও উদাহরণ -

n  k  result
2  1  1
4  1  1
4  3  6
5  2  10

জয়ের শর্ত

মান বিধি প্রযোজ্য। বাইটস মধ্যে সংক্ষিপ্ততম জমা জয়।


4
এটি কি একইরকম, " nম্যাচ করা প্রথম বন্ধনী জুটির সংখ্যার সন্ধান করুন যা হুবহু kউদাহরণ রয়েছে ()"?
xnor


@ এক্সনর হ্যাঁ
জোনাথন অ্যালান

4
আপনি গণনা নারায়ণ সংখ্যাগুলির মতো আরও স্পষ্ট শিরোনাম সহ চ্যালেঞ্জটি আপডেট করতে চাইতে পারেন ।
আর্নৌল্ড

kশূন্যের একটি ইনপুট অবশ্যই পরিচালনা করা উচিত কিনা তা আপনি নিশ্চিত করতে পারেন ? যদি তাই nহয় তবে শূন্যের সমান ( kসংজ্ঞা অনুসারে শূন্যের সাথে )ও একটি ইনপুট হ্যান্ডেল করা উচিত?
জোনাথন অ্যালান

উত্তর:



6

জেলি , 7 বাইট

cⱮṫ-P÷⁸

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

যেমন ইনপুট লাগে nতারপর k। সূত্র ব্যবহার করে

এন(এন,)=1এন(এন)(এন-1)

যা আমি উইকিপিডিয়ায় পেয়েছি ।

cⱮṫ-P÷⁸
c        Binomial coefficient of n and...
 Ɱ       each of 1..k
  ṫ-     Keep the last two. ṫ is tail, - is -1.
    P    Product of the two numbers.
     ÷   Divide by
      ⁸  n.

7 বাইট

প্রতিটি লাইন তার নিজস্ব কাজ করে।

,’$c@P÷
c@€ṫ-P÷

যেমন ইনপুট লাগে kতারপর n

7 বাইট

cⱮ×ƝṪ÷⁸
  • এর জন্য জনাথন অ্যালানকে ধন্যবাদ।

অপেক্ষা করুন ... লেজটি স্বয়ংক্রিয়ভাবে 2 নম্বর হিসাবে সংজ্ঞায়িত হয়? (জেলি মোটেও জানেন না, কেবল একটি নির্বোধ প্রশ্ন)
কুইন্টেক

@ কুইন্টেক দুটি পুচ্ছ ফাংশন রয়েছে। একটি ( ) যা কেবলমাত্র একটি একক আর্গুমেন্টের সর্বশেষ উপাদান নেয় এবং আমি যেটি ব্যবহার করি ( ) যা দুটি আর্গুমেন্ট নেয়। প্রথম মুদ্রার যুক্তি একটি তালিকা এবং দ্বিতীয়টি একটি সংখ্যা (আমার ক্ষেত্রে -1কোডটিতে একটি প্রতিনিধিত্ব করে -) যা আপনাকে জানায় যে কতগুলি উপাদান সংরক্ষণ করতে হবে। রয়ে -1দিতে দুটি উপাদান সংজ্ঞায়িত করতে golfiest উপায় ছিল
dylnan

গেছি, ধন্যবাদ! আমি দেখতে পাচ্ছি যে
জেলিটি

1
7 এফ (এন, কে) এর জন্য আর একটি বৈকল্পিক:cⱮ×ƝṪ÷⁸
জোনাথন অ্যালান

4

জাভাস্ক্রিপ্ট (ES6), 33 30 বাইট

3 শে বাইট সংরক্ষিত হয়েছে @ শেগগিকে ধন্যবাদ

হিসাবে ইনপুট লাগে (n)(k)

n=>g=k=>--k?n*--n/-~k/k*g(k):1

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

অ্যান্ডারস ক্যাসরগ দ্বারা ব্যবহৃত পুনরাবৃত্ত সংজ্ঞা কার্যকর করে


জাভাস্ক্রিপ্ট (ES7), 59 58 49 45 বাইট

হিসাবে ইনপুট লাগে (n)(k)

n=>k=>k/n/(n-k+1)*(g=_=>k?n--/k--*g():1)()**2

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

নির্ণয়:

একটিএন,=1(এন-1-1)(এন-1)=1এন(এন)(এন-1)=1এন(এন)2×এন-+ +1

A001263 (প্রথম সূত্র) থেকে প্রাপ্ত ।


কারিরিং সহ -3 বাইট
শেগি

@ শেগি দোহ ... ধন্যবাদ সংশোধন # 7 অবশেষে দেখে মনে হচ্ছে # 1 এর সংশোধন করা উচিত। : পি
আর্নল্ড

3

ওল্ফ্রাম ভাষা (গণিত) , 27 বাইট

তিনটি সংস্করণ, সমস্ত একই দৈর্ঘ্য:

(b=Binomial)@##b[#,#2-1]/#&

Binomial@##^2#2/(#-#2+1)/#&

1/(Beta[#2,d=#-#2+1]^2d##)&

এটি অনলাইন চেষ্টা করুন!(কেবল প্রথম সংস্করণ, তবে আপনি অন্যদের চেষ্টা করার জন্য অনুলিপি এবং পেস্ট করতে পারেন))

এগুলি সবই কিছু প্রকারের বৈকল্পিক

এন!(এন-1)!!(-1)!(এন-)!(এন--1)!
যে সূত্রটি চারপাশে চলেছে। আমি বিটা ফাংশনটি দিয়ে কোথাও পৌঁছানোর আশা করছিলাম যা এক ধরণের দ্বি-দ্বিপক্ষীয় পারস্পরিক ক্রিয়াকলাপ, তবে তারপরে খুব বেশি বিভাজন ঘটেছিল।


2

জে , 17 11 বাইট

]%~!*<:@[!]

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

লাগে n , ডান আর্গুমেন্ট হিসাবে kবাম এক হিসাবে। ডাইলান এর জেলি উত্তর এবং কুইন্টেকের এপিএল সমাধান হিসাবে একই সূত্র ব্যবহার করে।

ব্যাখ্যা:

            ] - n  
           !  - choose
       <:@[   - k-1
      *       - multiplied by
     !        - n choose k
   %~         - divided by
  ]           - n   

2

এপিএল (ডায়ালগ), 19 18 16 12 বাইট

⊢÷⍨!×⊢!⍨¯1+⊣

-4 বাইটের জন্য @ গ্যালেন ইভানভকে ধন্যবাদ

OEIS ক্রমটিতে পরিচয় ব্যবহার করে। বাম দিকে এবং ডান দিকে n নেয়।

Tio


⊢÷⍨!×⊢!⍨¯1+⊣জন্য 12 বাইট , যুক্তি বিপরীত
গ্যালেন ইভানভ

@ গ্যালেনিভানভ ধন্যবাদ, আমার স্বচ্ছ এপিএল অত্যন্ত দুর্বল
কুইনটেক

আমার এপিএলটি তেমন ভাল নয়, আমি আমার জে সমাধানের পরে কেবল একবার চেষ্টা করার সুযোগ নিয়েছিলাম :)
গ্যালেন ইভানভ


1

কমন লিস্প , 76 বাইট

(defun x(n k)(cond((= k 1)1)(t(*(/(* n(1- n))(* k(1- k)))(x(1- n)(1- k))))))

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


এক্স এর পরে এবং এক্স পরে স্পেসগুলি সরিয়ে আপনি 2 বাইট সংরক্ষণ করতে পারেন
গ্যালেন ইভানভ


সুপারিশ (*(1- x)x)পরিবর্তে(* x(1- x))
ceilingcat

1

পার্ল 6 , 33 বাইট

{[*] ($^n-$^k X/(2..$k X-^2))X+1}

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

সূত্র ব্যবহার করে

একটিএন,=(এন-1-1)×1(এন-1)=Πআমি=1-1(এন-আমি+ +1)×Πআমি=2(এন-আমি+ +1)

ব্যাখ্যা

{[*]                            }  # Product of
     ($^n-$^k X/                   # n-k divided by
                (2..$k X-^2))      # numbers in ranges [1,k-1], [2,k]
                             X+1   # plus one.

বিকল্প সংস্করণ, 39 বাইট

{combinations(|@_)²/(1+[-] @_)/[/] @_}

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

আরনল্ডের উত্তর থেকে সূত্রটি ব্যবহার করে:

একটিএন,=1এন(এন)2×এন-+ +1



0

স্ট্যাক্স , 9 বাইট

ÇäO╪∙╜5‼O

এটি চালান এবং এটি ডিবাগ করুন

আমি স্ট্যাকসে ডাইলানের সূত্র ব্যবহার করছি।

আনপ্যাকড, অরগল্ফড এবং মন্তব্য করা হয়েছে প্রোগ্রামটি দেখে মনে হচ্ছে।

        program begins with `n` and `k` on input stack
{       begin block for mapping
  [     duplicate 2nd element from top of stack (duplicates n)
  |C    combinatorial choose operation
m       map block over array, input k is implicitly converted to [1..k]
O       push integer one *underneath* mapped array
E       explode array onto stack
*       multiply top two elements - if array had only element, then the pushed one is used
,/      pop `n` from input stack and divide

এটি চালান


0

এপিএল (এনএআরএস), 17 টি চর, 34 বাইট

{⍺÷⍨(⍵!⍺)×⍺!⍨⍵-1}

পরীক্ষা:

  f←{⍺÷⍨(⍵!⍺)×⍺!⍨⍵-1}
  (2 f 1)(4 f 1)(4 f 3)(5 f 2)    
1 1 6 10 
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.