গ্রিডে কত আয়তক্ষেত্র?


29

ঠিক আছে, যদিও এই চ্যালেঞ্জটি একটি বিশাল সাফল্য হিসাবে প্রমাণিত হয়েছে, এটি সমাধান করাও খুব তুচ্ছ হিসাবে প্রমাণিত। সুতরাং, যারা আরও বেশি চ্যালেঞ্জের সন্ধান করছেন তাদের জন্য, আমি এই চ্যালেঞ্জটির একটি সিক্যুয়াল তৈরি করেছি যাতে আপনাকে এখন অনন্য আয়তক্ষেত্রের সংখ্যা গণনা করতে হবে । এটা দেখ!

এখন, আপনারা যারা এই চ্যালেঞ্জটি সমাধান করতে চাইছেন তাদের জন্য, এটি এখানে আসে।


ঠিক আছে, আমাদের কাছে এখনও এর মতো চ্যালেঞ্জ নেই, তাই আমরা এখানে যাচ্ছি।

3 x 3আয়তক্ষেত্রগুলির এই গ্রিডটি বিবেচনা করুন :

উদাহরণ

কত আয়তক্ষেত্র আছে? ঠিক আছে, দর্শনীয়ভাবে গণনা করাতে, আমরা দেখতে পাচ্ছি যে প্রকৃত 36আয়তক্ষেত্রগুলি রয়েছে, পুরো বিমানটি নিজেই, যা সমস্ত নীচে অ্যানিমেটেড জিআইএফ-এ দেখানো হয়েছে:

উদাহরণে আয়তক্ষেত্রসমূহ

কাজটি

উপরোক্ত হিসাবে আয়তক্ষেত্র গণনা কাজ is অন্য কথায়, তার চেয়ে অনেক বেশী 2 ইন্টিজার দেওয়া বা সমান 0, mএবং n, যেখানে mপ্রস্থ উপস্থাপন করে এবং nআউটপুট যে আয়তক্ষেত্র মোট সংখ্যা উচ্চতা প্রতিনিধিত্ব করে, m x nআয়তক্ষেত্র এর গ্রিড।

বিধি

  • সরাসরি এই সমস্যার সমাধান করে এমন কোনও বিল্ট-ইনগুলির ব্যবহার স্পষ্টভাবে অনুমোদিত নয়।

  • এই চ্যালেঞ্জটি সংক্ষিপ্ত উত্তর সন্ধানের বিষয়ে নয়, তবে প্রতিটি ভাষায় স্বল্পতম উত্তর সন্ধান করা। অতএব, কোন উত্তর গ্রহণ করা হবে না।

  • স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ।

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

বিন্যাসে উপস্থাপিত Array of Integers Input -> Integer Output:

[0,0] -> 0
[1,1] -> 1
[3,3] -> 36 (Visualized above)
[4,4] -> 100
[6,7] -> 588

তথ্যসূত্র

মনে রাখবেন, এটি , তাই সংক্ষিপ্ততম কোড জিতেছে!


আমি 588সর্বশেষ পরীক্ষা-মামলার জন্য গণনা করেছি ।
ফাঁস নুন

@ ল্যাকইনুন ঠিক আছে, তখন আমি অনুমান করি যে এগুলি গণনা করার সময় আমি কিছুটা মিস করেছি। এটা ঠিক আছে।
আর কাপ,

ইনপুট সর্বোচ্চ মান কত?
এরিক আউটগল্ফার

উত্তর:


34

পাইথন, 22 বাইট

lambda m,n:m*~m*n*~n/4

সূত্রটি m*n*(m+1)*(n+1)/4বিট-পরিপূরক ব্যবহার করে সংক্ষিপ্ত করা হয়েছে ~m=-(m+1), (m+1)*(n+1)হিসাবে প্রকাশ করা হয়েছে ~m*~n

আয়তক্ষেত্রের সংখ্যা কেন m*n*(m+1)*(n+1)/4? প্রতিটি আয়তক্ষেত্র দুটি অনুভূমিক রেখা (শীর্ষ এবং নীচে) এবং দুটি উল্লম্ব রেখা (বাম এবং ডান) এর পছন্দ অনুসারে নির্দিষ্ট করা হয়। আছে m+1অনুভূমিক রেখা, যা আমরা দুটি স্বতন্ত্র বেশী একটি উপসেট চয়ন। তাই পছন্দ সংখ্যা choose(m+1,2), যা হয় m*(m+1)/2n*(n+1)/2উল্লম্ব লাইনের জন্য পছন্দগুলি দ্বারা গুণ করা ফলাফল দেয়।



11

ভাল করেছ. থাম্বস আপ। :)
আর কাপে

24
বোঝাতে কি যত্ন?
পিউফেরেরেট

এছাড়াও בHPএবং ‘c2Pসম্ভবত অন্যান্য 4 বাইট বিকল্প রয়েছে।
মাইল মাইল

1
@ পিয়ারফেরেট এটি ওইআইএসের সূত্রটি এটি nthএবং mthত্রিভুজাকার সংখ্যার পণ্য হিসাবে ব্যবহার করে । R1 ভিত্তিক সূচক প্রতিটি সংখ্যা পরিবর্তিত: [1, 2, ..., n]Sসমষ্টি এবং মানে 'প্রতিটি' তাই প্রতিটি তালিকা সংকলিত মত একটি তালিকা দান: [nth triangle number, mth triangle number]। তারপরে Pসেই তালিকার পণ্যটি নেয় যা পছন্দসই ফলাফল দেয়।
FryAmTheEggman

1
@FryAmTheEggman তাই কি আপনার কথা .... যাদু
Pureferret

9

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

m=>n=>m*n*~m*~n/4

এই উত্তর একটি কাঁটাচামচ ।

f=m=>n=>m*n*~m*~n/4
alert(f(prompt())(prompt()))


আমি নিশ্চিত নই, ডিফল্টরূপে এটি না করে এমন ভাষাগুলিতে ঠিক কি কারি করা হচ্ছে?
জন ডিভোরাক

1
@ জনডভোরাক মেটা পোস্ট
ফাঁস নুন

9

গণিত, 15 বাইট

##(1##+##+1)/4&

এটি একটি নামবিহীন ফাংশন যা দুটি পূর্ণসংখ্যার আর্গুমেন্ট গ্রহণ করে এবং আয়তক্ষেত্রগুলির সংখ্যা প্রদান করে।

ব্যাখ্যা

বাস্তবায়নটি মূলত দুটি ত্রিভুজাকার সংখ্যার পণ্যটির একটি খুব আড়ম্বরপূর্ণ ফর্ম। বিশদটির জন্য এই পোস্টে "যুক্তিগুলির অনুক্রমের" বিভাগটি পড়ার উপযুক্ত হতে পারে , তবে আমি এখানে সংক্ষিপ্তসার সংক্ষিপ্ত করার চেষ্টা করব।

##সমস্ত আর্গুমেন্টের ক্রম প্রসারিত । এটি অন্যান্য ভাষায় স্প্ল্যাটিংয়ের অনুরূপ । উদাহরণস্বরূপ, যদি আর্গুমেন্টগুলি হয় 3এবং 4তবে তা {1, 2, ##, 5}আপনাকে দেবে {1, 2, 3, 4, 5}। কিন্তু এই তালিকায় শুধু কাজ করে না, কিন্তু সবটা কোনো এক্সপ্রেশনে, যেমন f[1, 2, ##, 5]এছাড়াও হবে f[1, 2, 3, 4, 5]

আপনি ##অপারেটরদের সাথে একত্রিত হলে এটি আকর্ষণীয় হয়ে ওঠে । গাণিতিকের সমস্ত অপারেটর কিছু- f[...]মত - মত প্রকাশের জন্য সম্ভবত সংক্ষিপ্ত হাত (সম্ভবত নেস্টেড)। যেমন a+bহয় Plus[a, b]এবং a-bআসলে প্রতিনিধিত্ব করে Plus[a, Times[-1, b]]। এখন যখন আপনি ##অপারেটরগুলির সাথে একত্রিত হন, গণিতটি যা করে তা হ'ল অপারেটরগুলিকে প্রথমে ##একক অপারেন্ডের মতো চিকিত্সা করা এবং কেবল শেষের দিকে প্রসারিত করা। ##সঠিক জায়গায় সন্নিবেশ করার ফলে আমরা এটি উভয়ই গুণিত করতে এবং অপারেন্ডগুলি যুক্ত করতে ব্যবহার করতে পারি।

উপরের কোডটির জন্য এটি করা যাক:

##(1##+##+1)/4

এটির পূর্ণ আকারে এটি প্রসারিত করে আমরা এটি পাই:

Times[##, Plus[Times[1, ##], ##, 1], Rational[1/4]]

আসুন ফাংশন যুক্তি সন্নিবেশ করুন aএবং b:

Times[a, b, Plus[Times[1, a, b], a, b, 1], Rational[1/4]]

এবং এখন আমরা এটিকে আবার মানিক গাণিতিক স্বরলিপিতে রূপান্তর করি:

a * b * (a * b + a + b + 1) / 4

কিছুটা পুনরায় সাজানো দেখায় যে এটি ত্রিভুজাকার সংখ্যার গুণফল:

a * b * (a + 1) * (b + 1) / 4
(a * (a + 1) / 2) * (b * (b + 1) / 2)
T(a) * T(b)

মজাদার ঘটনা: এই বাস্তবায়নটি এতই গোলাপী, এটি একটি একক ত্রিভুজাকার সংখ্যার গণনার জন্য অন্তর্নির্মিত সমান দৈর্ঘ্য PolygonalNumber,।



8

জেলিফিশ , 16 বাইট

p|%/**+1
  4  Ei

ইনপুট ফর্ম্যাটটি হ'ল [x y]আউটপুট কেবল ফলাফল।

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

বিকল্প সমাধান, একই বাইট গণনা:

pm%/*[*i
  4  +1

ব্যাখ্যা

জেলিফিশের এটির প্রাপ্য ভূমিকা দেওয়ার সময়! :)

জেলিফিশ তার 2D সিনট্যাক্স চ্যালেঞ্জের ভিত্তিতে জগারবের ভাষা । শব্দার্থবিজ্ঞানগুলি মূলত জে দ্বারা অনুপ্রাণিত হয়, তবে বাক্য গঠনটি একটি শিল্পকর্ম। সমস্ত ফাংশন একক অক্ষর এবং একটি গ্রিডে আউট। ফাংশনগুলি তাদের পূর্বের টোকেন দক্ষিণ এবং পূর্ব থেকে তাদের যুক্তি নেয় এবং ফলাফলটি উত্তর এবং পশ্চিমে ফিরিয়ে দেয়। এটি আপনাকে ফাংশন কলগুলির একটি আকর্ষণীয় ওয়েব তৈরি করতে দেয় যেখানে আপনি একাধিক দিক থেকে বিভিন্ন ফাংশনে প্রবেশ করে মানগুলি পুনরায় ব্যবহার করেন।

যদি আমরা উপরের প্রোগ্রামের কিছু টোকেন বিশেষ অপারেটর (উচ্চ-স্তরের ফাংশন) এটিকে উপেক্ষা করি তবে উপরের প্রোগ্রামটি বুদ্ধিমান ভাষায় এরকম কিছু লেখা হবে:

p(|( /*(i*(i+1)) % 4 ))

কোড নীচে আপ মাধ্যমে চলুন। ইনপুট দ্বারা খাওয়ানো হয় i, যার ফলে এটি মূল্যায়ণ করে [x y]

+এটি শীর্ষ আক্ষরিক একসাথে এই ইনপুট পায় 1এবং এর ফলে দিতে উভয় উপাদান বৃদ্ধি [(x+1) (y+1)](অধিকাংশ অপারেশন তালিকা স্বয়ংক্রিয়ভাবে থ্রেডেড হয়)।

এর অন্য মানটি iবামে প্রেরণ করা হয়েছে, তবে Eবিভাজনগুলি উত্তর এবং পশ্চিম দিকে পূর্ব যুক্তি। এর অর্থ ডানদিকে থাকা ইনপুটগুলি *আসলে [x y]এবং [(x+1) (y+1)]তাই এই গণনাগুলি [x*(x+1) y*(y+1)]

পরবর্তীটি *আসলে পূর্ববর্তী দ্বারা সংশোধন করা হয় /যা এটিকে একটি ভাঁজ অপারেশনে রূপান্তরিত করে। *একটি জোড়ায় ভাঁজ করা কেবল এটিকে বহুগুণ করে, যাতে আমরা পাই x*(x+1)*y*(y+1)

এখন %শুধু বিভাগ তাই এটি গণনা x*(x+1)*y*(y+1)/4। দুর্ভাগ্যক্রমে, এটি একটি ফ্লোটে ফলস্বরূপ তাই আমাদের এটির সাথে গোল করতে হবে |। শেষ অবধি, এই মানটি খাওয়ানো হয় pযা চূড়ান্ত ফলাফল মুদ্রণ করে।


আমি শপথ করে বলতে পারি যে পূর্ণসংখ্যা বিভাগ সম্পর্কে ডক্সে কিছু পড়েছি ...
কনর

7

আর, 40 35 বাইট

ঠিক আছে, গভীর প্রান্তে লাফ দেওয়ার সময়! এখানে আমার আর কোডটি, @xnor উত্তর থেকে অনুপ্রাণিত:

a=scan();(n=a[1])*(m=a[2])*(n+1)*(m+1)/4 

সম্পাদনা : এই সংস্করণে, আর ইনপুটগুলির জন্য দু'বার জিজ্ঞাসা করবে।

(n=scan())*(m=scan())*(n+1)*(m+1)/4

cat(prod(choose(scan()+1,2)))29 বাইট হয়।
জিউসেপ

6

সিজেম, 12 10 বাইট

2 বাইট মার্টিনকে ধন্যবাদ রক্ষা করেছে।

{_:)+:*4/}

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

এটি এমন একটি ব্লক যা স্ট্যাক থেকে 2 টি উপাদানের একটি তালিকা নেয় এবং সমাধানটিকে স্ট্যাকের উপরে ছেড়ে দেয়। পরীক্ষার জন্য ব্যবহারযোগ্য পুরো প্রোগ্রাম: riari+{_:)+:*4/}~

এক্সনোরের অসামান্য অজগর সমাধানের ভিত্তিতে।

ব্যাখ্যা:

{_:)+:*4/}
{        } -- Define a block
 _:)       -- Duplicate list, increment all values in new list
    +      -- Join the two lists
     :*    -- Fold multiply over all 4 elements
       4/  -- Divide by 4

2
আমি মনে করি এটি যদি 10 টির জন্য কাজ করে তবে আপনি দুটি উপাদানের একটি তালিকা ইনপুট তৈরি করেন? {_:~+:*4/}
মার্টিন ইন্ডার

আসলে, ~সিজেমে মোটেও ব্যবহার করার দরকার নেই । শুধু ব্যবহার )
মার্টিন ইন্ডার

5

মতলব, 23 19 বাইট

@(x)prod([x/2,x+1])

সূত্র m*n*(m+1)*(n+1)/4
ব্যবহারের:ans([m,n])


4

এমএটিএল , 6 বাইট

tQ*2/p

ইনপুট ফর্মের একটি অ্যারে [m,n]

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

ব্যাখ্যা

সূত্রের উপর ভিত্তি করে সরাসরি গণনা m*(m+1)*n*(n+1)/4

t     % Input array [m,n] implicitly. Duplicate
Q     % Add 1 to each entry of the copy: gives [m+1,n+1]
*     % Multiply element-wise: gives [m*(m+1),n*(n+1)]
2/    % Divide each entry by 2: [m*(m+1)/2,n*(n+1)/2]
p     % Product of the two entries: m*(m+1)*n*(n+1)/4. Display implicitly


4

জাভা 7, 39 38 বাইট

int c(int a,int b){return~a*a*b*~b/4;}

জাভা 8, 26 25 19 18 17 বাইট

a->b->a*~a*b*~b/4

@ এক্সনরের দুর্দান্ত উত্তরের ভিত্তিতে । একাধিক বাইট সংরক্ষণ করেছেন @ ডেভিডকনরডকে ধন্যবাদ । এখানে চেষ্টা করুন।

পরীক্ষার কোড (জাভা 7):

এখানে চেষ্টা করুন।

class M{
  static int c(int a,int b){return~a*a*b*~b/4;}

  public static void main(String[] a){
    System.out.println(c(0, 0));
    System.out.println(c(1, 1));
    System.out.println(c(3, 3));
    System.out.println(c(4, 4));
    System.out.println(c(6, 7));
  }
}

আউটপুট:

0
1
36
100
588

1
আপনার এটির দরকার নেই returnএবং a->b->এটির চেয়ে এক বাইট আরও খাটো (a,b)->
ডেভিড কনরাড

2
আমার মনে হয় না সেমিকোলনটি আপনার দরকার, যেহেতু আপনি যদি ল্যাম্বডাকে এমন একটি পদ্ধতিতে পাঠাচ্ছেন যা Function<Integer, Function<Integer, Integer>>একটি প্যারামিটার হিসাবে গ্রহণ করে , তবে সেমিকোলনটি অনুসরণ করা হবে না।
ডেভিড কনরাড

2
আমি @ ডেভিডকনরডের সাথে একমত: আমি ;একক বিবৃতি জে 8 ল্যাম্বডাসের সমাপ্তি গণনা করি না ।
CAD97

@ ডেভিডকনরড খুব দেরিতে সম্পাদনার জন্য দুঃখিত, তবে আমি কেবল লক্ষ্য করেছি যে আমি আপনার মন্তব্যটি অপসারণ করতে return পেরেছি .. এছাড়াও, আমি জাভা 8 তে প্রায় কখনও প্রোগ্রাম করি না (তাই আমার সমস্ত জাভা 7 উত্তর) তবে আমি কীভাবে a->b->কাজ করব? এখানে বর্তমান মামলার আদর্শ রয়েছে।
কেভিন ক্রুইজসেন

1
খুব দেরিতে জবাবের জন্য দুঃখিত! আপনাকে ফাংশনটি কারি করতে হবে, সুতরাং আপনাকে MathOperation.operationকেবলমাত্র একটি নেওয়ার জন্য পরিবর্তন করতে হবে int, একটি ফেরত যেতে হবে Function<Integer, Integer>এবং আপনি যখন এটি কল করেন, আপনি প্রাথমিকভাবে কেবল প্রথম প্যারামিটারটি পাস করেন a, এবং তারপরে ফোন .apply(b)করুন Function। আপনারও আমদানি করা দরকার java.util.function.Functionপরিবর্তনগুলি সহ এখানে একটি আদর্শ।
ডেভিড কনরাড 21

3

রুবি, 22 বাইট

@ এক্সনোরের কৌশলটি চুরি করা এবং ছুরিকাঘাত-ল্যাম্বদা তৈরি করা:

r=->(m,n){m*n*~m*~n/4}

উদাহরণ কল:

r[6,7]     # => 588

বা একটি প্রোক হিসাবে, 22 বাইটও:

proc{|m,n|m*n*~m*~n/4}

যা আমরা তখন ডাকতে পারি:

proc{|m,n|m*n*~m*~n/4}.call(6,7)     # => 588

আপনার নাম দেওয়ার দরকার নেই site সাইট কনভেনশন অনুযায়ী বেনাম ফাংশনগুলি ঠিক আছে
কনার ও'ব্রায়ান

3

ল্যাবরেথ , 13 11 বাইট

*?;*_4/!
):

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

ব্যাখ্যা

এটি বেশিরভাগ উত্তরের মতো ত্রিভুজাকার সংখ্যার পণ্যও গণনা করে। শীর্ষস্থানীয় 2x2 ব্লক একটি ছোট লুপ:

*?
):

প্রথম পুনরাবৃত্তিতে *কোনও কিছুই করা হয় না, যাতে আসল লুপ ক্রমটি এটি:

?   Read integer N from STDIN or 0 at EOF and push onto stack. If 0, exit the loop.
:   Duplicate N.
)   Increment.
*   Multiply to get N*(N+1).

বাকি কোডটি কেবল লিনিয়ার:

;   Discard the zero that terminated the loop.
*   Multiply the other two values.
_4  Push a 4.
/   Divide.
!   Print.

এর পরে ল্যাবরেথ আবার সম্পাদন করার চেষ্টা করে /, যা শূন্য দ্বারা বিভাজনের কারণে প্রোগ্রামটি সমাপ্ত করে।


2

পাইকে, 6 বাইট

mh+Bee

এখানে চেষ্টা করুন!

mh     -    map(increment, input)
  +    -   ^ + input
   B   -  product(^)
    ee - ^ \ 4

এটি একটি ব্রেকডাউন ব্যবহার করতে পারে তবে আমি এটি ব্যক্তিগতভাবে ব্যক্তিগতভাবে শিল্পের কাজ বলে মনে করি।
কর্সিকা


1

পাইথ, 8 6 বাইট

@ ডেনারএফিকে দুটি বাইট সংরক্ষণ করা হয়েছে।

*FmsSd

ইনপুট যেমন একটি তালিকা হিসাবে প্রত্যাশিত [m,n]এখানে চেষ্টা করে দেখুন ।

ব্যাখ্যা:

          Implicit assignment of Q to eval(input).
*         Multiplication.
 F        Splat the following sequence onto the arguments of the previous function.
  m       Map the following function of d over Q (Q is implicitly added to the end).
   s      Reduce the following list with addition, initial value of 0.
    Sd    Return range(1,d+1).

1
আপনি এর Fপরিবর্তে ব্যবহার করতে পারেন .*এবং Qযেহেতু এটি বিভক্তভাবে যুক্ত করা হয়েছে তা মুছে ফেলতে পারেন ।
ডেনকার

আমি জানতাম Fতবে কীভাবে এটি ব্যবহার করব তা আমি বুঝতে পারি না এবং এর .*পরিবর্তে আমার কীভাবে ব্যবহার করা দরকার তা অনুগ্রহ করে ... ধন্যবাদ!
রাইজোম্যাটিক

1

সি #, 19 বাইট

(n,m)=>m*n*~m*~n/4;

@ Xnor এর উত্তরের ভিত্তিতে একটি বেনামী ফাংশন।


1

লুয়া, 74 63 বাইট

x,y=...n=0 for i=1,y do for j=i,i*x,i do n=n+j end end print(n)

ফাংশনটি সংখ্যা পরামিতি হিসাবে ইনপুট নেয়।

যেভাবে লুয়া বাস্তবায়িত হয়, এটি প্রযুক্তিগতভাবে একটি ফাংশন যা ভেরিয়েবল আরগস সহ, এটি একটি "ফাংশন" বিবৃতিতে আবৃত করে বা "লোডস্ট্রিং" ব্যবহার করে উত্স কোড থেকে লোড করে ডেকে আনা যেতে পারে


1
আমি দেখতে পাচ্ছি যে আপনার কাছে কেবলমাত্র I / O এর জন্য প্রচুর কোড রয়েছে। সম্ভবত এটি দুটি সংখ্যার গ্রহণ করে এবং উত্তরটি ফিরে আসে এবং এই সমস্ত অপ্রয়োজনীয় আই / ও কোডটি সরিয়ে ফেলা সহজতর হবে?
Zwei 17

@ Zwei আমি ভুলে গেছি যে ফাংশনগুলিকে পরামিতিগুলির মাধ্যমে ইনপুট নেওয়ার অনুমতি দেওয়া হয়। যে ইশারা জন্য ধন্যবাদ।
brianush1

আরও 7 টি বাইট সংরক্ষণের জন্য পুরো নাম "ফাংশন" এর পরিবর্তে ফাংশনটির নাম "ফ" হিসাবে দেওয়া যেতে পারে
জেডউই

লুয়ায়, "ফাংশন" কীওয়ার্ডটি কোনও ক্রিয়া ঘোষণার জন্য প্রয়োজনীয়। যদি কোনও নাম নির্দিষ্ট না করা হয় (উদা: "ফাংশন এফ ()"), এটি একটি বেনামে ফাংশন। (উদা: "ফাংশন ()")। সুতরাং, কোডটি কাজ করার জন্য "ফাংশন" প্রয়োজন
brianush1

ওহ, আমি ভুলে গিয়েছিলাম যে লুয়া এরকম কাজ করে। আমার খারাপ!
Zwei

1

চেডার , 23 বাইট

m->n->m*(m+1)*n*(n+1)/4

n*(n+1)গল্ফ করা যেতে পারেn^2+n
ডাউনগোট

@ ডাউনগোট প্রথম বন্ধনী সম্পর্কে কী?
ফাঁস নুন

ওহ> _> হ্যাঁ দুঃখিত, এনভিএম, ভাবছিলেন না
ডাউনগোট

ফাংশনটি কারি করার চেষ্টা করুন। m->n->...
কনর ও'ব্রায়েন

1

ব্রেন-ফ্লাক , 84 80 বাইট

({}<>)({({})<({}[()])>}{})<>({({})<({}[()])>}{}[()]){<>(({}))<>({}[()])}<>({{}})

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

সম্ভবত খুব সাব-অনুকূল, বিশেষত ত্রিভুজ সংখ্যাগুলির ক্ষেত্রে কোড পুনরায় ব্যবহারের কারণে, তবে কমপক্ষে আমাদের কাছে একটি ব্রেন-ফ্লাক সমাধান রয়েছে যা কাজ করে।

দুঃখজনকভাবে মনে হচ্ছে টেস্টকেসটি দিয়ে অসীম লুপিং করে ব্যর্থ হয়েছে 0 0তবে অন্য সবগুলি ঠিকঠাক কাজ করে।




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