অলস ড্রপ সাজানোর প্রয়োগ করুন


26

এই চ্যালেঞ্জ ইতিমধ্যে ড্রপসোর্ট বর্ণনা করে। যাইহোক, আমি ধরণ অলস এবং আমি সত্যিই শুধু আমার অ্যারের প্রয়োজন একটু বেশী করে সাজানো হতে পারে, এটা সাজানো করা প্রয়োজন নেই সব পথ

ড্রপ বাছাইয়ে, আমরা প্রতিটি উপাদান এর আগে যে কোনও উপাদানের চেয়ে কম রেখে দেই। অলস ড্রপ বাছাইয়ের ক্ষেত্রে, আমরা প্রতিটি উপাদান এর পূর্বে কঠোরভাবে পূর্বের চেয়ে কম বাদ দিই ।

এখানে একটি উদাহরণ। নিম্নলিখিত অ্যারে বিবেচনা করুন:

8 6 9 9 7 2 3 8 1 3

আসুন প্রতিটি উপাদান এর আগের চেয়ে কম চিহ্নিত করুন।

8 6 9 9 7 2 3 8 1 3
  ^     ^ ^     ^

লক্ষ্য করুন যে কীভাবে 3চিহ্নিত করা হয়নি , শেষটিও নয় 8। এগুলির বাম দিকে একক উপাদানের চেয়ে সমস্ত বড়।

অ্যালগরিদম সম্পূর্ণ করা, চিহ্নিত উপাদানগুলি সরিয়ে, আমরা পাই:

8 9 9 3 8 3

এটি মূলত আরও সাজানো দেখায়। ধরণ. আমি অলস.

আপনার কাজটি যেমন আপনি ইতিমধ্যে ছাড় করেছেন, এই অ্যালগরিদমটি বাস্তবায়ন করা।

ইনপুটটি 1 থেকে 9 এর মধ্যে কমপক্ষে 1 ইতিবাচক পূর্ণসংখ্যার অ্যারে হয়, আপনি পাশাপাশি অঙ্কের স্ট্রিংও নিতে পারেন।

এটি , সবচেয়ে কম বাইট জয়!

অতিরিক্ত পরীক্ষার মামলা:

1
1

1 2 3
1 2 3

5 3 1
5

1 2 3 2 1
1 2 3

1 1 1 9 9 9 1 1 1 9 9 9 1 1 1
1 1 1 9 9 9 1 1 9 9 9 1 1

9 9
9 9

5 2 4 2 3
5 4 3

এটি একটি ফাংশন হতে পারে বা এটি একটি সম্পূর্ণ প্রোগ্রাম হতে হবে?
rafa11111

@ rafa11111 হয় ঠিক আছে
পাভেল

যদি এটি কোনও ফাংশন হয় তবে মূল প্রোগ্রামটিতে ইনপুট অ্যারেটিকে হার্ডকড করা যায়? এবং অ্যারের দৈর্ঘ্য ফাংশন ইনপুট হিসাবে পাস করা যেতে পারে?
rafa11111

@ rafa11111 ইনপুটটি নিজেই ফাংশনে হার্ডকড করা যাবে না। আপনার পরীক্ষামূলক প্রোগ্রামে কীভাবে ফাংশনটি এই ইনপুটটি পায় তা বিবেচ্য নয়। আপনি কেবলমাত্র সি / সি ++ বা অন্য কোনও ভাষা ব্যবহার করছেন যেখানে অ্যারের দৈর্ঘ্য নির্ধারণের একমাত্র উপায় হ'ল আপনি কেবল অ্যারের দৈর্ঘ্য নিতে পারেন।
পাভেল

উত্তর:



15

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

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

a=>a.filter(n=>~-a<(a=n))

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


2
n=>p<=nদারুণ লাগছিল ;-)
ETH প্রোডাকশনস

4
@ ইথ প্রডাকশনগুলি +4 বাইটের জন্য, ভাল (n=p)=>p<=(p=n)কাজ করে;)
আর্নল্ড

এই উত্তরটি আমার মনকে উড়িয়ে দিচ্ছে p, প্রথমবার অ্যাক্সেস করার চেষ্টা করার সময় কেন এটি বিস্ফোরিত হয় না , যখন এটি এখনও সংজ্ঞায়িত করা হয়নি?
ব্রায়ান এইচ।

1
@ শাগি যা নিরাপদ দেখায়। কম্পিউটারের সামনে এলে আপডেট হবে। ধন্যবাদ!
আর্নল্ড

2
@ পাভেলটি aপ্রাথমিকভাবে ইনপুট অ্যারেতে সেট করা থাকে এবং এর a-1ফলাফল হয় NaN(যদি না এটিতে একটি একক পূর্ণসংখ্যা থাকে, তবে এই ক্ষেত্রে এটি পূর্ণসংখ্যার সাথে জোর করা হয়)।
আর্নল্ড


6

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

জিউসেপিকে ধন্যবাদ একটি বাইট সংরক্ষণ করা।

0yd0<h~)

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


ব্যাখ্যা:

0                 % Push a zero
 y                % Implicitly grab the input and duplicate it.
                  % Stack: [8 6 9 9 7 2 3 8 1 3], 0, [8 6 9 9 7 2 3 8 1 3]
  d               % The difference between each number of the last element:
                  % Stack: [8 6 9 9 7 2 3 8 1 3], 0, [-2, 3, 0, -2, -5, 1, 5, -7, 2]
   0<             % Which are negative?
                  % Stack: [8 6 9 9 7 2 3 8 1 3], 0, [1 0 0 1 1 0 0 1 0]
     h            % Concatenate. Stack: [8 6 9 9 7 2 3 8 1 3], [0 1 0 0 1 1 0 0 1 0] 
      ~           % Negate. Stack: [8 6 9 9 7 2 3 8 1 3], [1 0 1 1 0 0 1 1 0 1]
       )          % Index. Stack: [8 9 9 3 8 3]

5

1
পার্ল 6perl6 -ne '$/>$_||.say;$/=$_'
ব্র্যাড গিলবার্ট 222 '

@ ব্র্যাড পার্ল 6 একটি আলাদা ভাষা (এটি পিছনের দিকে সামঞ্জস্যপূর্ণ নয়) এটি পোস্ট করুন!
wastl

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



4

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

âÿ╠╦░

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

কোডটি আনপ্যাকিং, উগলফুলিং, এবং মন্তব্য করা, আমরা এটি পেয়েছি।

Z   Push a zero under the input
f   Use the rest of the program as a filter on the input.  Output passing elements.
>   Current element is greater than previous?
_~  Push current element to the input stack; when the main stack is empty, pops fall back to this
!   Logical not; applies to the result of the greater-than

এটি চালান

নির্দেশাবলীর ক্রম বিশৃঙ্খলাযুক্ত তবে এর কারণ রয়েছে। স্ট্যাক্স উত্স কোড প্যাকিং সর্বদা একই আকারের ইনপুটটির জন্য একই আকারের আউটপুট দেয় না। মূলত, উত্সের শেষ বর্ণের একটি কম অক্ষরের কোড থাকলে আপনার একটি বাইট সংরক্ষণ করার সুযোগ রয়েছে। ভাল, !একটি মুদ্রনযোগ্য চরিত্রের জন্য আপনি পেতে পারেন এমন সর্বনিম্ন কোডগুলির একটি রয়েছে। (33 টি বিশেষভাবে) অনেক 6 বাইট ASCII স্ট্যাক্স প্রোগ্রাম কোনও ছোট প্যাক করতে পারে না। তবে তারা যদি একটি দিয়ে শেষ হয় !তবে তারা পারে। সুতরাং নির্দেশাবলীর এই বিশেষ ক্রমের কারণ হ'ল প্রোগ্রামের শেষে যৌক্তিকর শেষ না হওয়া নিশ্চিত করা।


4

জে, 12 বাইট

#~1,2&(<:/\)

ব্যাখ্যা:

#~1,2&(<:/\)    | Whole function, executed as a hook
       <:/      | Distribute <: (greater or equal) over an array
    2&(   \)    | Apply to each sub array of length 2
  1,            | Append a 1 to the front
#~              | Choose elements from the original array

উদাহরণ:

    2&(<:/\) 8 6 9 9 7 2 3 8 1 3
0 1 1 0 0 1 1 0 1
    1,2&(<:/\) 8 6 9 9 7 2 3 8 1 3
1 0 1 1 0 0 1 1 0 1
    (1 0 1 1 0 0 1 1 0 1) # 8 6 9 9 7 2 3 8 1 3
8 9 9 3 8 3
    f =: #~1,2&(<:/\)
    f 8 6 9 9 7 2 3 8 1 3
8 9 9 3 8 3

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


চমৎকার সমাধান! আমি আপনার কোডের জন্য একটি টিআইও লিঙ্ক যুক্ত করেছি।
গ্যালেন ইভানভ

4

জেলি , 6 বাইট

>Ɲ0;¬×

I / O স্ট্রিংগুলিতে রয়েছে।

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


আমি কৌতূহলী, কেন স্ট্রিংগুলিতে অপারেটিং করছি এবং অ্যারে নয়? আমাকে বলা হয়েছিল জেলি স্ট্রিং এ খারাপ bad
পাভেল

2
এটাই. ×চরিত্র পুনরাবৃত্তি জন্য কাজ করা উচিত নয়, কিন্তু এটি।
ডেনিস

4

জাভা 8, 66 55 48 বাইট

l->{for(int i=0;;)if(i>(i=l.next()))l.remove();}

-11 থেকে একটি টিপ পরে বাইট @ OlivierGrégoire
-7 আরো ধন্যবাদ বাইট @ OlivierGrégoire

ব্যাখ্যা:

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

l->{                     // Method with Integer-ListIterator parameter and no return-type
  for(int i=0;;)         //  Loop over all items
    if(i>(i=l.next()))   //   If the current item is larger than the next
      l.remove();}       //    Remove this next item

~0এটি যখন মূলত হয় তখন কেন সবাই ব্যবহার শুরু করে -1। ব্যক্তিগতভাবে আমি আরও স্বজ্ঞাত সমাধানটি বেছে নেব যদি বাইট-গণনা একই দৈর্ঘ্য হয় ( while(...)বনাম বাদে for(;...;), এই ক্ষেত্রে আমি পছন্দ করি for। তবে অন্য -7 বাইটের জন্য ধন্যবাদ, যদিও :) :)
কেভিন ক্রুইজসেন

এটি কারণ আমি 2-পরিপূরকের সাথে খারাপ ... আমি খুব খারাপ আমি বলতে চাইছিলাম Integer.MIN_VALUE(যা তখন 1<<31, আমি অনুমান করি ...) ;-)
অলিভিয়ের গ্রাগোয়ার

4

অক্টাভা , 21 বাইট

@(x)x(~[0,diff(x)<0])

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

ব্যাখ্যা:

xইনপুট হিসাবে কোনও ভেক্টর নিন এবং একটি ভেক্টর তৈরি করুন, [0, diff(x)<0]যেখানে diff(x)সমস্ত সংলগ্ন উপাদানগুলির মধ্যে পার্থক্য সহ একটি ভেক্টর রয়েছে। শূন্যের সাথে তুলনা করে কেবল নেতিবাচকদেরই রাখুন, আমাদের যে সমস্ত উপাদানগুলি ড্রপ করতে চাই তার একটি তালিকা প্রদান করে।

এরপরে আমরা যে ইনপুট ভেক্টরটি রাখতে চাই তা থেকে উপাদানগুলি নির্বাচন করি।


4

ভি , 25 বাইট

òjälá k$yl+@"òç-/d
ç /dw

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

Hexdump:

00000000: f26a e46c e120 6b24 796c 2b40 2218 f2e7  .j.l. k$yl+@"...
00000010: 2d2f 640a e720 2f64 77                   -/d.. /dw

কাজের জন্য সবচেয়ে খারাপ ভাষা। তবে আমি সাহস করেছিলাম ।


6
পার্শ্ব নোট: ওজালি আশা করি স্প্যানিশ ।
ডেনিস

2
পছন্দ করুন k$yl+@"òç-/dস্প্যানিশ কিসের জন্য?
ডিজেএমসিএমহেম

7
k$yl+@"òç-/dউদারভাবে আউচ
লুইস মেন্ডো

3

ত্রিভুজ্যতা , 71 বাইট

.....).....
....IEL....
...)rFD)...
..2+)IE)w..
.+h)2_stDO.
={M)IEm}...

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

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

) আইইএল) আরএফডি) 2+) আইই) ডাব্লু + এইচ) 2_stDO = {এম) আইইএম} - সম্পূর্ণ প্রোগ্রাম।
) আইই - আমি 0 তম ইনপুট পান এবং এটি মূল্যায়ন করুন।
   এল) আর - এবং সীমাটি [0 ... আমার দৈর্ঘ্য) টিপুন।
      F {- এই পরিসীমাতে পূর্ণসংখ্যার ফিল্টার করুন যা সন্তুষ্ট:
       ডি) 2+) আইই) ডাব্লু + এইচ) 2_stDO = - এই শর্ত। প্রতিটি উপাদান ই আলাদা করে চালায়
                                    মানদণ্ডের সাথে মেলে না এমনগুলি স্ট্যাক এবং বাতিল করুন।
       ডি) 2+ - সদৃশ এবং দ্বিতীয় অনুলিপিতে 2 যোগ করুন।
           ) আইই - আমি পুনরুদ্ধার করুন।
              ) - স্ট্যাকের উপর 0 চাপুন।
               ডাব্লু - একটি তালিকাতে 0 টি মোড়ক করুন। [0]
                + - এটি আইতে প্রস্তুত করুন
                 h - মাথা। ই + 2 সূচকের পরে উপাদানগুলি ট্রিম করুন।
                  ) 2_ - আক্ষরিক -2।
                     st - লেজ
                       কর = - ফলাফল বাছাইয়ের চেয়ে অদৃশ্য কিনা তা পরীক্ষা করে দেখুন।
                           এম) আইএম} - শেষ অংশ: ইনপুটটিতে সূচক।
                           এম} - প্রতিটি সূচক যা শর্ত পূরণ করে:
                            ) আইএম - আমি সেই অবস্থানটিতে থাকা উপাদানটি পুনরুদ্ধার করুন।

2
কৌতূহলের বাইরে (যেহেতু আপনি ত্রিভুজাকৃতিরতার স্রষ্টা): কেন হেক্সাগনি / কিউবিকির মতো অনুরূপ কিছু করবেন না, যেখানে কোডের একটি অংশটি স্বয়ংক্রিয়ভাবে নো-অপশন বিন্দু দিয়ে পূর্ণ হয়ে যায়? সুতরাং এই প্রোগ্রামটি )IEL)rFD)2+)IE)w+h)2_stDO={M)IEm}যা আপনার বর্তমান উত্তর প্রসারিত হবে?
কেভিন ক্রুইজসেন

@ কেভিন ক্রুজসেন কারণ আমি আসলে ত্রিভুজকে একটি 2 ডি এসোলাং করার পরিকল্পনা করছিলাম তবে আমি এই ধারণাটি ছেড়ে দিয়েছিলাম যাতে আমি কেবল আমার পূর্ববর্তী টেম্পলেটটিতে আটকেছি। আমি মনে করি আমি খুব শীঘ্রই কিছু বড় পরিবর্তন করব, যখন আমি ত্রিভঙ্গিকতা v2 প্রকাশ করি। (এছাড়াও এটির বর্তমান আকারে এটি গল্ফ করা মজাদার বিষয়, কারণ একটি সহজ 1-বাইট সেভ ইনলাইন আপনাকে পরিবর্তে 20: ডি বাঁচাতে পারে যদিও এটি জিনিস ঠিক করার সময় বিপরীতমুখীভাবে প্রয়োগ করা হয়: সি)
মিঃ এক্সকোডার

ঠিক আছে, আপনি যদি এটি 2 ডি এসোলাং হিসাবে প্রকাশের পরিকল্পনা করেন তবে আমার মন্তব্য এখনও (কিছুটা) দাঁড়িয়ে আছে। )IEL)rFD)2+)IE)w+h)2_stDO={M)IEm}এটি আপনার কোড হবে, এটি আপনার বর্তমান টেম্পলেটটিতে প্রসারিত হবে এবং তারপরে সেই প্রসারিত টেম্পলেটটিতে 2D কমান্ডগুলি করবে। সম্পাদনা করুন: .....).....\n....IEL....\n...)rFD)...\n..2+)IE)w..\n.+h)2_stDO.\n={M)IEm}...এবং .....).........IEL.......)rFD).....2+)IE)w...+h)2_stDO.={M)IEm}...এবং )IEL)rFD)2+)IE)w+h)2_stDO={M)IEm}সব তিনটি সঠিক একই কর্মসূচি হবে।
কেভিন ক্রুইজসেন

3

পাইথন , 40 বাইট

f=lambda h,*t:t and h+f(*t)[h>t[0]:]or h

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

অক্ষরের tuple হিসাবে ইনপুট।


পাইথন 3 , 41 বাইট

p=''
for x in input():x<p or print(x);p=x

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

স্ট্রিং ইনপুট।


পাইথন 2 , 41 বাইট

for x in input():
 if x>=id:print x
 id=x

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

স্ট্রিং ইনপুট, কেবল স্ট্রিংগুলির চেয়ে বড় idতবে সংখ্যা কম।


3

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

Pick[#,Arg[#-{0}~Join~Most@#],0]&

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

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

কোডটি # - {0}~Join~Most@#একটি অ্যারেকে {a,b,c,d,e,f}রূপান্তরিত করে {a,b-a,c-b,d-c,e-d,f-e}। এটিতে প্রয়োগ Argকরা নেতিবাচক সংখ্যাগুলিতে সেট করে Piএবং নননেজিটিভ সংখ্যাগুলিতে সেট করে 0

Pick[#, ..., 0]&#যেখানে ...আছে তার এন্ট্রিগুলি খুঁজে বের করে 0: আমাদের ক্ষেত্রে, ঠিক আগের উপাদানগুলি যখন আপনি পূর্ববর্তী উপাদানটি বিয়োগ করে তখন একটি অজাতীয় সংখ্যা দেয়। অন্য কথায়, অলস্রড্রপোর্টিংয়ের সময় এগুলি হ'ল আমরা অবশ্যই রাখতে চাই।


3

আশ্চর্য , 27 বাইট

-> ':1.!> 'sS#<=.cns2.++[0]

ব্যবহারের উদাহরণ:

(-> ':1.!> 'sS#<=.cns2.++[0])[8 6 9 9 7 2 3 8 1 3]

ব্যাখ্যা

অবরুদ্ধ সংস্করণ:

(map get 1).(fltr sS <=).(cns 2).(++ [0])

প্রস্তুত করুন 0, একটানা জোড়ের তালিকা পান, তালিকার আইটেম রাখুন যেখানে প্রথম সংখ্যা <= দ্বিতীয় সংখ্যা, প্রতিটি জোড়ের দ্বিতীয় নম্বর পান।


3

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

#&@@@Split[#,##>0&]&
(* or *)
Max/@Split[#,##>0&]&

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

ব্যাখ্যা

Input = {8, 6, 9, 9, 7, 2, 3, 8, 1, 3}

Split[#,##>0&]

ধারাবাহিকভাবে উপাদানগুলি কঠোরভাবে ঘোষণা করছে এমন গোষ্ঠীগুলি: {{8, 6}, {9}, {9, 7, 2}, {3}, {8, 1}, {3}}

#&@@@

প্রত্যেকের প্রথম উপাদানটি নিন: {8, 9, 9, 3, 8, 3}


##>0অভিনব এবং সব কিছু, তবে এটি আসলে #>#2এখানে কিছুই সংরক্ষণ করে না ;) (যা আপনার প্রোগ্রামকে স্বেচ্ছাসেবী পূর্ণসংখ্যার সাথে কাজ করবে, যদিও এটি প্রয়োজনীয় নয়)।
মার্টিন এন্ডার


3

এসডাব্লুআই-প্রোলগ, 44 বাইট

[A,B|C]-[A|E]:-B<A,[B|C]-[B|E];[B|C]-E. L-L.

ব্যবহার: " তালিকা- এক্স" কল করুন যেখানে তালিকাটি বন্ধনী দ্বারা আবদ্ধ, কমা-বিচ্ছিন্ন তালিকা যেমন [1,4,5,1,11,6,7]।


1
সাইটে স্বাগতম! :)
DJMcMayhem

2

এপিএল + উইন, 14 বাইট

পূর্ণসংখ্যার ভেক্টরের স্ক্রিন ইনপুটটির জন্য অনুরোধ জানানো হয়।

(1,1>2-/v)/v←⎕


2

কোটলিন , 39 বাইট

a->a.filterIndexed{i,v->i<1||v>=a[i-1]}

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

ফিল্টার আইটেমগুলি হয় হয় প্রথম আইটেম (সূচক == 0, বা আরও ছোট সূচক <1) বা বর্তমান মান পূর্ববর্তী আইটেমের (তার [i-1]) এর চেয়ে বড় বা সমান।


2

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

{⍵⌿⍨12≤⌿⍵}

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

এটি আসলে গ্রাহামের উত্তরের সাথে বেশ মিল, তবে ডায়ালাগে এবং স্বতঃ বিকাশ লাভ করেছে। এছাড়াও, আরও প্রতিসাম্যযুক্ত।


2

কে 4 , 10 বাইট

সমাধান:

x_/|&<':x:

উদাহরণ:

q)k)x_/|&<':x:8 6 9 9 7 2 3 8 1 3
8 9 9 3 8 3

ব্যাখ্যা:

সূচকগুলি সন্ধান করুন যেখানে উপাদান পূর্বের চেয়ে কম, ইনপুট থেকে এই সূচকগুলি সরিয়ে ফেলুন

x_/|&<':x: / the solution
        x: / store input as x
     <':   / less-than each-previous
    &      / indices where true
   |       / reverse
 _/        / drop-over
x          / the input

2

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

{Mask[1'(Delta!_>=0),_]}

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

ব্যাখ্যা

Maskএটির দ্বিতীয় যুক্তি থেকে সমস্ত উপাদান নির্বাচন করে যা এর প্রথম যুক্তিতে সত্যবাদী উপাদানের সাথে মিল রাখে। 1'(Delta!_>=0)চূড়ান্ত অ্যারেতে থাকা উপাদানগুলির সাথে অনুরূপ সূচকগুলি গণনা করে।

অন্যান্য প্রচেষ্টা

২৮ বাইট (পয়েন্টফ্রি): ~Mask#(1&`'##Delta#`>=#C[0])

32 বাইট: {Mask[1'(&`<= =>Slices[_,2]),_]}


2

সি # (.নেট কোর) , 33 + 18 = 51 বাইট

x=>x.Where((a,n)=>n<1||x[n-1]<=a)

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

মূলত স্টেটমেন্টটি যেখানে x অ্যারেতে প্রথম int হয়, বা পূর্ববর্তী সংখ্যার চেয়ে বড় বা সমান হয়, এটি রাখুন। অন্যথায় এটি ছেড়ে দিন।


1
আপনি একটি ফিরে আসতে পারেন IEnumerableToArray()দরকার নেই ।
পাভেল

@ পাভেল আমার একটি অতিরিক্ত রেফারেন্স যুক্ত System.Collectionsকরতে হবে এবং এটি অপসারণের জন্য সংরক্ষিত সমস্ত বাইটকে প্রত্যাখ্যান করবে ToArray()
ডেনিস.ভেরউইজ

না, যেহেতু আপনি IEnumerableউত্তরে উল্লেখ করছেন না, কেবল এটির ফেরতের ধরন হিসাবে ব্যবহার করছেন using
পাভেল

@Pavel ঠিক আছে ধন্যবাদ, মাঝে মাঝে আমি একটি বিট অনিশ্চিত যখন বাইট বা না ... দুঃখিত গণনা আছি
Dennis.Verweij


1

জেলি , 9 বাইট

0;>ƝżµḢÐṂ

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

এটি বেশ ভারী বোধ করে, এর চেয়ে ভাল উপায় যদি থাকে তবে তা অবাক হবেন না।

0;>ƝżµḢÐṂ
   Ɲ       For each adjacent pair in the input...
  >        ...is the first element greater than the second? (yields a list of 0/1)
0;         prepend a zero to this list (always keep the first element)
    ż      zip with the input
     µ     new monadic link
       ÐṂ  keep elements of the list with minimal value of... (Ðḟ would have worked here and been slightly more clear but I'll leave it as it is)
      Ḣ    ...their first element

1

ব্রেন-ফ্লাক , 136 , 120 বাইট

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

এখানে এটি ফর্ম্যাট এবং "পঠনযোগ্য"

((()))
{
    {}

    ([{}]({}))

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

    {
        {}(({})<>)(())(<>)
    }

    {}

    ([][()])

}{}{}<>

{
    {}
    ({}<>)<>
}<>

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

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