দুটি মান একত্রিত করুন


44

আপনার দুটি মান রয়েছে যার মধ্যে দুটিই 0"অজানা" প্রতিনিধিত্ব করছে, বা এর একটি 1,2,3। এগুলিকে নিম্নরূপ একক মানে মার্জ করুন:

  • উভয় মান যদি ননজারো এবং সমান হয় তবে ফলাফলটি আউটপুট করে:
    (3,3) -> 3
  • উভয় মান যদি ননজারো তবে অসম হয় তবে অজানা জন্য আউটপুট 0:
    (1,2) -> 0
  • যদি একটি মান শূন্য হয় এবং অন্যটি না হয় তবে ননজারো মানটি আউটপুট করুন:
    (2,0) -> 2, (0,1) -> 1
  • উভয় মান শূন্য হলে আউটপুট শূন্য:
    (0,0) -> 0

পরীক্ষার কেস:

সম্ভাব্য 16 টি ইনপুট জোড় রয়েছে।

  | 0 1 2 3
--+--------
0 | 0 1 2 3
1 | 1 1 0 0
2 | 2 0 2 0
3 | 3 0 0 3

(0, 0) -> 0
(0, 1) -> 1
(0, 2) -> 2
(0, 3) -> 3
(1, 0) -> 1
(1, 1) -> 1
(1, 2) -> 0
(1, 3) -> 0
(2, 0) -> 2
(2, 1) -> 0
(2, 2) -> 2
(2, 3) -> 0
(3, 0) -> 3
(3, 1) -> 0
(3, 2) -> 0
(3, 3) -> 3

লিডারবোর্ড


8
চতুর্থ নিয়ম প্রথম নিয়মের সাথে খাপ খায় তাই আপনি কেন এগুলি পৃথক করেছেন তা আমি জানি না।

1
নিতপিক: চতুর্থ পয়েন্টটি রিডানডান্ট, আপনি কেবল প্রথম পয়েন্ট থেকে "ননজারো" সরাতে পারবেন। সম্পাদনা: বাহ, নিনজা @ ফ্যাটালাইজ কী।
এরিক আউটগল্ফার

এছাড়াও, 3 এখানে সত্যিই প্রয়োজনীয় নয়, যদিও এটি সম্ভাব্য ইনপুটগুলির সংখ্যা বাড়িয়ে তোলে।
এরিক দি আউটগল্ফার

2
আমি নিয়মগুলি ঘনীভূত করার বিষয়টি বিবেচনা করেছি, তবে ভেবেছিলাম যে সমস্ত শূন্য / ননজারো মামলাগুলি তালিকাভুক্ত করা এবং গল্ফারদের কাছে অপ্টিমাইজেশন রেখে যাওয়া সবচেয়ে পরিষ্কার হবে।
xnor

2
এর জন্য একটি লিডারবোর্ড দরকার , প্রথম পৃষ্ঠায় ইতিমধ্যে দ্বিতীয়টিতে ইতিমধ্যে পরাজিত উত্তর পাওয়া শুরু হচ্ছে।
janrjan জোহানসেন 26'18

উত্তর:


22

5
আমি পছন্দ করি যে এটি 3 এর বেশি ইনপুটগুলির জন্য বিরতি ফেলবে আপনি কীভাবে এটি নিয়ে এসেছেন?
Jakob

4
মূলত প্রচুর পরীক্ষা এবং ত্রুটি।
ডেনিস

1
মজাদার. এক মুহুর্তের জন্য আমি দুটি কালি এবং কয়েকটি অপারেটর জড়িত সীমিত দৈর্ঘ্যের অভিব্যক্তিগুলির মাধ্যমে অনুসন্ধানটি স্বয়ংক্রিয় করার কথা ভাবি, তবে জায়গাটি প্রায় 20 বাইটেও অনেক বড়। কিছু বুদ্ধি প্রয়োজন!
Jakob


10

এপিএল (ডায়ালগ) , 5 বাইট

⌈×∧=⌊

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

দরকারী রেফারেন্স

∧=⌊: 1সর্বনিম্ন সাধারণ একাধিকের সর্বনিম্নের সমান হলে ফেরত দেয়। এটি শুধুমাত্র সত্য যদি মানগুলির মধ্যে একটি শূন্য হয়, বা উভয়ই সমান হয়। বিকল্পভাবে আমি পেতে পারে=*⌊

⌈×: উপরের দ্বারা সর্বাধিক গুণিত।


7

শেক্সপিয়ার প্রোগ্রামিং ভাষা , 296 বাইট

Z.Ford,.Ajax,.Act I:.Scene I:.[Enter Ford and Ajax]Ajax:Listen to thy heart.Ford:Listen to thy heart.Am I as fat as you?Ajax:If so,let us Scene C.Am I as fat as zero?If so,let us Scene C.Ford:Am I as fat as zero?If not,you zero.open heart.let us Scene V.Scene C:.Ajax:open heart.Scene V:.[Exeunt]

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

একটি কোড-গল্ফ চ্যালেঞ্জের প্রথম অংশগ্রহন, সুতরাং আসুন আমার প্রিয় কৌতুক ভাষা দিয়ে শুরু করুন!

ব্যাখ্যা: দুটি ভেরিয়েবল ফোর্ড এবং আজাক্সের ঘোষণাপত্র (সংক্ষিপ্ততম ভেরিয়েবলের নাম উপলব্ধ)

Z.Ford,.Ajax,.

প্রথম দৃশ্য: দুটি মানকে ভেরিয়েবলের মধ্যে রাখুন, তার পরে সমতার জন্য তাদের পরীক্ষা করুন, তারপরে 0 অ্যাজাক্সের সাথে পরীক্ষা করুন। আমাদের যে মানটি ফিরতে হবে তা যদি ভেরিয়েবল ফোর্ডে সংরক্ষণ করা হয়, তবে দৃশ্য সিতে যান C.

Act I:.
Scene I:.
[Enter Ford and Ajax]
Ajax:
Listen to thy heart.
Ford:Listen to thy heart.
Am I as fat as you?
Ajax:
If so,let us Scene C.
Am I as fat as zero?
If so,let us Scene C.

ফোর্ড যদি 0 হয়, এজাক্সটি মুদ্রণ করুন, অন্যথায় অ্যাজাক্স 0 হিসাবে সেট করুন তবে অ্যাজাক্স প্রিন্ট করুন। তারপরে প্রোগ্রামটির শেষে যান।

Ford:Am I as fat as zero?
If not,you zero.
open heart.
let us Scene V.

দৃশ্য সি: প্রিন্ট ফোর্ড

Scene C:.
Ajax:open heart.

দৃশ্য ভি: প্রোগ্রামের সমাপ্তি।

Scene V:.
[Exeunt]


2
আমার চেয়ে অনস্বীকার্য ভাল আপনার সংস্করণ @JoKing হয়, আমার মনে হয় এটা ভালো হবে যদি আপনি এটি একটি উত্তর হিসেবে পোস্ট হিসাবে প্রোগ্রাম পিছনে যুক্তি পুরোপুরি ভিন্ন এবং আমি আপনার কাজের জন্য ক্রেডিট নিতে চাই না
Guillaume, Ruchot

6

রুবি , 21 বাইট

->a,b{(a|b)*531[a*b]}

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

কারণ রুবি

সংক্ষিপ্ত ব্যাখ্যা:

  • a|b বিটউইজ ওআর, সুতরাং এটি যদি আমাদের একটি == বি বা তার একটি শূন্য হয় তবে সঠিক সংখ্যাটি দেয়।

  • ম্যাজিক নম্বরটি 5312 ^ 9 + 2 ^ 4 + 2 ^ 1 + 2 ^ 0 এবং []] অপারেটর একটি বিট বের করে। এর অর্থ: একটি * বি 0, 1, 2, 4 বা 9 হলে 1 দ্বারা গুণান, অন্যথায় 0 দিয়ে গুণ করুন।

  • এটি মান> 3 এর জন্য কাজ করবে না


5

জাভাস্ক্রিপ্ট (নোড.জেএস) , 17 বাইট, পাইথন উত্তর থেকে কোনওভাবে পোর্ট

a=>b=>a*b&2?0:a|b

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

জাভাস্ক্রিপ্ট (নোড.জেএস) , 21 বাইট

a=>b=>a-b?a*b?0:a+b:a

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


?0:... আপনি করতে পারেন ||, বা অগ্রগতি যে গোলযোগ আছে?
স্টান স্ট্রাম

@ স্ট্যানস্ট্রামের ?0:অর্থ দাঁড়ায় শূন্য না হলে শূন্যটি ফিরে আসুন, কনড শূন্য না হলে শূন্য থেকে ||ফিরে
আসুন

5

পাইথ , 8 7 বাইট

@{+0SQ3

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

@{+0SQ3   Implicit: Q=input()

    SQ    Sort input
  +0      Prepend 0
 {        Deduplicate
@     3    Get 4th element (index 3), modular indexing

কেস 1 - উভয় মান nonzero এবং সমান

Sorted Input   [3,3]
Prepend 0      [0,3,3]
Deduplicate    [0,3] - index 3 yields 3

কেস 2 - উভয় মান ননজারো এবং অসম

Sorted Input   [1,2]
Prepend 0      [0,1,2]
Deduplicate    [0,1,2] - index 3 yields 0

কেস 3 - ঠিক এক মান শূন্য

Sorted Input   [0,1]
Prepend 0      [0,0,1]
Deduplicate    [0,1] - index 3 yields 1

কেস 4 - উভয় মান শূন্য

Sorted Input   [0,0]
Prepend 0      [0,0,0]
Deduplicate    [0] - index 3 yields 0

বিকল্প সমাধান, এছাড়াও 7 বাইট

*eSQ}s{

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

*eSQ}s{QQ   Trailing Q's inferred

      {Q    Deduplicate input
     s      Take the sum
    }   Q   Is this in the input? True treated as 1, false as 0
*           Multiplied by
 eSQ        Max from input (end of sorted input) 

পূর্ববর্তী সংস্করণ, 8 বাইট

@+0{-QZ3

@ এক্সনর এটি সন্ধানের জন্য ধন্যবাদ, এটি এখনই ঠিক করা উচিত
সাক

@{+0Q36 বাইট জন্য কাজ করে।
মিঃ এক্সকোডার


4

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

Ç∞∟∙◄╥*♣

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

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

    e.g.        [2, 0]
c:s [2, 0] 2    calculate the "span" of the input array (max(a) - min(a))
+   [2, 0, 2]   append the span to the input array
o   [0, 2, 2]   sort the 3-element array
E   0 2 2       explode the 3 elements into 3 separate stack entries
a   2 2 0       rotate the third stack element to the top of stack
!   2 2 1       logical not, produces 1 iff the top value was 0
*   2 2         multiply
                implicitly print top of stack

এটি চালান



4

(প্রথম জমা তাই দয়া করে খুব বেশি লাথি মারবেন না)

পাইথন 2 , 57 44 43 বাইট

lambda a,b:(0 if a*b else a+b)if a-b else a

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

( প্রথম অজগর উত্তরটি দেখার পরে কিছুটা সঙ্কোচিত )



ক্রস করা হয়েছে 44 এখনও 44 ((
জো কিং

@ জোকিং হাহ ওট? আপনার সমাধানটি দুর্দান্ত, আমি পাটিগণিত দিয়ে এটি করার চেষ্টা করেছি, তবে ব্যর্থ হয়ে ফিরে
গিয়েছি

4

সি (জিসিসি), 25 বাইট

f(a,b){a=a^b&&a*b?0:a|b;}

সুডোকোড:

foo(A,B)
    if A XOR B and A*B are > 0
        return 0
    else 
        return A OR B`

3

সি (জিসিসি), 26 বাইট

f(a,b){a=a*b?a-b?0:a:a+b;}

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

বিস্তৃতি / অবরুদ্ধ:

int f(int a, int b) { // implicit-int (C89)
    // return replaced with assignment: link
    return a*b ? // if a and b are both not zero, then
        a-b ? // if a != b
        0 : // a != b, so return 0
        a // a == b, so return a
    : a+b // one of a,b is zero, so return whichever is nonzero 
    ;
}

3

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

dGp*~GX>*

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

ব্যাখ্যা:

           % Implicit input as a vector with two elements implicitly. Stack: [0,2]
d          % The difference between the two elements. Stack: [2]
 G         % Push input again. Stack: [2], [0,2]
  p        % The product of the last element (the input). Stack: [2], [0]
   *       % Multiply the two elements on the stack. Stack: [0]
    ~      % Negate. Stack: [1]
     G     % Push input again. Stack: [1], [0,2]
      X>   % Maximum value. Stack: [1], [2]
        *  % Multiply the two elements on the stack. Stack: [2]
           % Implicit output


3

জিএনইউ সেড, 23 বাইট

s/^0?(.)\1?0?$/\1/
t
c0

(অবশ্যই -rপতাকা সহ চালানো উচিত )

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


1
পিপিসিজিতে স্বাগতম: বর্তমান conক্যমত্যটি হ'ল পতাকা গণনা করা হয়নি (আমি আমার ফোনে আছি তাই প্রাসঙ্গিক মেটা লিঙ্ক করতে পারি না)।
শেগি

1
ওহ ঠান্ডা! আমি পরে সম্পাদনা করব যেহেতু আমি আমার ফোনেও আছি; ফ্রি -৩ বাইট পিপিজি-তে একটি দুর্দান্ত স্বাগত :) :)
কার্নেলপ্যানিক

3

কিউ বেসিক, 34 বাইট

বিভিন্ন পদ্ধতির!

INPUT a,b
?(a OR b)*-(a*b=0OR a=b)

লক্ষ্য করুন যে আউটপুট গ্রিডের ননজারো মানগুলি ORদুটি ইনপুট সংখ্যার বিটওয়াইস । এটি কেবল a OR bকিউবাসিক-এ রয়েছে। আমরা এই মানটি আউটপুট করতে চাই যখন a*b=0 OR a=bএবং 0অন্যথায়, আমরা উল্লিখিত শর্তাধীন (নেতিবাচক, যেহেতু সত্যবাদী -1QBasic মধ্যে থাকে) দ্বারা নেতিবাচক দ্বারা গুণ করতে পারি ।


2

ব্রেনফাক, 25 বাইট

,>,[>]<<[[->->+<<]>[>]]>.

ইনপুট দুটি বাইট মান (ascii নয়)


2

সুইফট , 118 বাইট

func c(n1:Int,n2:Int){n1==n2 ? print("\(n1)") : (n1*n2 != 0 ? print("0") : (n1==0 ? print("\(n2)") : print("\(n1)")))}

4
পিপিসিজিতে আপনাকে স্বাগতম! আমি সুইফটকে চিনি না, তবে আপনি প্রতিটি পরিবর্তনশীল নাম 1 টি করে অক্ষর তৈরি করে এবং অপারেটরের আশেপাশের সাদা অংশ এবং টের্নারি সরিয়ে আপনি সম্ভবত প্রচুর বাইট সংরক্ষণ করতে পারেন !=
ousurous

1
হাই, পিপিসিজিতে আপনাকে স্বাগতম! @ Οurous দ্বারা উল্লিখিত হিসাবে, আপনি এগুলি সংক্ষিপ্ত করতে পরিবর্তন করতে n1এবং n2একক অক্ষরে পরিবর্তন করতে পারেন ; কিছু সাদা স্পেস এবং বন্ধনী সরিয়ে ফেলুন এবং কিছু স্পেস সরিয়ে ফেলুন। উপরন্তু, ==0হতে পারে <1এবং !=0হতে পারে >0, যেহেতু আমরা জানি কেবলমাত্র ইনপুটগুলি 0,1,2,3সম্ভব। এর আগে কখনও সুইফটে প্রোগ্রাম করা হয়নি, তবে আমি এটি 91 বাইটে নামিয়েছি: func c(a:Int,b:Int){a==b ?print("\(a)"):a*b>0 ?print("0"):a<1 ?print("\(b)"):print("\(a)")} অনলাইনে চেষ্টা করে দেখুন।
কেভিন ক্রুইজসেন 24'18

তদতিরিক্ত, মনে হয় আপনি এটিকে 51 বাইটে সংক্ষেপণ করতে পারেন: func c(a:Int,b:Int){print(a==b||a*b<1 ?max(a,b):0)} অনলাইনে চেষ্টা করে দেখুন। আবার পিপিসিজিতে স্বাগতম, এবং আপনার থাকার উপভোগ করুন!
কেভিন ক্রুইজসেন 24'18

1
@ কেভিনক্রুইজসেনের গল্ফগুলি ছাড়াও, আপনি 87 টি বাইট সংরক্ষণ করতে আপনার জমাটি বেনামে বন্ধ করতে {$0==$1||1>$0*$1 ?max($0,$1):0} পারেন: অনলাইনে এটি ব্যবহার করে দেখুন!
মিঃ এক্সকোডার

2

ব্যাচ, 38 36 35 30 বাইট

@cmd/cset/a"(%1|%2)>>(%1*%2&2)

পোর্ট অফ ডেনিসের পাইথন উত্তর, কারণ শর্তসাপেক্ষগুলি ব্যাচে খুব ব্যয়বহুল।



2

জে , 8 7 বাইট

এইচপিউইজের দ্বারা 1 বাইট সংরক্ষণ করা হয়েছে।

>.*=^<.

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

এইচ.পিউইজের এপিএল সমাধানের এজে পোর্ট

=সংখ্যা সমান? (1 বা 0 এ ফলাফল)

^ এর শক্তি

<. ছোট সংখ্যা

* দ্বারা গুণিত

>. বৃহত্তর সংখ্যা


1
>.*=^<.7 বাইটের জন্য
এইচপিউইজ

@ এইচ.পি.উইজ আপনাকে ধন্যবাদ! চতুর ব্যবহার =এবং ^!
গ্যালেন ইভানভ 24'18

2

05 এ বি 1 ই , 9 8 বাইট

àIËIP_+*

-1 বাইট ধন্যবাদ @ ম্যাজিকঅ্যাক্টোপাস ইউর্নকে

এটি অনলাইনে চেষ্টা করুন বা সমস্ত পরীক্ষার কেস যাচাই করুন

ব্যাখ্যা:

à         # Take the maximum of the input-list
          #  [0,2] → 2
IË        # Are all elements in the input-list equal?
          #  [0,2] → 0
  IP_     # Take the product of the input-list, and verify if it equals 0
          # (`_` transforms 0 into 1; everything else into 0)
          #  [0,2] → 0 (product) → 1 (==0)
     +    # Add them together (since only 1 is truthy in 05AB1E, this is basically an OR)
          #  0+1 → 1
*         # Multiply both values on the stack
          #  2*1 → 2

সাধারণ ব্যাখ্যা:

IËIP_+    # If both values are equal, or one of them is a zero:
 à        #  Output the maximum of the two values
          # Else:
          #  Output 0

Ës0å~iZë0আমার ছিল; সুন্দর. বাস্তবে নিশ্চিত নয় যে আপনি 9 টি বাইটকে অনেক বেশি হারাতে পারবেন।
ম্যাজিক অক্টোপাস উরন

1
আমি এটি আবার ফিরিয়ে নিয়েছি à®Ë®P_+*যেখানে _যৌক্তিক সমতুল্য
ম্যাজিক অক্টোপাস উরন

_0 কে 1 তে পরিণত হয়, অন্যান্য সমস্ত মান 0
যাদু অক্টোপাস উরন

@ ম্যাজিক অ্যাক্টপাস ইউরান ধন্যবাদ! আমি যখন এই উত্তরটি দিয়েছিলাম তখন ডকসটির দিকে তাকিয়ে ছিলাম যে কোনও == 0আদেশ আছে কিনা তা জানতাম _না, ঠিক কী তা জানত না। ভবিষ্যতে অন্যান্য চ্যালেঞ্জগুলির জন্যও কার্যকর হওয়া উচিত। তিল। :)
কেভিন ক্রুইজসেন



2

জাভাস্ক্রিপ্ট ES6, 25 22 21 20 বাইট

a=>b=>a?b-a?!b*a:a:b

14 13 বাইট , যদি তর্কগুলি সাজানো ক্রমে সরবরাহ করা হয়

a=>b=>a%b?0:b


2

কিউবাসিক, 38 36 35 বাইট

INPUT a,b
?(a*b>0)*(b-a*(a<>b))+a+b

আংশিকভাবে এরিকের IF ... THEN ... ELSEউত্তরে অনুপ্রাণিত হয়ে এখানে গণিতের একমাত্র সমাধান।

আমি এখানে কিভাবে পেলাম

গণিত-সহ-শর্তাবলী বোঝার জন্য গুরুত্বপূর্ণ দ্রষ্টব্য: কিউব্যাসিক-এ, তুলনা অপারেটরগুলির ফলাফলগুলি হয় 0এবং -1না 0এবং 1

আমরা এরিকের কোড দিয়ে শুরু করি:

IF a*b THEN?a*-(a=b)ELSE?a+b

অন্য কথায়, যদি aএবং bউভয়ই ননজারো হয়, তবে মুদ্রণ করুন a*-(a=b)( aযদি a=b, অন্যথায় 0); অন্য (এর অন্তত একটি aএবং bশূন্য), আউটপুট a+b(অশূন্য নম্বর, বা 0তারা উভয় শূন্য থাকেন)।

শর্তসাপেক্ষে এখানে ইতিমধ্যে কিছু গণিত রয়েছে। আসুন এটি আরও একধাপ এগিয়ে নেওয়া যাক এবং দেখুন যে আমরা IFবিবৃতি সম্পূর্ণরূপে মুছে ফেলতে পারি । আমাদের a*b>0বাহ্যিক অবস্থার জন্য ব্যবহার a*bকরতে হবে: একাধিক বিভিন্ন সত্যবাদী মান থাকতে পারে, যা ভাল IFতবে গণিতের জন্য সমস্যা তৈরি করে।

c=a*b>0
?c*a*(a=b)+(c+1)*(a+b)

এই মান কৌতুক এর IF-elimination। যখন cসত্য হয়, c*a*(a=b)হয় -a*(a=b)এবং (c+1)*(a+b)হয় 0; যখন cমিথ্যা, c*a*(a=b)হয় 0এবং (c+1)*(a+b)হয় a+b। সুতরাং এই এক্সপ্রেশন হিসাবে একই ফলাফল দেয় IF ... THEN ... ELSE। একমাত্র সমস্যাটি হ'ল এটি আমাদের প্রোগ্রামটিকে 38 এর পরিবর্তে 40 বাইট তৈরি করে Maybe

c=a*b>0
?c*a*(a=b)+c*(a+b)+a+b

এখনও 40 বাইট ...

c=a*b>0
?c*(a+b+a*(a=b))+a+b

এখন আমাদের প্রোগ্রামটি 38 বাইটে ফিরে এসেছে। তবে যেহেতু আমরা কেবল cএকবার ব্যবহার করছি তাই আমাদের এটি আর কোনও ভেরিয়েবলের জন্য বরাদ্দ করতে হবে না:

?(a*b>0)*(a+b+a*(a=b))+a+b

এখন আমরা নীচে 36 বাইট।

তবে অপেক্ষা করুন আরও কিছু ... এই a+b+a*(a=b)অভিব্যক্তিটি কিছুটা নিরর্থক দেখাচ্ছে। a*(a=b)হয় -aযদি a=bএবং 0অন্যথায়। আমরা এটি যোগ যখন a, আমরা পেতে 0যদি a=bএবং aঅন্যথায়। শর্তটি বিপরীত করে আমরা কম বাইটে একই জিনিস অর্জন করতে পারি।

b+a*-(a<>b)

প্রথমদিকে, এটি সংক্ষিপ্ত দেখাচ্ছে না। তবে আমরা নেতিবাচক যুক্ত করার পরিবর্তে বিয়োগ করে একটি বাইট সংরক্ষণ করতে পারি:

b-a*(a<>b)

এবং সেখানে আমাদের 35 বাইট সমাধান রয়েছে।


সেখানে দুর্দান্ত কৌশল ...
এরিক আউটগলফার

1

পরিষ্কার , 46 43 42 বাইট

import StdEnv
?[a,b]|a<1||a==b=b=0

?o sort

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

বেনামে রচনাটি :: [Int] -> Int, জোড়টি বাছাই করে এবং তারপরে প্রথম সদস্যের সাথে মেলে।

এটি একটি সমন্বিত ল্যাম্বদা হিসাবে করা একই দৈর্ঘ্য:

import StdEnv

(\[a,b]|a<1||a==b=b=0)o sort

1

জেলি , 7 6 বাইট

׬o=a»

এটি অনলাইন চেষ্টা করুন! বা সমস্ত সমন্বয় চেষ্টা করুন!

কিভাবে?

׬o=a»   Dyadic link
×        Multiply the two arguments.
 ¬       Logical not. Gives 1 if one argument is 0, 1 otherwise.
   =     Are the two arguments equal?
  o      Logical or the result of = and ¬. 
     »   Greater of the two arguments.
    a    Logical and. Gives the greater of the two arguments if they are equal
         or if one of them is zero and gives 0 otherwise.

এপিএল উত্তরে পদ্ধতিটি ব্যবহার করে আমরা একই বাইট গণনাটি পাই। এই উত্তরের চেয়ে একটি বাইট দীর্ঘতর কারণ সর্বনিম্ন সাধারণ একাধিক দুটি বাইট।

6 বাইট

«=æl×»

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


আমি নীচে একটি বিকল্প পদ্ধতিও নোট করি
এইচপিউইজ

@ এইচপিউইজ ওহ, আমি ভেবেছিলাম আপনি লিঙ্কটির মতো একই পদ্ধতি ব্যবহার করছেন
ডায়লানান

আমি দুটি পদ্ধতি ∧=⌊এবং =*⌊। যার দ্বিতীয়টি জেলি পছন্দ করেছেন
এইচ.পি.উইজ

@ এইচ.পি.উইজ আমি এপিএল বলি না, আপনি বর্ণিত পদ্ধতিটি আমি কেবল ব্যবহার করছি। কি করে =*⌊?
dylnan

এটি ন্যূনতম ব্যতীত জেলির মতো প্রায় একই রকম । অথবা যে কোনও একটি ×ভাষা উভয় ভাষায় ব্যবহার করতে পারে
H.PWiz
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.