তিনটি পূর্ণসংখ্যা কি আলাদা?


14

আপনাকে ইনপুট হিসাবে 3 টি পূর্ণসংখ্যা দেওয়া হবে। ইনপুটগুলি একে অপরের থেকে আলাদা বা নাও হতে পারে। তিনটি ইনপুট একে অপরের থেকে আলাদা হলে আপনাকে 1 আউটপুট দিতে হবে এবং যদি কোনও ইনপুট একাধিকবার পুনরাবৃত্তি করা হয় তবে।

এটি , সুতরাং আপনার কোডটি যতটা সম্ভব সংক্ষিপ্ত করুন!


1
পিপিসিজিতে আপনাকে স্বাগতম। ভাল প্রথম চ্যালেঞ্জ। আমরা এই সাইটে উদ্দেশ্য জয়ের মানদণ্ড সম্পর্কে বেশ কঠোর। কোড-গল্ফ এখানে সুস্পষ্ট পছন্দ বলে মনে হচ্ছে, তাই আমি এটি আপনার পোস্টে যুক্ত করব। আমি ভুল হলে শুধরে.
অ্যাডম

1
কিছু পরীক্ষার কেস ভাল হবে।
অ্যাডম

19
যে কেউ সমস্ত জবাব হ্রাস পাচ্ছে তাকে কেন কমপক্ষে ব্যাখ্যা করা উচিত ...
Arnauld

1
@ অ্যাডম আমার মনে হয় আরও সঠিক শিরোনামটি কি তিনটি পূর্ণসংখ্যা পৃথক হবে?
Arnauld

5
আমার প্রতারিত-ভোট হাতুড়ি, কিন্তু সম্ভাব্য সদৃশ " নির্ধারণ যদি সব দশমিক সংখ্যা অনন্য " সামান্য ভিন্ন, কিন্তু অধিকাংশ উত্তর এখনও বৈশিষ্ট্যসমূহ নিয়ে আসা যেতে পারে।
কেভিন ক্রুইজসেন

উত্তর:


10

ওপি 1 টি বনাম 0 চেয়েছিল, সুতরাং আপনার আরও একটি বাইটের দরকার হতে পারে:lambda*a:len({*a})//3
tsh

পাইথনে @ স্প 1 == True, আমার মনে হয় এটি সম্পর্কে কোথাও একটি মেটা পোস্ট রয়েছে
স্টিফেন

1
@tsh - প্রাসঙ্গিক মেটা "যদি এটি একটি সংখ্যার মতো শূন্য করে তবে এটি একটি সংখ্যা" - পাইথনে: False * Trueহয় 0; False + Trueহয় 1; ইত্যাদি ...
জোনাথন অ্যালান

প্রাসঙ্গিক মেটা থেকে: "এটি এমন চ্যালেঞ্জগুলির ক্ষেত্রে প্রযোজ্য না যেখানে সঠিক স্ট্রিং আউটপুট প্রয়োজন হয়", সুতরাং আমি নিশ্চিত না যে এখানে আসলে কী প্রয়োগ হয়।
জিবি


8

আর , 13 বাইট

mad()অনিচ্ছাকৃত উদ্দেশ্যে ব্যবহার করে @ কিরিলের একটি আলাদা সমাধান !

mad(scan())>0

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


1
ওয়েল ইনপুটটি মোটেই নির্দিষ্ট করা হয়নি, সুতরাং আইএমও 3 টি মানকে ইনপুট হিসাবে গ্রহণ করার অর্থ আমরা কোনও ভেক্টর গ্রহণ করতে পারি
digEmAll

2
গল্ফ ভাষার সাথে প্রায় প্রতিযোগিতা! : ডি
digEmAll সমস্ত

1
আমি বিশ্বাস করি গৌস madঠিক এই উদ্দেশ্যে আবিষ্কার করেছিলেন।
এনজিএম

5

আর , 24 22 20 বাইট

all(table(scan())<2)

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

একটি বুলিয়ান প্রদান করে, তবে লোকেদের হিসাবে ইতিমধ্যে আলোচনা করা হয়েছে পাইথন উত্তর , এটি ঠিক আছে।

2 বাইট বাঁচানোর জন্য digEmAll কে ধন্যবাদ।



11 বাইট - আপনার যদি ট্রুথি হিসাবে কোনও নম্বর> 0 রাখার অনুমতি দেওয়া হয়। অন্যথায়, 13 বাইটে আউটপুট >0জন্য সংযোজন TRUE/FALSE
জে.ডো

1
বাহ, এই ফাংশন সম্পর্কে এমনকি জানতেন না। আমি আপনাকে এটি আলাদাভাবে পোস্ট করার পরামর্শ দিচ্ছি (আপনার মোছা উত্তরটি সম্পাদনা করুন এবং পুনরুদ্ধার করুন), তবে আমি মনে করি আপনাকে 13 বাইট দিয়ে আটকে থাকতে হবে - অন্যদিকে টি / এফ আসলে 1/0, 1.48 এর মতো কাজ করে না।
কিরিল এল।

5

জাভাস্ক্রিপ্ট, 22 বাইট

যদি আমরা বুলিয়ান মানগুলি আউটপুট করতে পারি তবে শেষ 2 বাইটগুলি সরানো যেতে পারে।

a=>new Set(a).size>2&1

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

একই বাইট গণনার জন্য, এটি যে কোনও আকারের অ্যারেগুলিতে কাজ করে তবে ধরে নেয় যে ইনপুটটিতে কখনই একটি থাকবে না 0এবং আউটপুটটি বুলিয়ান।

a=>!a[new Set(a).size]

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


ধরে নিচ্ছি যে আমরা ইনপুটটিকে একটি অ্যারে হিসাবে নিতে পারি এবং একটি বুলিয়ান ফিরিয়ে দিতে পারি:a=>new Set(a).size>2
Arnauld

@ আর্নল্ড, হ্যাঁ আমারও তা ছিল তবে এটি যেমন অনুমান করে এটি অনুমোদন দেয় না - যদিও চশমাটি পরিবর্তন হয় তবে আপডেট হবে।
শেগি

অপেক্ষা কর. আমি কেবল &122 বাইটে টেক করতে পারি ।
শেগি

4


বুলিয়ান এবং পূর্ণসংখ্যা রুবিতে বিভিন্ন ধরণের।
জিবি

আহ, আপনি ঠিক বলেছেন। আমি চ্যালেঞ্জটি খুব কাছাকাছিভাবে পড়িনি, এবং ধরে নিয়েছি সত্যবাদী / মিথ্যা আউটপুট যথেষ্ট।
বেনজ 2240

4

কিউবিক্স , 55 25 বাইট

-29 জো কিংকে ধন্যবাদ

O@O1u|@O@II-!/;I-!/;u^?-p

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

বেশ কয়েকটা বাইট বন্ধ করে দেওয়া উচিত to



অনেক ধন্যবাদ. মোট 25 টি বাইটে পৌঁছতে আমি আরও 1 টি বাইট শেভ করতে পেরেছি
লুক

আমার মনে হয় আপনি একটি অনুপস্থিত করা যেতে পারে @স্থানে .9 ম স্থানে। এটি 1 2 2 এর জন্য কিছু মজার কাজ করে
মিকিটি

3

05 এ বি 1 , 2 বাইট

ÙQ

এটি অনলাইনে চেষ্টা করুন বা আরও কিছু কেস যাচাই করুন

ব্যাখ্যা:

Ù     # Uniquify the (implicit) input
 Q    # Check if it's still equal to the (implicit) input

সিদ্ধান্ত-সমস্যার জন্য মানক সত্যবাদী / মিথ্যা নিয়ম ব্যবহার করে , 105AB1E এর একমাত্র সত্যবাদী মানটি মনে রেখে , ¢Pপাশাপাশি বিকল্প 2-বাইটার কাজ করে।
মিঃ এক্সকোডার

1
@ Mr.Xcoder আমি নিশ্চিত বর্তমানে বৈধ যে আসলে নই - প্রশ্ন আউটপুট 1 এবং 0 চায় - 4উদাহরণস্বরূপ, ত্ত 1না 0, কিংবা মত আচরণ করে না 1বা 0(যেমন Trueএবং Falseপাইথন না)। প্রশ্নটি সম্ভবত সত্যবাদী / ফ্যালাসির কাছে জিজ্ঞাসা করা উচিত তবে বর্তমানে তা তা করে না।
জোনাথন অ্যালান

3

গণিত, 13 বাইট

Boole[E!=##]&

খাঁটি ফাংশন। ইনপুট এবং রিটার্ন হিসাবে 0বা 1আউটপুট হিসাবে তিনটি পূর্ণসংখ্যা নেয় । আমি জানি যে এটি ডেভিড জি স্টার্কের জবাবের মতোই , তবে এটি SlotSequenceএকটি বাইট শেভ করার জন্য (তুলনা করে Boole@*Unequal) শোষণ করে ।


3

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

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

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

কিভাবে এটা কাজ করে

,>,>,                   'read input as A, B, and C
[-<-<->>]>>+            'compute A-C, B-C
++++++[>+++++++<-]+     'prepare output
<<<<[>]>>               'if A-C != 0 && B-C != 0
[
    <<<[-<->]           'compute A-B
    <[>]>>->            'if A-B != 0
    [>.<<<->>-]         'print 1
    <+
]
<+
[                       'else (this else is for both of the if statements, even though they are nested... wierd, I know)
    >>>[>]              
    <-.>                'print 0
]





2

পাওয়ারশেল, 27 25 বাইট

-2 বাইটস ধন্যবাদ অ্যাডমবর্কবার্ক

+!(($args|group).Count-3)

পরীক্ষার স্ক্রিপ্ট:

$f = {
+!(($args|group).Count-3)
}

&$f 1 2 3
&$f 3 2 1
&$f 2 1 3
&$f 2 2 3
&$f 2 1 1
&$f 2 1 2

ব্যাখ্যা:

    $args|group           # Group arguments
   (           ).Count    # Count of groups 
  (                   -3) # is 0 if inputed integers are unique
 !                        # operator not converts int to boolean: true if integers are unique
+                         # converts boolean to int: 1 if integers are unique, otherwise 0

1
26 বাইট -+(($args|group).count-eq3)
অ্যাডমবর্কবর্ক

মহান! এবং ধন্যবাদ
mazzy



1

এপিএল (ডায়ালগ ইউনিকোড) , 3 বাইট এসবিসিএস

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

∪≡⊢

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

 আর্গুমেন্ট থেকে অনন্য উপাদানগুলির সেট করে

 ম্যাচ

 অপরিশোধিত যুক্তি?



1

সংযুক্তি , 10 বাইট

`==#Unique

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

এটি অপারেটরের একটি কাঁটাচামচ `==এবং এর Uniqueসমতুল্য:

{ _ == Unique[_] }

বিকল্প

{#_=#Unique[_]} (15 বাইট)

Any##Same=>Pairs@Sort (21 বাইট)

Any@{`=&>_[[0'1,1'2,2'0]]} (২ 26 বাইট)

&${not(x=y or y=z or x=z)} (২ 26 বাইট)

&${x/=y and y/=z and x/=z} (২ 26 বাইট)

{Any!Same=>Chop&2!_[0'1'1'2'2'0]} (৩৩ বাইট)


1

জাভা 9, 43 27 বাইট

অলিভিয়ার গ্রাগোয়ারকে ধন্যবাদ

(a,b,c)->a!=b&b!=c&a!=c?1:0 

পূর্ববর্তী প্রচেষ্টা:

(a)->a[0]==a[1]||a[0]==a[2]||a[1]==a[2]?0:1

1
কেন এটিকে 43 বাইট হিসাবে গণনা করবেন না
ASCII- কেবল


এছাড়াও, প্রথম কোড (100 বাইট) সংকলন করে না এবং এটি ব্যবহার করে না যা আপনি এখানে (সংকলন সংশোধন করার পরে) সম্মুখীন== হওয়া Stringব্যতীত প্রযোজ্য নয় এবং দ্বিতীয় কোডে কোনও নকল সরবরাহ করা থাকলে পদ্ধতিটি নিক্ষেপ করবে । আমি মোটেও টেস্ট না করার জন্য -1 এ প্রলুব্ধ হয়েছি। Set.ofIllegalArgumentException
অলিভিয়ার গ্রাগোয়ার

@ অলিওভার ক্ষমা চেয়ে দেরী হয়ে গেছে এবং আমি আমার মাথায় কয়েকটি ভিন্ন ধারণা মিশ্রিত করেছি। সেট.ওফ হিসাবে, আমি কেবল জাভা 9 কিনক্স নিয়ে পরীক্ষা-নিরীক্ষা করেছি এবং জাভা 9 আমার নিজের নেই। আমার ডকুমেন্টেশনটি আরও মনোযোগ সহকারে পড়া উচিত ছিল, সে সম্পর্কে দুঃখিত। আমি আমার কম্পিউটারে উঠলে আমি সম্পাদনা করব।
কুইন্টেক


1

টি এসকিউএল, 39 বাইট

SELECT IIF(a=b OR b=c OR c=a,0,1)FROM s

ইনপুট পৃথক কলাম হিসাবে নেওয়া হয় A, B, C পূর্ব বিদ্যমান টেবিল থেকে গুলি , আমাদের আই মান অনুযায়ী

COUNT DISTINCTপৃথক সারি হিসাবে নেওয়া ইনপুট থেকে ব্যবহার করে একটি পরিবর্তনের চেষ্টা করেছিলেন , তবে এটি ছিল কয়েক বাইট দীর্ঘ।


1

পাইথ, 3 বাইট

s{I

তালিকা হিসাবে ইনপুট নেয়।
এখানে চেষ্টা করুন

ব্যাখ্যা

s{I
 {IQ     Check if the (implicit) input is invariant under deduplication.
s        Cast to int.

যদি আমাদের 1 এবং 0 (যা তারা পাইথের আড়ালে রয়েছে) হিসাবে সত্য এবং মিথ্যা হিসাবে আচরণ করার অনুমতি sপেয়ে থাকে তবে আমরা 2 বাইটে নেমে যেতে নামতে পারি ।


1

স্মাইলব্যাসিক, 25 24 বাইট

READ A,B,C?A-B&&B-C&&C-A


1

> <> , ১৯ 17 বাইট

জো কিং দ্বারা -2 বাইট।

:{:{:{=}=}=++0=n;

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



আমার অবশ্যই এটি ধরা উচিত ছিল, ধন্যবাদ!
পিজেইউজেডগাস্ট

@ রশভমহেতা দয়া করে অন্যান্য ব্যবহারকারীর গল্ফিং পরামর্শ ব্যবহার করে অন্য ব্যবহারকারীর পোস্টগুলিকে গল্ফ করবেন না।
জনাথন ফ্রেচ

1

q 14 বাইট

{x~distinct x}

প্রযুক্তিগতভাবে এই দ্রবণটি '1 বি' বা '0 বি' ফিরিয়ে দেবে, এটিই বুলিয়ান মানকে একটি সংখ্যাসূচক ধরণের থেকে পৃথক করা হয়, যদিও এটি সমস্ত গাণিতিক কার্যকারিতা বজায় রাখে, এবং সংক্ষেপে এটি 1 বা 0:

q)1b +35
36

1 বা 0 নন-বুলিয়ান ফিরে পেতে আপনার নীচে রয়েছে, যা বাইট গণনাটি 21 এ নিয়েছে

{$[x~distinct x;1;0]}

1
{1&/0N>':x?x}
ngn

1

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

f=a=>a.map((m,i)=>a.map((n,j)=>m==n&i!=j).every(z=>!z)).every(y=>y)

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


দুঃখিত, তবে জে উত্তর ইতিমধ্যে এখানে এবং কোড হুবহু একই।
বুদ্বুদ

আমার খারাপ @ বুবলার এটি আসতে দেখেনি।

জেএস উত্তরে পরিবর্তিত হয়েছে

@ বুবলার সদৃশ এন্ট্রি অনুমোদিত নয়
জোনাথন ফ্রেচ

1

জেলি , 5 6 বাইট

ɠḲQL=3

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

5 থেকে 6 বাইট পর্যন্ত কারণ এটি আমার প্রথমবার এবং আমি গণ্ডগোল পেলাম (ওফস) এখনই এটি ঠিক করে ফেললাম

ɠḲQL=3
^^^^^
||||Is it equal to three?
|||How many unique numbers do we have? (length of unique numbers array)
||Sort By Unique
|Split by Spaces
Read Input

1
হ্যালো এবং পিপিসিজিতে আপনাকে স্বাগতম। আপনার কোডটিও কাজ করে 3 integers, বা এটি কেবল তিন অঙ্কের জন্যই কার্যকর?
জোনাথন ফ্রেচ

@ জোনাথন ফ্রেঞ্চ দুঃখের বিষয়, এটি কেবল তিনটি 1 ডিজিট সংখ্যার জন্য কাজ করে, এটি অনন্য অক্ষর দ্বারা ইনপুটটি বাছাই করে এটি করে, তারপরে অনন্য অক্ষরের পরিমাণ যদি ইনপুটটির সমান দৈর্ঘ্য হয় তা পরীক্ষা করে। এটি কোনও 3 টি পূর্ণসংখ্যার সাথে কাজ করার উপায় আছে তবে আমি মনে করি এটি আমার পক্ষে কমপক্ষে একটি ভাল প্রচেষ্টা!
বিড়ালছানা Hugger

2
চ্যালেঞ্জটি আপনাকে ইনপুট হিসাবে 3 পূর্ণসংখ্যা দেওয়া হবে তা নির্দিষ্ট করে। যা আপনার উত্তরটিকে অবৈধ বলে মনে হচ্ছে।
জোনাথন ফ্রেচ

@ জোনাথানফ্রেচ এখনই এটি স্থির করুন! আমার প্রথমবার এই ধরণের জিনিস করা ছিল, আমি এর মধ্যে সবচেয়ে বড় নই।
বিড়ালছানা Hugger 21
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.