সেলের প্রতিবেশীদের সন্ধান করুন


20

... বা টরোডিয়াল মুর আশেপাশের শহরগুলি

প্রদত্ত ধনাত্মক পূর্ণসংখ্যা h, wএবং একটি অ-নেতিবাচক পূর্ণসংখ্যা i, পার্শ্ববর্তী সূচকের সব আসতে i

আপনি এর মধ্যে রয়েছে একটি ম্যাট্রিক্স অনুমান করা হয় hসারি wশীর্ষ বাম দিকের কোণায় অবস্থিত সর্বনিম্ন থেকে সংখ্যাযুক্ত উপাদান,,, সর্বোচ্চ, নীচে ডান দিকের কোণায় অবস্থিত, এবং বিনিময়ে, কোন যুক্তিসঙ্গত বিন্যাসে, সূচকের তালিকার যে would সূচককে ঘিরে i,। এই ম্যাট্রিক্সটি একটি টরাস (প্রতিটি প্রান্তের চারপাশে মোড়ানো একটি অসীম মানচিত্র)।

উদাহরণস্বরূপ, ইনপুটস h=4এবং w=4ম্যাট্রিক্সের ফলস্বরূপ:

 0  1  2  3 
 4  5  6  7
 8  9 10 11
12 13 14 15

তবে আরও নির্দিষ্টভাবে:

15 12 13 14 15 12
 3  0  1  2  3  0
 7  4  5  6  7  4
11  8  9 10 11  8
15 12 13 14 15 12
 3  0  1  2  3  0

যাতে যদি iহয় তবে 0আপনাকে 15, 12, 13, 3, 1, 7, 4, 5(0 ভিত্তিক) ফিরতে হবে ।

উদাহরণ

0 ভিত্তিক:

h   w   i       Expected result

4   4   5       0, 1, 2, 4, 6, 8, 9, 10
4   4   0       15, 12, 13, 3, 1, 7, 4, 5
4   5   1       15, 16, 17, 0, 2, 5, 6, 7
1   3   2       1, 2, 0, 1, 0, 1, 2, 0
1   1   0       0, 0, 0, 0, 0, 0, 0, 0

1-ভিত্তি করে:

h   w   i       Expected result

4   4   6       1, 2, 3, 5, 7, 9, 10, 11
4   4   1       16, 13, 14, 4, 2, 8, 5, 6
4   5   2       16, 17, 18, 1, 3, 6, 7, 8
1   3   3       2, 3, 1, 2, 1, 2, 3, 1
1   1   1       1, 1, 1, 1, 1, 1, 1, 1

বিধি

  • আপনার উত্তর 0 বা 1-ইনডেক্সড হতে পারে, আপনার পছন্দ, দয়া করে নির্দিষ্ট করুন।
  • আপনি ধরে নিতে পারেন i < h * w(বা i <= h * w1-সূচিত উত্তরের জন্য)।
  • আপনি ধরে নিতে পারেন i >= 0(বা i > 01-সূচিত উত্তরের জন্য)।
  • যতক্ষণ আটটি পছন্দসই মান অন্তর্ভুক্ত থাকে ততক্ষণ প্রত্যাবর্তিত মানগুলির ক্রমটি গুরুত্বপূর্ণ নয়।
  • স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ
  • এটি তাই প্রতিটি ভাষায় সংক্ষিপ্ত উত্তর, জিতেছে!

আরও প্রযুক্তিগত শোনার শিরোনামের জন্য @ কনর ও ব্রায়েনকে ধন্যবাদ এবং আরও পরীক্ষার ক্ষেত্রে @ জিএমএমকে ধন্যবাদ!


3
আমরা কি প্রতিবেশীদের 3-বাই -3 ম্যাট্রিক্স ফিরিয়ে দিতে পারি?
এডম

@ অ্যাডাম আমি সম্ভব হলে সেন্টার সেলটি অন্তর্ভুক্ত না করার জন্য তালিকাটি পছন্দ করব। ইতিমধ্যে উত্তর আছে প্রশংসা করুন। এটিকে ফিল্টার করা কি যথেষ্ট সহজ?
ডম হেস্টিংস

অর্ডার কি ব্যাপার?
রবার্ট ফ্রেজার

@ রবার্টফ্রেজার অর্ডারটি গুরুত্বপূর্ণ নয়। আমি এটি নিয়মে যুক্ত করব।
ডম হেস্টিংস

@ ডোমহাস্টিংস আমি সেই মন্তব্যটিকে এইভাবে ব্যাখ্যা করি: এটি কোনও 3 বাই 3 ম্যাট্রিক্স ফেরত দেওয়ার বা কেন্দ্রের ঘরটি অন্তর্ভুক্ত করার অনুমতি নেই?
জংহওয়ান মিন

উত্তর:


8

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

@ কেভিন ক্রুজসেনকে ধন্যবাদ 2 বাইট সংরক্ষণ করা হয়েছে

0-ভিত্তিক সূচক আশা করে।

(h,w,i)=>[...'12221000'].map((k,j,a)=>(i+w+~-k)%w+~~(i/w+h+~-a[j+2&7])%h*w)

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

পার্শ্ববর্তী সূচকগুলি নিম্নলিখিত ক্রমে ফিরে আসে:

54362701

কিভাবে?

( X + d x , y + d y ) প্রতিটি পার্শ্ববর্তী কক্ষের সূচকগুলি দেওয়া হয়:আমিএক্স,Y(x+dx,y+dy)

Idx,dy=((x+dx)modw)+w((y+dy)modh)=((N+dx)modw)+w((Nw+dy)modh)

যেখানে লক্ষ্য কক্ষের সূচক।N=wy+x

আমরা তালিকাটি অনুসরণ করে এবং এর মান পেতে বিয়োগ করি যা দেয়:1 ডি এক্স[1,2,2,2,1,0,0,0]1dx

[0,1,1,1,0,1,1,1]

সাথে সম্পর্কিত মানগুলির জন্য , আমরা একই অবস্থানটি ২ টি অবস্থান দ্বারা স্থানান্তরিত ব্যবহার করি, যা দেয়:dy

[1,1,0,1,1,1,0,1]

w*(~~(i/w+h+~-a[j+2&7])%h)থেকে ~~(a[j+2&7]-1+i/w+h)%h*wপ্রথম বন্ধনী একজোড়া পরিত্রাণ 2 বাইট পরিমাণ সঞ্চয় হয়।
কেভিন ক্রুইজসেন

পছন্দ করেছেন ধন্যবাদ!
আর্নল্ড

6

এপিএল (ডায়ালগ ক্লাসিক) , 27 বাইট

{(⍺⊥⍺|(⍺⊤⍵)-⊢)¨1-14⌽,⍳3 3}

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

{ }আর্গুমেন্ট (মাত্রা h w) এবং (সূচক i) সহ একটি ফাংশন

⍳3 3সব 2 অঙ্ক তিন সংখ্যার একটি ম্যাট্রিক্স হল: 0 0, 0 1, ...,2 2

, ম্যাট্রিক্সকে ভেক্টর হিসাবে তালিকাভুক্ত করে

1↓4⌽1 14 টি বাম দিকে ঘোরানোর মাধ্যমে 4⌽এবং একটি ( 1↓) ফেলে রেখে কেন্দ্রের উপাদানটি সরিয়ে দেয়

1- 1 টি থেকে বিয়োগ করে সমস্ত 8 প্রতিবেশী অফসেট দেয়

( প্রতিটি অফসেটে প্রথম বন্ধনীতে ফাংশন ট্রেন প্রয়োগ করে

⍺⊤⍵ম্যাট্রিক্সের স্থানাঙ্ক - এর বেস- এনকোডিং

(⍺⊤⍵)-⊢ প্রতিবেশীর স্থানাঙ্ক প্রদান করে বর্তমান অফসেটটি বিয়োগ করে

⍺|aস্থানাঙ্কের চারপাশে মোড়ানো এবং ম্যাট্রিক্সের মধ্যে থাকা মোড

⍺⊥ বেস থেকে ডিকোড


5

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

বেনামে ইনফিক্স ফাংশন। লাগে h wবাম আর্গুমেন্ট হিসাবে এবং iঅধিকার আর্গুমেন্ট হিসাবে।

{14⌽,3 3↑,⍨⍣2⍪⍨⍣2⊃⊖∘⍉/(¯1+⍺⊤⍵),⊂⍺⍴⍳×/⍺}

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

{} "ডিএফএন"; বাম আর্গুমেন্ট (মাত্রা) এবং ডান আর্গুমেন্ট (সূচক)।

×/⍺ মাত্রাগুলির গুণক (গুণন-হ্রাস)

 প্রথম যে অনেক সূচক

⍺⍴ থেকে মাত্রা ব্যবহার eshape যে

 এটি বন্ধ করুন (এটি একটি একক উপাদান হিসাবে বিবেচনা করতে)

(), নিম্নলিখিতটি পুনরায় সংশোধন করুন:

  ⍺⊤⍵ সূচকটিকে মিশ্র-রেডিক্সে এনকোড করুন h w(এটি আমাদের সূচকের স্থানাঙ্ক দেয়)

  ¯1+ সেই স্থানাঙ্কগুলিতে নেতিবাচক যুক্ত করুন

⊖∘⍉/ আবর্তিত-ট্রান্সপোজ দ্বারা হ্রাস করুন এটি সমান … যা এর সমান … যা ডানে (কম এক) অফসেটের যতগুলি ধাপ বাম দিকে ঘুরবে এবং অফসেট ডাউন (কম এক) যতগুলি পদক্ষেপ ঘুরিয়ে দেয়, যার ফলে 3-বাই -3 ম্যাট্রিক্স আমরা উপরের বাম কোণে থাকতে চাই
  y⊖⍉x⊖⍉y⊖x⌽ii

 প্রকাশ করুন (কারণ হ্রাস দ্বারা ভেক্টরকে স্কেলারে আটকিয়ে কমিয়েছে)

⍪⍨⍣2 নিজের উপরে দু'বার স্ট্যাক করুন (আমাদের কেবলমাত্র একক-সারি ম্যাট্রিকের জন্য তিনবার প্রয়োজন)

,⍨⍣2 নিজেকে দু'বার যুক্ত করুন (আমাদের কেবলমাত্র একক-কলামের ম্যাট্রিকগুলির জন্য তিনবার প্রয়োজন)

3 3↑ প্রথম তিনটি কলামের প্রথম তিনটি সারি নিন

3-বাই -3 ম্যাট্রিক্স গ্রহণযোগ্য হলে পরবর্তী দুটি পদক্ষেপ বাদ দেওয়া যেতে পারে:

, অভ্যাস (সমতল)

4⌽ চারটি ধাপ বাম দিকে ঘোরান (কেন্দ্রের উপাদানটি সামনে এনে দেয়)

1↓ প্রথম উপাদানটি ফেলে দিন


@ অ্যাডাম উপরেরটি ঠিক করুন এবং এটি সংক্ষিপ্ত করুন:, আপনিও {,(⍺⊥⍺|(⍺⊤⍵)-⊢)¨1-⍳3 3}মাঝারি উপাদানটি অপসারণ করবেন কিনা তা নিশ্চিত নই: {4⌽1↓4⌽...}
এনজিএন

@ জিএন উহ, এটি বেশ আসল। আপনি যে পোস্ট!
15

@ আদম ঠিক
ngn

আমি মনে করি না যে আউটপুটটির মধ্যে কেন্দ্রের উপাদান থাকবে।
জংহওয়ান মিন

1
শেষ পরীক্ষার কেসটিতে এখনও 8 টি উপাদান রয়েছে। আমি মনে করি [-1, -1], [-1, 0], [-1, 1], [0, -1], [0, 1], [1, -1], [1, 0], [1, 1]
অভিজাত আউটপুটটি


4

আর , 125 111 108 বাইট

function(x,i,m=array(1:prod(x),x),n=rbind(m,m,m),o=cbind(n,n,n),p=which(m==i,T)+x-1)o[p[1]+0:2,p[2]+0:2][-5]

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

14 এবং 8 বাইটগুলি @ জায়েসি এবং @ মার্ক দ্বারা গল্ফ করেছে।

ইনপুট হ'ল [w, h], iপ্রথমে আরে কলামটি পপুলেট করে।

অ্যারে এবং তারপরে এটি "ট্রিপল" করে তোলে - এবং কলাম অনুসারে। তারপরে iআসল অ্যারেটিতে সন্ধান করুন এবং এর আশেপাশের জায়গা সন্ধান করুন। আউটপুট ছাড়া i


1
আপনি 14 বাইট সংরক্ষণ করতে পারেন । আমি জানতাম না যেটিতে একটি তর্কযুক্ত যুক্তি ছিল, আজ কিছু শিখলাম!
জেসি

আপনি সংরক্ষণ করতে পারবেন 8 বাইট প্রতিস্থাপন seq()সঙ্গে1:
মার্ক

3

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

এটি "0-ভিত্তিক"। পিএইচপি-তে আরও ভাল সমাধান থাকতে হবে তবে এটি একটি সূচনা পয়েন্ট!

<?list(,$h,$w,$i)=$argv;for($r=-2;$r++<1;)for($c=-2;$c++<1;)$r||$c?print(($k=(int)($i/$w)+$r)<0?$h-1:($k>=$h?0:$k))*$w+(($l=$i%$w+$c)<0?$w-1:($l>=$w?0:$l))%$w.' ':0;

এটি চালানোর জন্য:

php -n <filename> <h> <w> <i>

উদাহরণ:

php -n cell_neighbours.php 4 5 1

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


3

কে (এনএনজি / কে) , 27 24 বাইট

{x/x!''(x\y)-1-3\(!9)^4}

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

{ }আর্গুমেন্ট x(মাত্রা h w) এবং y(সূচক i) সহ একটি ফাংশন

(!9)^4হয় 0 1 2 3 4 5 6 7 8ছাড়া4

3\ টেরিনারি এ এনকোড: (0 0;0 1;0 2;1 0;1 2;2 0;2 1;2 2)

1-1প্রতিবেশী অফসেটগুলি দেওয়া থেকে বিয়োগ করে :(1 1;1 0;1 -1;0 1;0 -1;-1 1;-1 0;-1 -1)

x\yম্যাট্রিক্সের স্থানাঙ্ক - এর বেস- xএনকোডিংyy

- প্রতি অফসেট বিয়োগ করে আমাদের আট জোড়া প্রতিবেশী স্থানাঙ্ক দেয়

x!''xপ্রতিটির জন্য মোড - ম্যাট্রিক্সের মধ্যে থাকতে চারপাশে স্থানাঙ্কগুলি মোড়ানো

x/বেস থেকে ডিকোড x- স্থানাঙ্কের জোড়া একক পূর্ণসংখ্যায় পরিণত হয়


কৌতূহলের বাইরে, আপনার কে এর বৈকল্পিকের কী জেসের মতো "বিপরীত যুক্তি" অ্যাডভারব রয়েছে ~?
কনর ওব্রায়ান

1
@ কোনোরো ব্রায়েন আমি জানি যে কেএস এর (কেএক্স এর কে, কোনা, ওকে এবং আমার) পরিচিতিগুলির কোনওটিই নেই, যা গল্ফের জন্য দুর্ভাগ্যজনক। এখানে কেবল 6 বিল্ট-ইন অ্যাডওয়্যারস রয়েছে: / \ '/: \:': এবং ব্যবহারকারীর দ্বারা সংজ্ঞায়িত এর জন্য কোনও ব্যবস্থা নেই।
এনজিএন

অবশ্যই আমি একটি সেলফি অ্যাডভারব যুক্ত করতে পারি, তবে এনএনজি / কে-তে গল্ফিং নিজেই শেষ নয়, পরীক্ষার কেস এবং অভিজ্ঞতা জোগানোর একমাত্র মাধ্যম।
এনজিএন

এটা সঙ্গত. অবশ্যই, আপনি এটি ভাষার সম্ভাব্য ঘাটতি হিসাবে দেখতে পারেন। আমি সংযুক্তি বিকাশে সহায়তা করার জন্য পিপিসিজি ব্যবহার করেছি এবং বুঝতে পেরেছি যে অ্যাটাচের এমন কিছু খুব দরকারী কার্যকারিতা রয়েছে যা আমি অন্যথায় অন্তর্ভুক্ত না করতাম। আমি কে ব্যবহার করি না, তবে সম্ভবত এমন অন্যান্য ব্যবহারের কেস রয়েছে যা সেই ধরণের অ্যাডভারবটির পরোয়ানা দিতে পারে?
কনর ও ব্রায়ান

@ কনরোও ব্রায়েন আমি এপিএলে পরিচিত যা ~জে এর মতো এবং আমি এর ইউটিলিটি সম্পর্কে দৃ convinced় বিশ্বাসী, তবে আপনি দেখতে পাচ্ছেন, কে মুদ্রণযোগ্য এএসসিআইআই এবং (প্রায়) কোনও ডিগ্রাফের মধ্যে সীমাবদ্ধ নয়, সুতরাং একটি নতুন বিজ্ঞাপনের অর্থ হবে কিছু অন্যান্য দরকারী আদিম ত্যাগ হিসাবে বাস্তবায়নের মধ্যে আরও অসঙ্গতি। আমি এটি দেখতে কী করতে পারি তা দেখতে পাচ্ছি না
ngn

2

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

*:2Geti=&fh3Y6&fh2-+!Z{)

ইনপুট হয় h, w,i । আউটপুটটি সংখ্যার সাথে একটি সারি ভেক্টর বা কলাম ভেক্টর।

ইনপুট i এবং আউটপুট 1-ভিত্তিক।

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

ব্যাখ্যা

*     % Take two inputs implicitly. Multiply
      % STACK: 16
:     % Range
      % STACK: [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]
2G    % Push second input again
      % STACK: [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16], 4
e     % Reshape with that number of rows, in column-major order
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16]
t     % Duplicate
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16],
      %        [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16]
i=    % Take third input and compare, element-wise
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16],
      %        [0 0 0 0; 0 1 0 0; 0 0 0 0; 0 0 0 0]
&f    % Row and column indices of nonzeros (1-based)
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], 2, 2,
h     % Concatenate horizontally
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], [2 2]
3Y6   % Push Moore mask
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], [2 2],
      %        [1 1 1; 1 0 1; 1 1 1]
&f    % Row and column indices of nonzeros (1-based)
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], [2 2],
      %        [1; 2; 3; 1; 3; 1; 2; 3], [1; 1; 1; 2; 2; 3; 3; 3] 
h     % Concatenate horizontally
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], [2 2],
      %        [1 1; 2 1; 3 1; 1 2; 3 2; 1 3; 2 3; 3 3] 
2-    % Subtract 2, element-wise
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16], [2 2],
      %        [-1 -1; 0 -1; 1 -1; -1 0; -1 0; -1 1; 0 1; 1 1] 
+     % Add, element-wise with broadcast
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16],
      %        [1 1; 2 1; 3 1; 1 2; 3 2; 1 3; 2 3; 3 3]
!     % Transpose
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16],
      %        [1 2 3 1 3 1 2 3; 1 1 1 2 2 3 3 3]
Z{    % Convert into a cell array of rows
      % STACK: [1 5 9 13; 2 6 10 14; 3 7 11 15; 4 8 12 16],
      %        {[1 2 3 1 3 1 2 3], [1 1 1 2 2 3 3 3]}
)     % Index. A cell array acts as an element-wise (linear-like) index
      % STACK: [1 2 3 5 7 9 10 11]

2

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

Mod[i=#;w=#2;Mod[i+#2,w]+i~Floor~w+w#&@@@{-1,0,1}~Tuples~2~Delete~5,1##2]&

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

বিপরীতে ইনপুট নেয় (i, w, h ), 0-ভিত্তিতে ।

এতে কেন্দ্রের ঘর সহ 3x3 ম্যাট্রিক্স, (60 বাইট)

(Join@@(p=Partition)[Range[#2#]~p~#,a={1,1};3a,a,2a])[[#3]]&

লাগে (w, h, i ), 1-ভিত্তিক।

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


2

ব্যাচ, 105 বাইট

@for /l %%c in (0,1,8)do @if %%c neq 4 cmd/cset/a(%3/%2+%1+%%c/3-1)%%%1*%2+(%3%%%2+%2+%%c%%3-1)%%%2&echo.

0-ইন্ডেক্স। @ চ্যাসব্রাউনের মডুলো 3 ট্রিকটি চুরি করে 23 বাইট সংরক্ষণ করা হয়েছে।


2

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

X[h3Y6&fh2-+1GX\1Gw!Z}X]

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

ইনপুট নেয় [w h]এবং i। এর 8 বাইট নির্লজ্জভাবে লুই মেন্ডোসের উত্তর থেকে অনুপ্রাণিত হয়ে চুরি হয়েছিল , যদিও সামগ্রিক পদ্ধতির চেয়ে ভিন্ন is



1

জেলি , 20 বাইট

PRs©Ṫ{œi+€Ø-Ż¤ŒpḊœị®

একটি ডায়াডিক লিঙ্ক বাম দিকের মাত্রাগুলির একটি তালিকা গ্রহণ করে এবং ডানে [h,w]একটি পূর্ণসংখ্যা হিসাবে ঘরটি i, যা প্রতিবেশীর একটি তালিকা দেয়।

দ্রষ্টব্য: ওপিতে অনুমোদিত উদাহরণগুলিতে ক্রমটি আলাদা

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

কিভাবে?

PRs©Ṫ{œi+€Ø-Ż¤ŒpḊœị® - Link: [h,w], i
P                    - product -> h*w
 R                   - range -> [1,2,3,...,h*w]
    Ṫ{               - tail of left -> w
  s                  - split into chunks -> [[1,2,3,...w],[w+1,...,2*w],[(h-1)*w+1,...,h*w]]
   ©                 - ...and copy that result to the register
      œi             - multi-dimensional index of (i) in that list of lists, say [r,c]
             ¤       - nilad followed by link(s) as a nilad:
          Ø-         -   literal list -> [-1,1]
            Ż        -   prepend a zero -> [0,-1,1]
        +€           - addition (vectorises) for €ach -> [[r,r-1,r+1],[c,c-1,c+1]]
              Œp     - Cartesian product -> [[r,c],[r,c-1],[r,c+1],[r-1,c],[r-1,c-1],[r-1,c+1],[r+1,c],[r+1,c-1],[r+1,c+1]]
                Ḋ    - dequeue -> [[r,c-1],[r,c+1],[r-1,c],[r-1,c-1],[r-1,c+1],[r+1,c],[r+1,c-1],[r+1,c+1]]
                   ® - recall (the table) from the register
                 œị  - multi-dimensional index into (1-indexed & modular)

1

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

{a.=[]Moore[Integers@@__2,{Push[a,_]},cycle->1]Flat[a@_][0:3'5:8]}

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

আমার এখনও বাস্তবায়ন করতে হবে Mooresএবং NMooreতবে আমার এখনও আছে Mooreযা একটি পুনরাবৃত্তি ফাংশন হিসাবে কাজ করে। মূলত, প্রথম পূর্ণসংখ্যার Integers@@__2একটি পূর্ণসংখ্যার বিন্যাস __2(শেষ দুটি আর্গুমেন্ট) তৈরি করে Prod[__2]। এটি আমাদের লক্ষ্য অ্যারে দেয়। তারপরে, প্রতিটি মৌল ( ) আবর্তিত বিকল্পের সাহায্যে আকারের প্রতিটি মুর পাড়া (অন্তর্ভুক্ত যুক্তি) এর উপরে Mooreফাংশনটি পুনরাবৃত্তি করে । এটি প্রতিটি পাড়া অ্যারেতে যুক্ত করে । তারপর, চ্যাপ্টা তম সদস্য , যে মুর আশপাশ চারপাশে কেন্দ্রীভূত (প্রথম যুক্তি)। এই সমতল অ্যারে থেকে কেন্দ্র ব্যতীত সমস্ত সদস্য প্রাপ্ত করে।{Push[a,_]}1cycle->1aFlat[a@_]_a_[0:3'5:8]

এই সমাধানটি, ভাষাটির আপডেটের সাথে এই জাতীয় কিছু দেখতে পাবেন (49 বাইট):

{Flat[NMoore[Integers@@__2,_,cycle->1]][0:3'5:8]}

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