এটি বিস্ফোরিত করুন!


33

ইনপুট হিসাবে ইতিবাচক পূর্ণসংখ্যার একটি ম্যাট্রিক্স নিন এবং এটি বিস্ফোরিত করুন!


আপনি ম্যাট্রিক্সকে যেভাবে বিস্ফোরণ করেছেন তা হ'ল বাইরের সীমানা সহ প্রতিটি উপাদানকে ঘিরে জিরো যুক্ত করে।

ইনপুট / আউটপুট ফর্ম্যাটগুলি বরাবরের মতো alচ্ছিক!

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

1
-----
0 0 0
0 1 0
0 0 0
--------------

1 4
5 2
-----
0 0 0 0 0
0 1 0 4 0
0 0 0 0 0
0 5 0 2 0
0 0 0 0 0
--------------

1 4 7
-----
0 0 0 0 0 0 0
0 1 0 4 0 7 0
0 0 0 0 0 0 0
--------------

6
4
2
-----
0 0 0
0 6 0
0 0 0
0 4 0
0 0 0
0 2 0
0 0 0

উত্তর:


59

অপারেশন ফ্ল্যাশপয়েন্ট স্ক্রিপ্টিং ভাষা, 182 বাইট

f={t=_this;c=count(t select 0);e=[0];i=0;while{i<c*2}do{e=e+[0];i=i+1};m=[e];i=0;while{i<count t}do{r=+e;j=0;while{j<c}do{r set[j*2+1,(t select i)select j];j=j+1};m=m+[r,e];i=i+1};m}

Ungolfed:

f=
{
  // _this is the input matrix. Let's give it a shorter name to save bytes.
  t = _this;
  c = count (t select 0);

  // Create a row of c*2+1 zeros, where c is the number of columns in the
  // original matrix.
  e = [0];
  i = 0;
  while {i < c*2} do
  {
    e = e + [0];
    i = i + 1
  };

  m = [e]; // The exploded matrix, which starts with a row of zeros.
  i = 0;
  while {i < count t} do
  {
    // Make a copy of the row of zeros, and add to its every other column 
    // the values from the corresponding row of the original matrix.
    r = +e;
    j = 0;
    while {j < c} do
    {
      r set [j*2+1, (t select i) select j];
      j = j + 1
    };

    // Add the new row and a row of zeroes to the exploded matrix.
    m = m + [r, e];
    i = i + 1
  };

  // The last expression is returned.
  m
}

সাথে কল করুন:

hint format["%1\n\n%2\n\n%3\n\n%4",
    [[1]] call f,
    [[1, 4], [5, 2]] call f,
    [[1, 4, 7]] call f,
    [[6],[4],[2]] call f];

আউটপুট:

চ্যালেঞ্জের চেতনায়:


6
অজানা; মানুষ; এক হাজার.
মজবয়েস

2
এখন আমি বিভ্রান্ত
গ্রেজডানু অ্যালেক্স।

@ মিঃগ্রিজ কমান্ডটি আক্ষরিক অর্থে কিছু

1
" চ্যালেঞ্জের চেতনায় " দ্বিতীয় জিআইফের জন্য +1 ! :)
কেভিন ক্রুইজসেন

10

জেলি ,  12  11 বাইট

-1 বাইট ধন্যবাদ এরিক দ্য আউটগল্ফারকে (একটি যোগদানের জন্য অদলবদল যুক্তি ব্যবহার করার প্রয়োজন নেই) ধন্যবাদ

j00,0jµ€Z$⁺

এটি অনলাইন চেষ্টা করুন! অথবা একটি পরীক্ষার স্যুট দেখুন

একটি monadic লিঙ্ক গ্রহণ তালিকা এবং তালিকা ফিরে।

কিভাবে?

j00,0jµ€Z$⁺ - Link: list of lists, m
          ⁺ - perform the link to the left twice in succession:
         $  -   last two links as a monad
      µ€    -     perform the chain to the left for €ach row in the current matrix:
j0          -       join with zeros                [a,b,...,z] -> [a,0,b,0,...,0,z]
  0,0       -       zero paired with zero = [0,0]
     j      -       join                     [a,0,b,0,...,0,z] -> [0,a,0,b,0,...,0,z,0]
        Z   -     and then transpose the resulting matrix

আপনি একটি বাইট সংরক্ষণ করতে পারেন:j00,0jµ€Z$⁺
এরিক আউটগলফার

ওহ, অবশ্যই, ধন্যবাদ!
জোনাথন অ্যালান


6

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

FTXdX*0JQt&(

ইনপুট একটি ম্যাট্রিক্স যা ;সারি বিভাজক হিসাবে রয়েছে।

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

ব্যাখ্যা

FT     % Push [0 1]
Xd     % Matrix with that diagonal: gives [0 0; 0 1]
X*     % Implicit input. Kronecker product
0      % Push 0
JQt    % Push 1+j (interpreted as "end+1" index) twice
&(     % Write a 0 at (end+1, end+1), extending the matrix. Implicit display

5

জাপট , 18 বাইট

Ov"y ®î íZ c p0Ã"²

এটি অনলাইন পরীক্ষা! ( -Qপতাকাটি ব্যবহার করে যাতে আউটপুটটি বোঝা সহজ)

জেলি উত্তরের অনুরূপ, তবে পুরো অনেক দীর্ঘ ...

ব্যাখ্যা

কোডটির বাইরের অংশটি জেলির অনুকরণের জন্য কেবল একটি কার্যপ্রণালী :

  "             "²   Repeat this string twice.
Ov                   Evaluate it as Japt.

কোডটি হ'ল:

y ®   î íZ c p0Ã
y mZ{Zî íZ c p0}   Ungolfed
y                  Transpose rows and columns.
  mZ{          }   Map each row Z by this function:
     Zî              Fill Z with (no argument = zeroes).
        íZ           Pair each item in the result with the corresponding item in Z.
           c         Flatten into a single array.
             p0      Append another 0.

দু'বার পুনরাবৃত্তি করা, এই প্রক্রিয়াটি পছন্দসই আউটপুট দেয়। ফলাফল সুস্পষ্টভাবে মুদ্রিত হয়।


5

হুশ , 12 বাইট

₁₁
Tm»o:0:;0

একটি 2D পূর্ণসংখ্যার অ্যারে নেয় এবং প্রদান করে। এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

অন্যান্য অনেক উত্তরের মতো একই ধারণা: প্রতিটি সারিতে শূন্য যোগ করুন এবং একবারে ট্রান্সপোজ করুন। সারি অপারেশন একটি ভাঁজ সঙ্গে প্রয়োগ করা হয়।

₁₁         Main function: apply first helper function twice
Tm»o:0:;0  First helper function.
 m         Map over rows:
  »         Fold over row:
   o         Composition of
      :       prepend new value and
    :0        prepend zero,
       ;0    starting from [0].
            This inserts 0s between and around elements.
T          Then transpose.

5

গণিত, 39 বাইট

r=Riffle[#,0,{1,-1,2}]&/@Thread@#&;r@*r

ওল্ফ্রাম স্যান্ডবক্সে এটি ব্যবহার করে দেখুন! এটি " r=Riffle[#,0,{1,-1,2}]&/@Thread@#&;r@*r@{{1,2},{3,4}}" এর মতো কল করুন ।

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


4

ডায়ালগ এপিএল, 24 বাইট

4 টি বাইটস সংরক্ষণ করেছেন @ জাচারিটিকে ধন্যবাদ

5 ক্রিটিক্সিলিথসকে ধন্যবাদ বাইটস সংরক্ষণ করেছে

{{⍵↑⍨-1+⍴⍵}⊃⍪/,/2 2∘↑¨⍵}

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


আপনার চারপাশে পেরেন দরকার নেই 1,1,⍴⍵, তাই না?
জাকারিয়া


@ ক্রিতিক্সিলিথোস এর দুর্দান্ত ব্যবহার 1 1+!
উরিল

এপিএলের অ্যারে ওরিয়েন্টেড, তাই কি 1+কাজ করবে?
জাকারিয়া

@ জাচারিটি আমি আপনার উত্তরটি দেখার পরে বুঝতে পেরেছি ...
ক্রিটিকি লিথোস


3

পাইথন 3 , 104 101 97 93 86 বাইট

  • @ জাচারি টি 3 বাইট সংরক্ষণ করেছেন: অব্যবহৃত চলক wঅপসারণ এবং একটি অযাচিত স্থান
  • @ জাচারি টি আরও 4 টি বাইট সংরক্ষণ করেছেন: [a,b] কেবলমাত্র a,bএকটি তালিকার সাথে যুক্ত করার সময়
  • @ نور 4 টি বাইট সংরক্ষণ করেছে: স্লাইসিংয়ের ব্যবহার
  • @ জাচারি টি এবং @ovs 7 টি বাইট সংরক্ষণে সহায়তা করেছেন: লুপের জন্য বিবৃতিগুলি আটকান
def f(a):
 m=[(2*len(a[0])+1)*[0]]
 for i in a:r=m[0][:];r[1::2]=i;m+=r,m[0]
 return m

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


1
আপনি অপসারণ করতে পারেন wএবং 2 বাইট সংরক্ষণ করুন: repl.it/JBPE
Zachary

1
ওহ, লাইনের পরে আপনার m+=[r,w]
অবিবাহিত

1
এছাড়াও, আপনি পরিবর্তন করে 4 বাইট সংরক্ষণ করতে পারবেন [j,0]করার j,0এবং [r,m[0]করতে r,m[0]?
জাকারি

1
অ্যারে স্লাইস ব্যবহার করে আপনি 4 টি অন্যান্য বাইট সংরক্ষণ করতে পারেন ।
নুর

1
পাইথন 2 তে রূপান্তর করে এবং forলুপ ইনডেন্টেশনকে একটি ট্যাবে পরিবর্তন করে আপনি তিনটি বাইট সংরক্ষণ করতে পারেন ।
জাকারি

3

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

def a(b):
    z='00'*len(b[0])+'0'
    r=z+'\n'
    for c in b:
        e='0'
        for d in c:e+=str(d)+'0'
        r+=e+'\n'+z+'\n'
    return r

প্রথমবার গল্ফিং! সেরা নয়, তবে আমি নিজেও যদি বলতে পারি তবে আমি বেশ গর্বিত!

  • গমের মন্তব্য থেকে -17 বাইট
  • লুপের জন্য দ্বিতীয়টি ইনলাইন করা থেকে -4 বাইট

হ্যালো এবং সাইটে আপনাকে স্বাগতম। আপনার মনে হয় এখানে সাদা জায়গা ভাল লাগবে। উদাহরণস্বরূপ আপনার কিছু +=এবং =স্পেস দ্বারা ঘিরে রয়েছে, যা সরানো যেতে পারে। করছেন উপরন্তু +=পরপর দুইবার, একটি একক বিবৃতি মধ্যে সরলীকৃত যেতে পারে উদাহরণস্বরূপe+=str(d)+'0'
গমের উইজার্ড

@ ওয়েট উইজার্ড: ধন্যবাদ এবং ধন্যবাদ। 17 বাইট সংরক্ষিত হয়েছে :)
লিরেন

আমি এখন লক্ষ্য করছি যে আপনি আপনার অভ্যন্তরীণ forলুপটি একটি এক লাইনেই ভেঙে ফেলতে পারেন for d in c:e+=str(d)+'0', তবে আপনি কোনও যোগদানের মানচিত্র (str, d)) + '0' , in which case it becomes pointless to define e with দিয়ে যেতে চান।
গম উইজার্ড

1
আহ্, আমি নিজেই ভেবেছিলাম! হুম, আমাকে শিখতে হবে। জয়ন এবং মানচিত্র () প্রথমে আমার অনুমান। আমি ফিরে আসবো!
লিরেন

1
আপনি সংজ্ঞা লাগাতে পারেন zএবং rএকই লাইনে (ক সাথে ;সেগুলির মধ্যে) খাঁজ একটি বাইট সংরক্ষণ।
নোর

3

আর, 65 বাইট

খুব মূল্যবান মন্তব্যের জন্য জারকো ডাবল্ডাম এবং জিউসেপকে ধন্যবাদ!

কোড

f=function(x){a=dim(x);y=array(0,2*a+1);y[2*1:a[1],2*1:a[2]]=x;y}

ফাংশনের জন্য ইনপুটটি অবশ্যই একটি ম্যাট্রিক্স বা দ্বিমাত্রিক অ্যারে হতে হবে।

পরীক্ষা

f(matrix(1))
f(matrix(c(1,5,4,2),2))
f(matrix(c(1,4,7),1))
f(matrix(c(6,4,2)))

আউটপুট

> f(matrix(1))
     [,1] [,2] [,3]
[1,]    0    0    0
[2,]    0    1    0
[3,]    0    0    0
> f(matrix(c(1,5,4,2),2))
     [,1] [,2] [,3] [,4] [,5]
[1,]    0    0    0    0    0
[2,]    0    1    0    4    0
[3,]    0    0    0    0    0
[4,]    0    5    0    2    0
[5,]    0    0    0    0    0
> f(matrix(c(1,4,7),1))
     [,1] [,2] [,3] [,4] [,5] [,6] [,7]
[1,]    0    0    0    0    0    0    0
[2,]    0    1    0    4    0    7    0
[3,]    0    0    0    0    0    0    0
> f(matrix(c(6,4,2)))
     [,1] [,2] [,3]
[1,]    0    0    0
[2,]    0    6    0
[3,]    0    0    0
[4,]    0    4    0
[5,]    0    0    0
[6,]    0    2    0
[7,]    0    0    0

এক ঝলকে আমি ব্যবহার মনে a=dim(x)*2+1পরিবর্তে nrowএবং ncolভাল হবে। আপনি তখন করতে পারেন y=matrix(0);dim(y)=aএবং 2*1:a[1],2*1:a[2]
জেএডি

1
আসলে y=array(0,a)আরও খাটো হবে।
জেএডি

1
আমি বিশ্বাস করি আপনি সূচকের চারপাশে প্রথম বন্ধনী সরিয়ে ফেলতে পারেন, অর্থাত্, 2*1:a[1] কারণ: চেয়ে বেশি প্রাধান্য রয়েছে*
জিউস্পে


2

পিএইচপি , 98 বাইট

2D অ্যারে হিসাবে ইনপুট, স্ট্রিং হিসাবে আউটপুট

<?foreach($_GET as$v)echo$r=str_pad(0,(count($v)*2+1)*2-1," 0"),"
0 ".join(" 0 ",$v)." 0
";echo$r;

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

পিএইচপি , 116 বাইট

ইনপুট এবং আউটপুট 2D অ্যারে হিসাবে

<?foreach($_GET as$v){$r[]=array_fill(0,count($v)*2+1,0);$r[]=str_split("0".join(0,$v)."0");}$r[]=$r[0];print_r($r);

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


2

ক্লোজার, 91 বাইট

#(for[h[(/ 2)]i(range(- h)(count %)h)](for[j(range(- h)(count(% 0))h)](get(get % i[])j 0)))

অর্ধ-পদক্ষেপে ব্যাপ্তির ওপরে সন্ধান করুন।



2

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

lambda l:map(g,*map(g,*l))
g=lambda*l:sum([[x,0]for x in l],[0])

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

ফাংশনটি gশূন্যগুলির মধ্যে ইনপুটটিকে ছেদ করে। মূল ফাংশন প্রয়োগ করার সময় ইনপুট স্থানান্তর করে g, আবার এটি করে। মূল ফাংশনে পুনরাবৃত্তি এড়ানোর উপায় রয়েছে।


2

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

a=>(g=a=>(r=[b],a.map(v=>r.push(v,b)),b=0,r))(a,b=a[0].map(_=>0)).map(g)

বিন্যাসিত এবং মন্তব্য

অনুভূমিকভাবে এবং উল্লম্বভাবে জিরো সন্নিবেশ করা খুব অনুরূপ ক্রিয়াকলাপ। এখানে ধারণাটি হ'ল উভয় পদক্ষেপের জন্য একই ফাংশন জি () ব্যবহার করা।

a =>                            // a = input array
  (g = a =>                     // g = function that takes an array 'a',
    (                           //     builds a new array 'r' where
      r = [b],                  //     'b' is inserted at the beginning
      a.map(v => r.push(v, b)), //     and every two positions,
      b = 0,                    //     sets b = 0 for the next calls
      r                         //     and returns this new array
  ))(a, b = a[0].map(_ => 0))   // we first call 'g' on 'a' with b = row of zeros
  .map(g)                       // we then call 'g' on each row of the new array with b = 0

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


2

কাঠকয়লা , 49 বাইট

A⪪θ;αA””βF⁺¹×²L§α⁰A⁺β⁰βA⁺β¶βFα«βA0δFιA⁺δ⁺κ⁰δ⁺䶻β

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

ইনপুটটি একটি একক স্ট্রিং যা সেমিকোলনের সাথে সারিগুলি পৃথক করে।


1
আধুনিক কাঠকয়লা এটি 24 বাইটে ≔E⪪θ;⪫00⪫ι0θFθ⟦⭆ι0ι⟧⭆⊟θ0করতে পারে : তবে স্ট্রিংম্যাপ এড়িয়ে চলা আমি এখনও মনে করি এটি 27 বাইটে করা যেতে পারে।
নিল

ওহ, এবং কয়েকটি সাধারণ টিপস: খালি স্ট্রিংয়ের জন্য পূর্বনির্ধারিত পরিবর্তনশীল রয়েছে এবং আপনি টাইমস বা ছাঁচ ব্যবহার করে একটি নির্দিষ্ট দৈর্ঘ্যের শূন্যের একটি স্ট্রিং তৈরি করতে পারেন।
নিল

2

সি ++ 17 + মডিউল, 192 বাইট

থেকে স্ট্রিং সারি হিসাবে ইনপুট Cin চাই, আউটপুট cout

import std.core;int main(){using namespace std;int i;auto&x=cout;string s;while(getline(cin,s)){for(int j=i=s.length()*2+1;j--;)x<<0;x<<'\n';for(auto c:s)x<<'0'<<c;x<<"0\n";}for(;i--;)x<<'0';}

2

সি # , 146 বাইট


উপাত্ত

  • ইনপুট Int32[,] m মেট্রিক্স বিস্ফোরিত করা হবে
  • আউটপুট Int32[,] বিস্ফোরিত ম্যাট্রিক্স

Golfed

(int[,] m)=>{int X=m.GetLength(0),Y=m.GetLength(1),x,y;var n=new int[X*2+1,Y*2+1];for(x=0;x<X;x++)for(y=0;y<Y;y++)n[x*2+1,y*2+1]=m[x,y];return n;}

Ungolfed

( int[,] m ) => {
    int
        X = m.GetLength( 0 ),
        Y = m.GetLength( 1 ),
        x, y;

    var
        n = new int[ X * 2 + 1, Y * 2 + 1 ];

    for( x = 0; x < X; x++ )
        for( y = 0; y < Y; y++ )
            n[ x * 2 + 1, y * 2 + 1 ] = m[ x, y ];

    return n;
}

অসম্পূর্ণ পাঠযোগ্য

// Takes an matrix of Int32 objects
( int[,] m ) => {
    // To lessen the byte count, store the matrix size
    int
        X = m.GetLength( 0 ),
        Y = m.GetLength( 1 ),
        x, y;

    // Create the new matrix, with the new size
    var
        n = new int[ X * 2 + 1, Y * 2 + 1 ];

    // Cycle through the matrix, and fill the spots
    for( x = 0; x < X; x++ )
        for( y = 0; y < Y; y++ )
            n[ x * 2 + 1, y * 2 + 1 ] = m[ x, y ];

    // Return the exploded matrix
    return n;
}

সম্পূর্ণ কোড

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace TestBench {
    public static class Program {
        private static Func<Int32[,], Int32[,]> f = ( int[,] m ) => {
            int
                X = m.GetLength( 0 ),
                Y = m.GetLength( 1 ),
                x, y,

                a = X * 2 + 1,
                b = Y * 2 + 1;

            var
                n = new int[ a, b ];

            for( x = 0; x < X; x++ )
                for( y = 0; y < Y; y++ )
                    n[ a, b ] = m[ x, y ];

            return n;
        };

        public static Int32[,] Run( Int32[,] matrix ) {
            Int32[,]
                result = f( matrix );

            Console.WriteLine( "Input" );
            PrintMatrix( matrix );

            Console.WriteLine( "Output" );
            PrintMatrix( result );

            Console.WriteLine("\n\n");

            return result;
        }

        public static void RunTests() {
            Run( new int[,] { { 1 } } );
            Run( new int[,] { { 1, 3, 5 } } );
            Run( new int[,] { { 1 }, { 3 }, { 5 } } );
            Run( new int[,] { { 1, 3, 5 }, { 1, 3, 5 }, { 1, 3, 5 } } );
        }

        static void Main( string[] args ) {
            RunTests();

            Console.ReadLine();
        }

        public static void PrintMatrix<TSource>( TSource[,] array ) {
            PrintMatrix( array, o => o.ToString() );
        }
        public static void PrintMatrix<TSource>( TSource[,] array, Func<TSource, String> valueFetcher ) {
            List<String>
                output = new List<String>();

            for( Int32 xIndex = 0; xIndex < array.GetLength( 0 ); xIndex++ ) {
                List<String>
                    inner = new List<String>();

                for( Int32 yIndex = 0; yIndex < array.GetLength( 1 ); yIndex++ ) {
                    inner.Add( valueFetcher( array[ xIndex, yIndex ] ) );
                }

                output.Add( $"[ {String.Join( ", ", inner )} ]" );
            }

            Console.WriteLine( $"[\n   {String.Join( ",\n   ", output )}\n]" );
        }
    }
}

রিলিজ

  • v1.0 - 146 bytes- প্রাথমিক সমাধান।

নোট

  • না

আপনার প্রয়োজন হবে না (int[,] m)=>, কেবলমাত্র m=>যদি mআপনার উত্তরটি 2D ইন্টি অ্যারে হয় তবে কেবল যথেষ্ট । এছাড়াও, আপনি পরিবর্তন করতে পারেন ,x,করতে ,x=0,এবং পরিত্রাণ পেতে x=0জন্য -1 বাইট জন্য-লুপ আরম্ভের হবে। আর তুমি অপসারণ করতে পারেন y++পরিবর্তন করে ভেতরের লুপ থেকে =m[x,y];থেকে =m[x,y++];একটি অতিরিক্ত -1 বাইট জন্য। তবে আমার কাছ থেকে +1, এবং আমি যদি আপনার উত্তরটির একটি বন্দর তৈরি করি তবে এটি আমার বর্তমান জাভা উত্তরের চেয়েও ছোট। :)
কেভিন ক্রুইজসেন

1

ডায়ালগ এপিএল, 24 বাইট

{{⍵↑⍨¯1-⍴⍵}⊃⍪/,/2 2∘↑¨⍵}

কোন উন্নতি স্বাগত এবং চেয়েছিলেন!




1

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

a=>[...a,...a,a[0]].map((b,i)=>[...b,...b,0].map((_,j)=>i&j&1&&a[i>>1][j>>1]))


1

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

ম্যাট্রিক্সের জন্য প্রম্পট দেয়, সংযুক্ত ম্যাট্রিক্স প্রদান করে।

{⍺⍀⍵\a}/⍴∘0 1¨1+2×⍴a←⎕

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

a←⎕ ম্যাট্রিক্সের জন্য অনুরোধ জানানো এবং একটি

একটি (সারি, কলাম)  এর মাত্রা

 দুই দ্বারা গুণ

1+ এক যোগ কর

⍴∘0 1¨ প্রতিটি ব্যবহার eshape (cyclically) সংখ্যার শূন্য এবং এক

{}/ দুটি সংখ্যার মধ্যে নিম্নলিখিত বেনামে ফাংশন সন্নিবেশ করে হ্রাস করুন:

⍵\aডান আর্গুমেন্ট অনুযায়ী একটি  এর কলাম প্রসারিত করুন

⍺⍀a বাম আর্গুমেন্ট অনুযায়ী এর সারি প্রসারিত করুন

* 0 শূন্যের একটি কলাম / সারি সন্নিবেশ করায়, 1 একটি মূল ডেটা কলাম / সারি সন্নিবেশ করায়


1

জাভা 8, 183 166 162 129 বাইট

m->{int a=m.length,b=m[0].length,x=0,y,r[][]=new int[a*2+1][b*2+1];for(;x<a;x++)for(y=0;y<b;r[x*2+1][y*2+1]=m[x][y++]);return r;}

হিসাবে ইনপুট এবং আউটপুট int[][]

@ 33hman এর সি # উত্তরটির একটি বন্দর তৈরি করে 33 টি বাইটস ।

ব্যাখ্যা:

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

m->{                                // Method with 2D integer-array as parameter and return-type
  int a=m.length,                   //  Current height
      b=m[0].length,                //  Current width
      x=0,y,                        //  Two temp integers
      r[][]=new int[a*2+1][b*2+1];  //  New 2D integer-array with correct size
  for(;x<a;x++)                     //  Loop (1) over the height
    for(y=0;y<b;                    //   Inner loop (2) over the width
      r[x*2+1][y*2+1]=m[x][y++]     //    Fill the new array with the input digits
    );                              //   End of inner loop (2)
                                    //  End of loop (1) (implicit / single-line body)
  return r;                         //  Return result 2D integer-array
}                                   // End of method


0

05 এ বি 1 ই , 22 বাইট

"vy0ý0.ø})"©.V€Sø®.Vø»

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


আসলে কোড 2x এর একই টুকরা ব্যবহার করে, তাই আমি এটিকে স্ট্রিং হিসাবে সঞ্চয় করতে পারি এবং -10 বাইটের জন্য ইভাল ব্যবহার করতে পারি।

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