একটি অ্যারে একত্রীকরণ


33

টাস্কটি সহজ: ইনটসের অ্যারে একীভূত করুন। এই অ্যারেটি একত্রীকরণের সাথে নিম্নলিখিতটি রয়েছে:

  • 0 টি সমস্ত দৃষ্টান্ত অ্যারের শেষে সরানো প্রয়োজন need
  • অ-শূন্য পূর্ণ পূর্ণসংখ্যার মধ্যে কোনও 0 টি হওয়া উচিত।
  • সমস্ত শূন্য-সূচকগুলি তাদের ক্রম বজায় রাখা উচিত।

চ্যালেঞ্জ

সর্বনিম্ন পরিমাণে বাইটে একটি অ্যারে একত্রীকরণ করুন।

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

উদাহরণ

ইনপুট

0 5 8 8 3 5 1 6 8 4 0 3 7 5 6 4 4 7 5 6 7 4 4 9 1 0 5 7 9 3 0 2 2 4 3 0 4 8 7 3 1 4 7 5 1 2 1 8 7 8 7 7 2 6 3 1 2 8 5 1 4 2 0 5 0 6 0 3

আউটপুট

5 8 8 3 5 1 6 8 4 3 7 5 6 4 4 7 5 6 7 4 4 9 1 5 7 9 3 2 2 4 3 4 8 7 3 1 4 7 5 1 2 1 8 7 8 7 7 2 6 3 1 2 8 5 1 4 2 5 6 3 0 0 0 0 0 0 0 0

ইনপুট

-1 -7 -6 5 1 -5 -2 7 -3 -8 0 8 9 1 -8 -1 6 -4 1 -2 1 -7 5 4 -6 7 -3 9 8 3 -1 0 -5 -7 3 8 1 1 3 -3 -2 -2 0 -7 0 -4 8 6 -3 6 0 5 3 2 2 2 -2 -7 -3 9 -1 6 0 6 -7 9 4 -2 8 -8 -4 1 -8 4 3 7 3 5 1 0 3 3 7 -1 -5 1 -3 4 -7 0 3 2 -2 7 -3 0 0 2 -5 8 -3 -2 -7 -5 7 -3 -9 -7 5 8 -3 9 6 7 -2 4 7

আউটপুট

-1 -7 -6 5 1 -5 -2 7 -3 -8 8 9 1 -8 -1 6 -4 1 -2 1 -7 5 4 -6 7 -3 9 8 3 -1 -5 -7 3 8 1 1 3 -3 -2 -2 -7 -4 8 6 -3 6 5 3 2 2 2 -2 -7 -3 9 -1 6 6 -7 9 4 -2 8 -8 -4 1 -8 4 3 7 3 5 1 3 3 7 -1 -5 1 -3 4 -7 3 2 -2 7 -3 2 -5 8 -3 -2 -7 -5 7 -3 -9 -7 5 8 -3 9 6 7 -2 4 7 0 0 0 0 0 0 0 0 0 0

উদাহরণ কোড (জাভা)

public class Consolidate {
    public static void main(String[] args) throws Exception {
        int[] toConsolidate = new int[args.length];
        for (int i=0; i<args.length; i++){
            toConsolidate[i]=Integer.parseInt(args[i]);
        }
        for (int i=0; i<toConsolidate.length; i++) {
            for (int k=0; k<toConsolidate.length-1; k++) {
                if (toConsolidate[k] == 0){
                    toConsolidate[k] = toConsolidate[k+1];
                    toConsolidate[k+1] = 0;
                }
            }
        }
        for (int i:toConsolidate)
            System.out.print(i+" ");
    }
}

উদাহরণগুলির মতো কোনও পূর্ণসংখ্যা বা একক সংখ্যা?
edc65

@ edc65 আপনার ভাষা সমর্থন করে এমন কোনও পূর্ণসংখ্যা।
অ্যাডিসন ক্রম্প 21

সংক্ষিপ্ত উত্তরগুলি 3 টি অক্ষর দীর্ঘ হলে উদাহরণটি কীভাবে জটিল হতে পারে? জাভা কি এত ভার্বোস?
AL

7
"নন-শূন্য পূর্ণ পূর্ণসংখ্যার মধ্যে কোনও 0 এর উচিত হবে না"। অপ্রয়োজনীয়?
মার্টিন এন্ডার

1
@ মিমিবিস এই চ্যালেঞ্জের জন্য সঠিক ভাষা হতে পারে না। : পি
অ্যাডিসন ক্র্যাম্প

উত্তর:


31

পাইথ, 3 বাইট

!DQ

ব্যাখ্যা:

  Q    Input
!D     Sort by logical NOT

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


Qযেকোন পাইথ স্ক্রিপ্টের শেষে অন্তর্নিহিত হতে পারে (ধরে নেওয়া এটি ল্যাম্বদার বাইরে যা এটি এটি) এই 2 বাইট তৈরি করে।
hakr14

@ hakr14 2 বছর আগে এই বৈশিষ্ট্যটির অস্তিত্ব ছিল না।
ডেনিস

12

জেলি, 3 বাইট

¬Ụị

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

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

¬Ụị    Main link. Input: A (list)

¬      Compute the logical NOT of each element of A.
 Ụ     Grade up; sort the resulting list's indices by their corresponding values.
  ị    Retrieve the elements of A at that indices.

1
ওহে ওহে, আধুনিক জেলি 2-বাইট ¬Þএমনকি করতে পারে!
লিন

10

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

@(A)[A(~~A) A(~A)]

sort()অনেকগুলি বাইট নেয়। আমি কেবল লজিকাল ইনডেক্সিং ব্যবহার করব।

আদর্শের উপর উদাহরণ ।


সুন্দরভাবে সম্পন্ন. +1 টি।
রায়রিং -

বাহ, মতলবেও কাজ! আমি জানতাম না যে এই জাতীয়
সূচনা

9

আর, 29 23 21 বাইট

মার্কোব্রেইটিগ দ্বারা উল্লিখিত হিসাবে, যদি আমাদের এটি কোনও ক্রিয়াকলাপ হিসাবে সরবরাহ করার প্রয়োজন না হয় তবে আমরা এটিকে 21 বাইটে সংক্ষিপ্ত করতে পারি:

x=scan();x[order(!x)]

পূর্বের সংস্করণসমূহ:

function(x)x[order(!x)]

ফাংশনটি একটি ভেক্টরকে ইনপুট হিসাবে গ্রহণ করে এবং লজিকাল ভেক্টর দ্বারা অর্ডার দেয় যা ইনপুটটিকে অগ্রাহ্য করার ফলে আসে।

আসল উত্তর:

function(x)c(x[x!=0],x[x==0])

ফাংশনটি ইনপুট হিসাবে ভেক্টর গ্রহণ করে এবং c()অ-শূন্য মান এবং তারপরে শূন্য-মানগুলিকে সংযুক্ত করে ( )।


2
x = স্ক্যান (); x [ক্রম (! x)] কেবল 21 বাইট দীর্ঘ।
মার্কো ব্রেইটিগ

@ মারকোব্রেইটিগ, এটা ঠিক। আমি ভেবেছিলাম এটি একটি ফাংশন হওয়া উচিত (এবং প্রথমদিকে, প্রয়োজনীয়তাটি ছিল "একটি পূর্ণাঙ্গ প্রোগ্রাম")। আমার উত্তর আপডেট করবে

8

রেটিনা , 15

সাধারণ পুনরাবৃত্তি রেগেক্স বিকল্প:

+`\b0 (.*)
$1 0

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


1
আমি আমার জাভা উত্তরে একই পদ্ধতি ব্যবহার করেছি (যদি আমি এটি সঠিকভাবে পড়ছি)। : ডি
অ্যাডিসন ক্রম্প 20

7

ES6, 23 বাইট

a=>a.sort((x,y)=>!x-!y)

এটি এমন স্থানে ব্যবহৃত হত sortযা স্থিতিশীল ছিল না, এক্ষেত্রে আপনার 41 বাইটের দরকার ছিল:

a=>a.filter(x=>x).concat(a.filter(x=>!x))

6

পাইথন বাইট কোড (2.7.9), 252 বাইট, 33 টি অপকড, 0.0228 সেকেন্ড

এটি তখনই তৈরি হয়েছিল যখন প্রতিযোগিতাটি এখনও প্রতিযোগিতা ছিল

'SourceArray'ব্যবহারের জন্য ডাকা বর্তমান ডিরেক্টরিতে একটি ফাইল খোলে

LOAD_CONST          ''
STORE_FAST          no_zeroes#  no_zeroes = ''

LOAD_NAME           open
LOAD_CONST          'SourceArray'
CALL_FUNCTION       0,1#  open('SourceArray')
LOAD_ATTR           read
CALL_FUNCTION       0,0#  .read()

LOAD_ATTR           split
CALL_FUNCTION       0,0#  .split()

DUP_TOP
DUP_TOP             #Start if
BUILD_LIST          0
COMPARE_OP          ==
POP_JUMP_IF_TRUE    35#  if list == [], GOTO 35
LOAD_ATTR           pop
LOAD_CONST          0
CALL_FUNCTION       0,1#  list.pop(0)
DUP_TOP
LOAD_CONST          '0'
COMPARE_OP          ==
POP_JUMP_IF_TRUE    28#  if list.pop(0) == '0', GOTO 28
PRINT_ITEM          #  print list.pop(0)
JUMP_ABSOLUTE       13

POP_TOP
LOAD_CONST          '0%_'#  '0 '
LOAD_FAST           no_zeroes
INPLACE_ADD
STORE_FAST          no_zeroes#  no_zeroes = no_zeroes + '0 '
JUMP_ABSOLUTE       13

LOAD_FAST           no_zeroes
PRINT_ITEM          #  print no_zeroes

LOAD_CONST          None
RETURN_VALUE

co_code(প্রকৃত codey বিট)

'd\x01\x00}\x00\x00\te\x00\x00\x83\x00\x00\tj\x01\x00\x83\x00\x00\t\x04\x04g\x00\x00k\x02\x00sG\x00j\x02\x00d\x02\x00\x83\x01\x00\x04d\x03\x00k\x02\x00s8\x00Gq\x15\x00\t\x01d\x04\x00|\x00\x007}\x00\x00q\x15\x00\t|\x00\x00G\td\x00\x00S'

অথবা একটি .pyc ফাইল সংস্করণ 03F3

03 F3 0D 0A 40 FD B0 56 63 00 00 00 00 01 00 00 00 03 00 00 00 00 00 00 00 73 59 00 00 00 64 01 00 7D 00 00 09 65 00 00 64 02 00 83 01 00 6A 01 00 83 00 00 09 6A 02 00 83 00 00 09 04 04 67 00 00 6B 02 00 73 50 00 6A 03 00 64 03 00 83 01 00 04 64 04 00 6B 02 00 73 41 00 47 71 1E 00 09 01 64 05 00 7C 00 00 37 7D 00 00 71 1E 00 09 7C 00 00 47 09 64 00 00 53 28 06 00 00 00 4E 74 00 00 00 00 74 0B 00 00 00 53 6F 75 72 63 65 41 72 72 61 79 69 00 00 00 00 74 01 00 00 00 30 73 02 00 00 00 30 20 28 04 00 00 00 74 04 00 00 00 6F 70 65 6E 74 04 00 00 00 72 65 61 64 74 05 00 00 00 73 70 6C 69 74 74 03 00 00 00 70 6F 70 28 01 00 00 00 74 09 00 00 00 6E 6F 5F 7A 65 72 6F 65 73 28 00 00 00 00 28 00 00 00 00 74 09 00 00 00 70 79 6B 65 5F 63 6F 64 65 52 08 00 00 00 01 00 00 00 52 00 00 00 00

আপনি গিথুবটিতে আমার লাইব্রেরিটি ব্যবহার করে আমার উত্স কোডটি নিজেই সংকলনের চেষ্টা করতে পারেন আমি স্রেফ এটিতে একটি প্রতিশ্রুতি পোস্ট করেছি যাতে মন্তব্যের অনুমতি দেওয়া হয়েছে তাই আমি আশা করি এটি এখনও হিসাবে প্রতিযোগিতা করছে ;)

মোটামুটি সমান

no_zeroes = ''
unamed_variable = open('SourceArray').read().split()
while unamed_variable != []:
    unamed_variable_2 = unamed_variable.pop()
    if unamed_variable_2 == '0':
        no_zeroes += '0 '
    else:
        print unamed_variable_2,
print no_zeroes,

Wooow। আপনি এটি থেকে এক টন সময় কেটেছেন
অ্যাডিসন ক্রম্প 19

@ ভোটটোক্লোজটি আমার ল্যাপটপে এটি যে গতিবেগে চলেছিল প্রায় 1.5xx এর কাছাকাছি: হে কে বলেছিল পাইথন এত ধীর ছিল ?
নীল

6

পাইথন, 32 বাইট

lambda x:sorted(x,key=0..__eq__)

যেকোন পুনরাবৃত্ত (তালিকা, টিপল, ইত্যাদি) হিসাবে যুক্তি নেয়। আমাকে নতুন কৌশল শেখানোর জন্য @ এক্সনরকে ধন্যবাদ!


এটি ব্যবহার করতে কিছুটা খাটো key=0..__eq__(হ্যাঁ, দুটি বিন্দু)।
xnor

@ এক্সনর এটি ঝরঝরে ... এটি কীভাবে কাজ করে?
মেগো

7
বেশিরভাগ পাইথন অবজেক্টের একটি সমতা পদ্ধতি রয়েছে, উদাহরণস্বরূপ "abc".__eq__("abc")==True। আপনি যখন করবেন তখন এটি বলা হয় "abc"==কারণে, পাইথন পূর্ণসংখ্যার এটা নেই কিন্তু ভাসে না, এবং যেহেতু 0. == 0যা, আমরা তার সমতা অপারেটর প্রতিস্থাপন করতে পারেন।, 0..__eq__
xnor

@ এক্সন আহ, .__eq__পদ্ধতি সম্পর্কে আমি জানতাম , তবে দ্বিগুণ বিন্দু আমাকে বিভ্রান্ত করছে। আমি ধরিনি যে প্রথমটি একটি ফ্লোট আক্ষরিকের দশমিক পয়েন্ট।
মেগো

6

মতলব: 21 বাইট

@(a)[a(a~=0),a(a==0)]

প্রথমে ননজারো উপাদানগুলি মুদ্রণ করে, তারপরে শূন্য উপাদানগুলির সাথে সংযুক্ত করে

@(a)____ একটি ইনপুট আর্গুমেন্ট সহ একটি বেনামী ফাংশন তৈরি করুন a

[___,___] কমা দ্বারা পৃথক পৃথক বন্ধনীগুলির মধ্যে অনুভূমিক ভেক্টরকে সংযুক্ত করে

a(a~=0) ভেক্টরের সমস্ত ননজারো উপাদানগুলির সাথে ভেক্টরকে ফেরত দেয় a

a(a==0) ভেক্টরের সমস্ত শূন্য উপাদান সহ ভেক্টরকে ফেরত দেয় a


5

হাস্কেল, 26 বাইট

f x=filter(/=0)x++[0|0<-x]

সমস্ত শূন্যের পরে সমস্ত শূন্যের নম্বরে নিন। ফিল্টারিং ধ্রুবকগুলি (এখানে 0:) একটি তালিকা বোধগম্যতা ব্যবহার করার সময় বেশ ছোট [0|0<-x]


5

Zsh, 22 বাইট

(ইনপুটটি স্ক্রিপ্ট / ফাংশন ( $@ওরফে $argvঅ্যারে) হিসাবে আর্গুমেন্ট হিসাবে পাস হয়েছে , স্টাডআউটে স্থান পৃথকীকরণ তালিকা হিসাবে আউটপুট, নিউলাইন সমাপ্ত)

<<<${@:#0}\ ${(M)@:#0}
  • <<< string: এখানে স্ট্রিং স্ট্যান্ডিন হিসাবে $NULLCMDকমান্ড ( catডিফল্ট হিসাবে) হিসাবে পাস ।
  • ${@:#0} $@ 0 টি উপাদান বাদে
  • ${(M)@:#0} উপরের বিপরীত

এটি ধরে নিয়েছে (এখানে বেশ কয়েকটি অন্যান্য উত্তরগুলির মতো) যে ইনপুটটিতে শূন্যগুলি সমস্তই 0(না 00বা 0x0নাও 36#0) হিসাবে প্রকাশ করা হয় ।




4

এপিএল: 8 বাইট

(⍴a)↑a~0

a ~ 0 একটি থেকে শূন্যগুলি সরিয়ে ("0 ছাড়াই একটি" পড়ুন)
()a) এর মূল দৈর্ঘ্য ("আকৃতির" পড়ুন)
↑ প্যাডের শূন্য ছাড়াই একটি আসল দৈর্ঘ্যে

Http://ngn.github.com/apl/web/index.html এ এটি ব্যবহার করে দেখুন

পরীক্ষার ডেটা: এ ← 1 0 1 2 3 4 0 1 0 0 0 1 2 3 4 5


1
আপনি হয় একটি সম্পূর্ণ প্রোগ্রাম লিখুন এবং স্টিডিন থেকে ইনপুট পড়া উচিত, বা একটি ফাংশন লিখুন এবং এর পরামিতি থেকে ইনপুট পড়া উচিত। তবে আপনি ব্যবহার করতে পারেন ⍴↑{⍵~0}এবং এটি আরও খাটো।
জিমি 23013

এত দ্রুত নয়। AP ↑ {⍵ ~ 0} এপিএল 2000 বা আইবিএম এপিএল 2 তে নয়, সর্বত্র কাজ করবে না।
লোবাচেভস্কি

⍴ ↑ {⍵ ~ 0} একটি খালি ভেক্টরকে ফিরিয়ে দেবে। ⍴⍴ ↑ {⍵ ~ 0} হ'ল একটি (একটি উপাদান ভেক্টর) শূন্য।
লোবাচেভস্কি

4

জাভা 7, 78 বাইট

void g(int[]a){int c=0;for(int o:a)a[o==0?c:c++]=o;for(;c<a.length;a[c++]=0);}

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


হেই, আমি এটি ব্যবহার করেছি কারণ আমি এটির মতো অনুভব করেছি। আমি মনে করি আপনার oসাথে ঘোষণা করতে সক্ষম হওয়া উচিত int c=0,o;for(o:a)...। আপনি জাভা 8 ল্যাম্বদা সিনট্যাক্সেও রূপান্তর করতে পারেন: a->{int c=0;for(int o:a)a[o==0?c:c++]=o;for(;c<a.length;a[c++]=0);}এবং উল্লেখ করুন যে এটি কোনও ইনট অ্যারে হিসাবে ইনপুটটি প্রত্যাশা করে।
অ্যাডিসন

অপেক্ষা করুন, ও ঘোষণার জিনিসটি স্ক্র্যাচ করুন। তবে এখনও, জাভা 8 লম্বা। : ডি
অ্যাডিসন ক্রম্প

@ ভোটটোক্লোস আমি ভেবেছিলাম এটি স্বনির্ভর থাকতে হবে। আমি যদি এটিকে গণনা না করে অন্য কোথাও ধরণের এবং জিনিসগুলি ঘোষণা করতে পারি তবে এটি ঠিক মনে হয় না।
মার্কি মার্কভ

যেহেতু এটি একটি ফাংশন তাই কোনওভাবেই পূর্ব নির্বাহিত বিবৃতি দ্বারা ইনপুট এটি দেওয়া হয়। ল্যাম্বদা একটি ইনপুট ধরণ ধরে নিতে পারে, সুতরাং এটির মূলত একই।
অ্যাডিসন ক্রম্প

3

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

(lambda(a)(stable-sort a(lambda(_ b)(= 0 b))))

সাজান অ্যারে তাই প্রতিটি দম্পতি যে (ক, খ) , আমরা একটি <b যদি শূন্য। যখন কোনও <b বা b <a নয় , বাছাই স্থিতিশীল থাকে: উপাদানগুলির মধ্যে মূল ক্রম বজায় থাকে।

আমি অ্যাডজাস্ট-অ্যারে এবং সরানোর চেষ্টাও করেছি , তবে এটি খুব দীর্ঘ ছিল:

(lambda(a)(adjust-array(remove 0 a)(length a):initial-element 0))

3

পিএইচপি, 73 71 70 52 49 48 46 বাইট - ইসমাইল মিগুয়েলকে বিআইজি ধন্যবাদ

// Assuming
$a = array(4,8,6,1,0,8,0,0,0,0,0,-4,'-5',-1,564,0);

// Produces a notice-level error
foreach($a as$v)$v?print"$v ":$b.="0 ";echo$b;

1
$v==0!$vআপনাকে 2 বাইট সংরক্ষণ করে এর সাথে প্রতিস্থাপন করা যেতে পারে ।
ইসমাইল মিগুয়েল 21

@ ইসমাইলমিগুয়েল ধন্যবাদ!
MonkeyZeus

আপনাকে স্বাগতম. আমি দেখছি আপনি একটি বাইট কাটা পরিচালনা করেছেন। এই চেষ্টা করুন: foreach($argv as$v)$v?$f.=" $v":$b.=" $v";echo$f.$b;। এটি .... কিছু বাইট, আমি জানি না ...
ইসমাইল মিগুয়েল

2
বা foreach($a as$v)$v?print("$v "):$b.="$v ";echo$b;আরও ঝরঝরে পথের জন্য, হুবহু একই দেখাচ্ছে
ইসমাইল মিগুয়েল

1
নিবন্ধন করুন আমি যদি কখনও অন্য কারও প্রকল্প বাছাই করে
কাঁদতাম

3

বাশ + জিএনইউ ইউটিলিটিস, 23

grep -v ^0 a
grep ^0 a

ধরে নেওয়া হয় ইনপুট নামক কোনও ফাইলে নিউলাইন-বিচ্ছিন্ন এন্ট্রি a। স্কোর এই ফাইলের নামের জন্য +1 অন্তর্ভুক্ত।


@ এসসিএইচ হ্যাঁ, এটি বাশ করা উচিত - ঠিক করা উচিত।
ডিজিটাল ট্রমা

@ টিমিডি হ্যাঁ - অনুস্মারকটির জন্য ধন্যবাদ।
ডিজিটাল ট্রমা

3

পার্ল 5, 26 বাইট

23 এর জন্য তিনটি -an( -Eবিনামূল্যে)

say for sort{!$a-!$b}@F

ডেনিসকে আমার মনে করিয়ে দেওয়ার জন্য -a, দুটি বাইট সংরক্ষণ করার জন্য ধন্যবাদ ।


2

সিজেম, 6 বাইট

{{!}$}

একটি বেনামে ফাংশন। কী হিসাবে "কোনও উপাদান শূন্য কিনা" বাছাই করুন।





2

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

{.sort(!*)}

একটি ব্লক তৈরি করে - যা অ্যারেতে কল করা যেতে পারে:

{.sort(!*)}.([1,2,0,3]).say

যদিও এটি লেখার চেয়ে আরও প্রাকৃতিক (এবং খাটো) হবে:

[1,2,0,3].sort(!*).say

এটি কীভাবে কাজ করে: যদি পার্ল 6 বাছাই রুটিনকে একটি ব্লকের সাথে ডাকা হয় যা কেবলমাত্র একটি যুক্তি গ্রহণ করে, তালিকা উপাদান অনুসারে বাছাই করা হয় by($a) cmp by($b)। এই ক্ষেত্রে, ব্লকটি হ'ল !*অর্থাত্ যা কিছু অপারেটর তা প্রত্যাখ্যান করে

আমি সেটা দেখেছি:

  • প্রশ্নের উদাহরণটি এমন একটি বর্গ যা একটি পদ্ধতি সরবরাহ করে, এতে পড়ার জন্য বয়লারপ্লেট অন্তর্ভুক্ত নয়
  • কার্যটির বিবরণে মুদ্রণের প্রয়োজন হয় না এবং উদাহরণটি মুদ্রণ করে এমনটি বাদ দিয়ে বোঝায় যে একটি অ্যারে ফিরে আসতে পারে

2

টেক্স (সমতল ফর্ম্যাট), 160 বাইট

করুন 0অক্ষর সক্রিয়, তারপর যে কমান্ড চরিত্র এড়িয়ে যান এবং একটি পাল্টা বাড়ায় সংজ্ঞায়িত (যে, একটি কমান্ড হিসাবে অনুবাদক প্রক্রিয়া করতে)। স্ট্রিংয়ের শেষে, গণনা করা হয়েছে এমন অনেকগুলি শূন্য মুদ্রণ করুন।

এটি সংরক্ষণ করুন zero.texএবং এই আদেশের সাহায্যে কমান্ড লাইনের মাধ্যমে ইনপুট দিন:

pdftex "\def\I{0 1 0 3 2 0 0 8 0 5 0 1 9 4}\input zero"
\def\I{}\newcount\Z\def\L{\loop\advance\Z by-1\ifnum\Z>00 \repeat}
\begingroup\catcode`\013 \def0{\advance\Z by1}
\scantokens\expandafter{\I\empty}\endgroup\L\bye

(স্পষ্টতার জন্য নিউলাইনগুলি যুক্ত করা হয়েছে)

এখানে চিত্র বর্ণনা লিখুন


2

জে, 4 বাইট

/:0=

ব্যাখ্যা:

/:      NB. upward sort on
  0=    NB. equality to zero

জেতে বাছাইয়ের ফাংশনটি স্পেসিফিকেশন দ্বারা স্থিতিশীল হওয়ার গ্যারান্টিযুক্ত।

বিকল্প সমাধান, 6 বাইট:

#{.*#+

 

   *#+  NB. replicate each item by its sign (removing zeroes)
#{.     NB. take as many items from this as the original list had
        NB.  (taking more items than there are in a list results in extra zeroes)

2

খড় , 30 29 বাইট

<:([^0 ])()/,0()/ +,+( +) /}>

সিপি 437 এনকোডিং ব্যবহার করুন

ব্যাখ্যা

<:([^0 ])()/,0()/ +,+( +) /}>
<                             Take input
 :                            Duplicate
  ([^0 ])()/                  Remove every character that is not a 0 or a space
            ,                 Swap the two items on the top of the stack
             0()/             Remove every 0 on the top of the stack
                  +           Push a space and concatenate
                   ,          Swap
                    +         Concatenate
                     ( +) /   Remove duplicate spaces
                           }  Get the 'tail' of the string
                            > Output

এটি অনলাইন চেষ্টা করুন! (যুক্ত কোডটি সমস্ত পরীক্ষার কেস পরীক্ষা করার জন্য)


2

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

x=>x.sort(t=>!t)

ফায়ার ফক্সে কাজ করে



1

05 এ বি 1 ই , 15 ই 14 বাইট

কোড:

ED0¢r0KR`rFZ}|

ব্যাখ্যা:

E               # Evaluate input
 D              # Duplicate top of the stack
  0¢            # Count zeroes
    r           # Reverse stack
     0K         # Delete all zeroes
       R        # Reverse top of the stack
        `       # Flatten
         r      # Reverse stack
          FZ}   # For N in range(amount zeroes): push zero
             |  # Print full stack

সিপি-1252 এনকোডিং ব্যবহার করে। এটির মতো একটি অ্যারে নেয়:

[0, 5, 8, 8, 3, 5, 1, 6, 8, 4, 0, 3, 7, 5, 6, 4, 4, 7, 5, 6, 7, 4, 4, 9, 1, 0, 5, 7, 9, 3, 0, 2, 2, 4, 3, 0, 4, 8, 7, 3, 1, 4, 7, 5, 1, 2, 1, 8, 7, 8, 7, 7, 2, 6, 3, 1, 2, 8, 5, 1, 4, 2, 0, 5, 0, 6, 0, 3]
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.