কোলমোগোরভ শিফটার


37

নিম্নলিখিত তিনটি লাইনের পাঠ্য আউটপুট বা প্রদর্শন করুন যেমন তারা নীচে দেখানো হয়েছে। একটি ট্রেলিং নিউলাইন গৃহীত হয়।

 bC#eF&hI)kL,nO/qR2tU5wX8z
A!cD$fG'iJ*lM-oP0rS3uV6xY9
aB"dE%gH(jK+mN.pQ1sT4vW7yZ

পাঠ্যের সেই ব্লকটি নীচের অংশের মতোই, তবে যেখানে n'th কলামটি নীচের দিকে n বার ঘোরানো হয়েছে:

 !"#$%&'()*+,-./0123456789
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz

মনে রাখবেন যে এটি একটি চ্যালেঞ্জ, সুতরাং আউটপুট ফর্ম্যাটটি নমনীয় নয়।


1
পাঠ্যটি কি নতুন লাইনে শেষ হবে? বিশেষত '.... z \ n \ n` এ শেষ করা ঠিক আছে?
টন হসপেল

2
@ টম না, এটি সর্বাধিক একের পরের লাইন হওয়া উচিত
স্টিভি গ্রিফিন

একটি শীর্ষস্থানীয় নিউলাইন গ্রহণযোগ্য?
ডম হেস্টিংস

@ ডোমহাস্টিংস না, দুঃখিত
স্টিভি গ্রিফিন

(অনেক ভাষার জন্য (এইচটিএমএল, ///, পাঠ্য, বুবলগাম)) ৮০ টি অক্ষরের হার্ডকোডিং (সম্ভবত বুবলগাম বাদে) সবচেয়ে কম হবে, এটি বিরক্তিকর, দয়া করে এটি করবেন না)
ব্যবহারকারী 202729

উত্তর:


18

জাভা 8, 169 162 150 146 116 113 106 95 94 93 92 91 90 84 বাইট

হ্যাঁ, আমরা শেষ পর্যন্ত এটি করেছি! আমরা 88-বাইটের আক্ষরিক আউটপুটকে পরাজিত করেছি যা নীচে পাওয়া যাবে। যারা গল্ফিংয়ে অংশ নিয়েছিল তাদের সবাইকে ধন্যবাদ!

v->{for(int i=0,t=0;++i<81;System.out.printf("%c",i%27<1?10:(4-t++%3)*32%97+i%27));}

-7 বাইটস @ স্টেভিগ্রিফিনকে ধন্যবাদ ।
-42 ধন্যবাদ বাইট @Neil
-11 বাইটস @ পিটারটেলরকে ধন্যবাদ জানায়
-3 বাইট @ অলিভিগ্রগ্রোয়ারকে ধন্যবাদ ।
-6 ধন্যবাদ বাইট @ OlivierGrégoire এবং @Neil (অলিভিয়ের প্রস্তাব নিল এর জাভাস্ক্রিপ্ট উত্তর পোর্ট )।

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

ব্যাখ্যা:

v->{                          // Method with empty unused parameter and no return-type
  for(int i=0,t=0;++i<81;     //  Loop from 1 to 81 (exclusive)
     System.out.printf("%c",  //   Print the following character:
      i%27<1?                 //    If it's the last column
       10                     //     Print a new-line
      :                       //    Else:
       (4-t++%3)*32%97+i%27   //     Print the correct character based on the index

পাটিগণিতের প্রতিটি অংশ কী করে এবং এখানে সঠিক অক্ষরগুলি কীভাবে শেষ হয় তা দেখুন।


জাভা 8, 88 বাইট

v->" bC#eF&hI)kL,nO/qR2tU5wX8z\nA!cD$fG'iJ*lM-oP0rS3uV6xY9\naB\"dE%gH(jK+mN.pQ1sT4vW7yZ"

বিরক্তিকর, তবে কলামগুলির উদ্দেশ্যে ঘূর্ণায়মানটি ব্যবহার করা নিশ্চিতভাবে জাভাতে কোনও ছোট হবে না .. আমি সংশোধন করছি! এটি কতটা বাইটের চেয়ে আলাদা তা দেখার জন্য কোনও মুহুর্তে একটি সমাধান পোস্ট করবে। স্পষ্টতই পার্থক্যটি মাত্র -4 বাইট! : ডি

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



1
আমার সিজেএম পদ্ধতির উপর ভিত্তি করে আমি নিশ্চিত যে পজিশনে কোড পয়েন্টের জন্য যুক্তিসঙ্গতভাবে সহজ গাণিতিক সূত্র থাকা উচিত (x, y)যা সম্ভবত আপনার 169-বাইট পদ্ধতির এবং সম্ভবত এমনকি আক্ষরিক স্ট্রিংকেও হারাবে।
মার্টিন এন্ডার

1
116 বাইট:v->{String a="";for(int i=2,j,t;++i<6;){for(j=31;++j<58;a+=(char)(t<1?j+65:t>1?j:j+33))t=(j-i)%3;a+="\n";}return a;}
নীল

1
আহেম, 95:v->{for(int i=0,r,c;++i<81;System.out.printf("%c",c<1?10:32*++r+c-1/r))r=(i/27+28-(c=i%27))%3;}
পিটার টেলর

1
92 বাইট ( cসম্পূর্ণরূপে অপসারণ )
অলিভিয়ার গ্রাগোয়ার

4
@ অলিভিয়ারগ্রোওয়ের জাভা স্ক্রিপ্ট আউটগল্ফিং? আমি কি ভুল করছি?
নিল

13

হুশ , 13 বাইট

Tzṙṫ26¡m→"Aa 

পেছনের স্থানটি নোট করুন। এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

Tzṙṫ26¡m→"Aa   No input.
         "Aa   The string "Aa ".
      ¡        Iterate
       m→      map successor: ["Aa ","Bb!","Cc\"","Dd#",..
 z             Zip with
   ṫ26         the reversed range [26,25,24,..,1]
  ṙ            using rotation: [" Aa","b!B",..,"z9Z"]
               This also truncates the list to length 26.
T              Transpose, implicitly print separated by newlines.

11

এসপিএল (শেক্সপিয়ার প্রোগ্রামিং ল্যাঙ্গুয়েজ), 1679 1618 1600 বাইট

.
Ajax,.
Ford,.
Puck,.
Act I:.
Scene I:.
[Enter Ajax and Ford]
Ajax:
You are the remainder of the quotient between the sum of the remainder of the quotient between the product of me and a fat joy and the sum of the cube of a big red day and the difference between a red fat pig and a big old fat cow and the quotient between me and the sum of a day and the square of the sum of a joy and a big red day and the sum of a cat and a fat son.
[Exit Ajax]
[Enter Puck]
Ford:
Am I as good as nothing? If so, you are a bad big old red fat day. Am I as good as a joy? If so, you are the sum of a joy and a the cube of an old bad day. Am I as good as a big day? If so, you are the sum of the square of the sum of a big red fat cat and an old cow and the sum of an old war and a lie.
[Exit Ford]
[Enter Ajax]
Ajax:
You are the sum of thyself and the remainder of the quotient between me and the sum of a man and the square of the sum of a son and a big fat cow. Speak thy mind!
[Exit Puck]
[Enter Ford]
Ford:
You are the sum of yourself and a son.
Ajax:
You are the remainder of the quotient between me and the sum of a cat and the square of the sum of a cow and an old red sky.
Ford:
Am I as good as nothing? If so, let us proceed to scene III.
Scene II:.
Ajax:
You are the product of the sum of a fat man and a cow and the sum of a man and the square of the sum of a cat and a big red son. Are you not better than me? If so, let us return to act I. Let us proceed to scene IV.
Scene III:.
Ajax:
You are the sum of a big old fat cat and a red cow. Speak thy mind! Let us return to scene II.
Scene IV:.
[Exeunt]

দোভাষীর সাথে আমার কিছু সমস্যা ছিল ( https://github.com/drsam94/Spl ), সুতরাং এটি এতটা ছোট নয় যতটা আমার মনে হয় এটি হতে পারত। তবে কমপক্ষে এটি কাজ করে :)


এখানে কী চলছে তা কিছুটা সহজ করার জন্য পিএইচপি তে একই যুক্তি এখানে দেওয়া হল।

<?php

Act1Scene1:
$ford = ((2 * $ajax) % 52 + $ajax / 26) % 3;
if ($ford == 0) {
    $puck = 32;
}
if ($ford == 1) {
    $puck = 65;
}
if ($ford == 2) {
    $puck = 97;
}
$puck = $ajax % 26 + $puck;
echo chr($puck);

$ajax = $ajax + 1;

$ford = $ajax % 26;
if ($ford == 0) {
    goto Act1Scene3;
}

Act1Scene2:
if ($ajax < 78) {
    goto Act1Scene1;
}
goto Act1Scene4;

Act1Scene3:
$ford = 10;
echo chr($ford);
goto Act1Scene2;

Act1Scene4:

4
এই শব্দের ভাষণগুলি হতাশাগ্রস্ত ডাঃ সিউস বইয়ের মতো। : ^ ডি
ডিএলকস

10

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

f=(i=k=0)=>i<80?String.fromCharCode(++i%27?(4-k++%3)*32%97+i%27:10)+f(i):''

সম্পাদনা করুন: 11 রাউন্ড সংরক্ষিত @ রায়ানকে ধন্যবাদ আক্ষরিক চেয়ে এখন 10 বাইট কম!

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

f=(i=k=0)=>i<80?Buffer([++i%27?(4-k++%3)*32%97+i%27:10])+f(i):''

এটি অনলাইন চেষ্টা করুন! রায়ানকে ধন্যবাদ


2
আপনি পুনরাবৃত্তি সহ 11 বাইট সংরক্ষণ করতে পারবেন: f=(i=k=0)=>i-80?String.fromCharCode(++i%27?(4-k++%3)*32%97+i%27:10)+f(i):''এবং নোডের পরিবেশে আরও 11 টি f=(i=k=0)=>i-80?Buffer([++i%27?(4-k++%3)*32%97+i%27:10])+f(i):''
আলাদাভাবে

8

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

এরিক দ্য আউটগল্ফারকে ধন্যবাদ 2 বাইট সংরক্ষণ করা

žQAuA)øε¼¾GÁ]ø»

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

ব্যাখ্যা

žQ                 # push the list of printable ascii characters
  Au               # push upper-case alphabet
    A              # push lower-case alphabet
     )ø            # zip
       ε           # apply to each
        ¼          # increment counter
         ¾G        # for N in [1 ... counter] do:
           Á       # rotate string right
            ]      # end loops
             ø     # zip
              »    # print list joined by newlines

@ এমিগনা আমার মনে হচ্ছে εNএকটি জিনিস হওয়া উচিত। vyNFÁ])ø»আপনার এবং আপনার দুটি ধারণা একত্রিত করে ।
ম্যাজিক অক্টোপাস উরন

@ ম্যাজিক অ্যাক্টোপাস উর্ন: হ্যাঁ, আমি প্রায়শই Nব্যবহার করার সময় চেয়েছিলাম ε। এটি কোনও εলুপ নয় বলে প্রযুক্তিগতভাবে ফিট হয় না, যদিও আমরা কখনও কখনও এটির মতো ব্যবহার করি তবে এটি ভাল লাগবে।
এমিগনা

8

সিজেএম (18 বাইট)

26{_" Aa"f+m>}%zN*

অনলাইন ডেমো

ব্যবচ্ছেদ

সুস্পষ্ট পদ্ধতিটি হ'ল মূল লাইনগুলি তৈরি করা, জিপ করা, ঘোরানো ee::m>এবং পিছনে জিপ করা। তবে ee::এটি বেশ দীর্ঘ, এবং সরাসরি কলামগুলি তৈরি করা সংক্ষিপ্ত।

26{         e# For i = 0 to 25...
  _" Aa"f+  e#   Generate the unrotated column by offsets from the starting chars
  m>        e#   Rotate the appropriate distance
}%
zN*         e# Zip and join the rows with newlines

8

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

x=98
exec"r='';exec'r+=chr(x/3);x+=291*(x<180)-94;'*26;print r;x-=78;"*3

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

এটি 31.333..পূর্ববর্তী অক্ষরটি 9760-এরও কম হলে যুক্ত করে এবং 26প্রতিটি লাইনের শেষে বিয়োগ করে পূর্ববর্তী অক্ষর থেকে সরিয়ে কাজ করে ।


8

আর , 64 63 বাইট

cat(intToUtf8(c(32:57,10,65:90,10,97:122,10)[(0:80*55)%%81+1]))

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

-1 বাইট জিউসেপিকে ধন্যবাদ

আমি বেশ খানিকটা পরীক্ষা এবং ত্রুটির মধ্য দিয়ে এখানে পৌঁছেছি, তাই আমি একটি সংক্ষিপ্ত ব্যাখ্যা দিয়ে সংগ্রাম করছি। মূলত, অক্ষর কোডগুলির পরিবর্তে, আমি 1:81 এর আরও সাধারণ ক্রম দিয়ে শুরু করেছি পাঠ্যের মূল ব্লক (3 * 26 প্লাস 3 নিউলাইনগুলি) উপস্থাপন করে এবং যেখানে এই মানগুলি ঘোরানো ব্লকে শেষ হয় তার সূচকগুলি পরীক্ষা করেছিলাম। এটি একটি নিয়মিত ক্রম অনুসরণ করে যা প্রতিবার 26 দ্বারা নেমে যায়, মডুলো 81 (বা সমতুল্য, 55 মডি 81 দ্বারা বৃদ্ধি পায়)। এটি তখন সেই অনুক্রমটি (0:80*55)%%81+1])পুনরুদ্ধার করার বিষয় ছিল, বাস্তব ইউনিকোড মানগুলিতে ম্যাপিং করা c(32:57,10,65:90,10,97:122,10), অক্ষরে রূপান্তরিত এবং মুদ্রণের বিষয় ছিল।


সাবাশ! আমি এটিকে অনুগ্রহ করবো, যদিও আমি সত্যিই ৮০+ বাইট সীমার মধ্যে আরও একটি সমাধান প্রত্যাশা করেছি, তাই আমি মনে করি আমি এই অনুগ্রহটি ১০০
জিউসেপ্পে

@ জিউসেপ কোন উদ্বেগ নেই! এটি প্রতিবেদনের তুলনায় সততার চেয়ে চ্যালেঞ্জ সম্পর্কে আরও বেশি।
ব্যবহারকারী 2390246

অই, আপনি একটি বাইট ব্যবহার সংরক্ষণ করতে পারবেন 55পরিবর্তে -26যেহেতু -26 == 55(গেলিক ভাষার 81)।
জিউসেপ

@ জিউজেপ্প পরামর্শ এবং অনুগ্রহের জন্য ধন্যবাদ!
ব্যবহারকারী 2390246

6

জাপট , 17 15 বাইট

"@`"
;By@=cÄ é

এটি অনলাইন পরীক্ষা!

ব্যাখ্যা

"@`"         The string "@`\x1F". The following newline sets U to this string.
;            Reset variables A-L to various values. B is set to
 B           the uppercase alphabet, which we only use to get a length of 26.
  y@         Map each column Z (initially just the letter itself) through this function:
     cÄ        Increment each char-code in U.
        é      Rotate by 1 character.
    =          Set U to the result to keep the chain going.
             This generates the 26 columns exactly how we needed them.
             Implicit: output result of last expression

7 অন্যান্য সম্ভাব্য 15-বাইটার:

;By@" Aa"c+Y éY
;ByÈpv)iSc+Y)éY
;ByÈ+v)iSc+Y)éY
;ByÈpv)iYd32)éY
;ByÈ+v)iYd32)éY
;ByÈpv)i32dY)éY
;ByÈ+v)i32dY)éY

5

সিজেম , 23 21 বাইট

3{26{_I-" aA"=+}/N}fI

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

ব্যাখ্যা

3{         e# For I from 0 to 2...
  26{      e#   For i 0 to 25...
    _I-    e#     Duplicate i and subtract I. This shifts the starting
           e#     character of each line left in the following string.
    " aA"= e#     Pick the character at the start of the unrotated line
           e#     of the current character. We basically just cycle
           e#     through non-letters, lower-case, upper-case, which is
           e#     the cycle throughout the result. Due to the I-, when
           e#     We get to the second line we start from A, and on the
           e#     third line we start from a.
    +      e#     Add i to the starting character to get the correct
           e#     column.
  }/
  N        e#   Push a linefeed.
}fI

3
খুব সুন্দর ব্যাখ্যা। আমি বিশেষত পছন্দ করি: "এলোমেলো চেহারার স্ট্রিংটি পুশ করুন।" : পি
স্টিভি গ্রিফিন

2
@ স্টেভি গ্রিফিন দুঃখিত, এই স্ট্রিংটি যেতে হয়েছিল।
মার্টিন এন্ডার

5

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

1Y2tk9V:v26:l&YS

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

ব্যাখ্যা

1Y2     % Push 'AB...Z' (predefined literal)
t       % Duplicate
k       % Maker lowercase
9V      % Push 9, convert to string representation: gives char '9'
:       % Range. For chars, gives string from space to that
v       % Concatenate vertically. Gives a 3×26 char matrix
26      % Push 26
:       % Range. For numbers, gives numeric vector from 1 to that
l&YS    % Circularly shift each column of the first input (char matrix)
        % by the amount specified by the second input (numeric vector).
        % Implicitly display

2
চমৎকার :) আমি এখনও লড়াই করছি যখন আমাকে অবশ্যই ডিফল্ট আই / ও ফাংশনের ফর্ম্যাটগুলি পরিবর্তন করতে হবে ... :(
স্টিভি গ্রিফিন

1
ওহ 1:26শিফট হিসাবে ব্যবহার করার জন্য স্ট্রিং ক্রম সঙ্গে খুব সুন্দর । আমার আর উত্তরে এটি চেষ্টা করা উচিত ...
জিউসেপ

1
সুয়েভারের &ধারণা থেকে @ স্টিভি গ্রিফিন মেটা-ফাংশনটি একটি দুর্দান্ত সংযোজন ছিল :-)
লুইস মেন্ডো

@ জিউসেপ হ্যাঁ, এটি একটি বাইট সংরক্ষণ করেছে :-)
লুইস মেন্ডো

5

জেলি , 13 বাইট

26“ aA‘ẋs+ḶỌY

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

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

26“ aA‘ẋs+ḶỌY  Main link. No arguments.

26             Set the argument and the return value to 26.
  “ aA‘ẋ       Repeat [32, 97, 65] (code points of ' ', 'a', and 'A') 26 times.
        s      Split the result into chunks of length 26.
          Ḷ    Unlength; yield [0, ..., 25].
         +     Add [0, ..., 25] to each of the chunks.
           Ọ   Unordinal; cast all integers to characters.
            Y  Jojn, separating by linefeeds.

5

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

print map{chr$n+++ord,$/x!($n%=26)}($",A,a)x26

টনহোস্পেলের আরকেন উইজার্ডারিকে 13 বাইট সংরক্ষণ করা হয়েছে !

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


তোমার $i++ঠিক হয় $_এবং আপনি ব্যবহার করতে পারেন sayপরিবর্তে printতাই এই সত্যিই হয়50
টন Hospel

মিম, এবং এটির {}জন্য মানচিত্রে খুব সহজেই মুক্তি পাওয়া সহজ 49:say map$/x/26|52/.chr$_%26+(32,65,97)[$_%3],0..77
টন হসপেল

@ টনহোস্পেল হ্যাঁ, অবশ্যই! ধন্যবাদ!
ডম হেস্টিংস

লুপ নতুন নকশা দেয় 47: print map{chr$n+++$_,$/x!($n%=26)}(32,97,65)x26। দুর্ভাগ্যক্রমে sayএকটি নতুন লাইন অনেক বেশি দেয়।
টন হসপেল

এবং একটি মজা 48:say map$/x/.A/.chr$n++%26+(65,32,97)[$n%3],A..BZ
টন হসপেল

5

আর , 88 86 বাইট

cat(intToUtf8(rbind(diffinv(matrix(c(66,-32,-31),25,5,T)[,1:3],,,t(c(32,65,97))),10)))

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

স্ট্রিং ম্যানিপুলেশনে আর ভয়ঙ্কর এবং যদিও এর কিছু ঝরঝরে ম্যাট্রিক্স বিল্টিন রয়েছে তবে আবর্তন অন্য জিনিস যা এটি খুব সহজেই করে না। যে কে আমাকে আর-তে গল্ফ করতে পারে তাকে আমি আনন্দের সাথে একটি অনুদান দেব

আমার একটি সংক্ষিপ্ত উত্তর পাওয়া সত্ত্বেও, আমি এখনও অন্য 88 টি বাইটের চেয়ে কম উত্তর আরকে 50 টি রিপ্রেস অনুদান দেব ount

আমি মনে করি আমি যদি পারতাম তবে নিজেকে এই অনুগ্রহটি উপহার দেব তবে এটি "বিরক্তিকর" উত্তরের চেয়ে পুরো দুটি বাইট কম! আমি কেবল পুনর্ব্যবহারের জন্য আর এর পেনচেন্ট ব্যবহার করে আবর্তনগুলি এড়াতে চাই।

সম্পাদনা: ব্যবহারকারী 2390246 এর উত্তর আমাকে পুরোপুরি ছাপিয়ে গেছে এবং সমাধানটি আরও উচ্চতর হওয়ায় আমি 100 পয়েন্টের অনুদান প্রদান করব।

এখানে পৌঁছানোর জন্য, আমি কাঙ্ক্ষিত আউটপুটটি তাদের utf8ToInt( ASCII) কোড পয়েন্টগুলিতে (নতুন লাইনগুলি সরিয়ে) ডিকনস্ট্রাক্ট করেছিলাম , একটি ম্যাট্রিক্স তৈরি করেছি এবং diffকলাম অনুসারে পার্থক্য পেয়ে তাদের উপর দৌড়ে এসেছি। সেখানে পর্যায়ক্রমিকতার কথা উল্লেখ করে, আমি মূলটি diffinvপুনরায় তৈরির জন্য ব্যবহারের আশায় মজাদার রূপে ম্যাট্রিক্স তৈরির উদ্দেশ্যে যাত্রা শুরু করি ।

পর্যায়ক্রমের জন্য ধন্যবাদ, আমরা diffআর-কে একাধিক দৈর্ঘ্যের সাথে পুনর্ব্যবহার করতে বাধ্য করে এবং আমরা যে কলামগুলি চেয়েছিলাম তা আহরণ করে এড ম্যাট্রিক্স পুনরায় তৈরি করতে পারি:

matrix(c(66,-32,-31),25,5,T)[,1:3]

তারপরে আমরা diffinvকোডটি পয়েন্টগুলি 10পুনরায় তৈরি করতে, নীচে একটি সারি (নিউলাইনস) যুক্ত করতে, এএসসিআইআইতে পুনর্নির্দেশ intToUtf8এবং catফলাফলের সাথে এই প্রক্রিয়াটি উল্টে ফেলি ।


3
আপনি নিজেকে বাছাই করতে পারেন সাজানোর। অনুগ্রহের জন্য আপনাকে এক্স রেপ করতে হবে এবং আপনি এটি থেকে এক্স প্রতিনিধি অর্জন করতে পারবেন ... সুতরাং, এটি সম্পন্ন বিবেচনা করুন!
স্টিভি গ্রিফিন


5

স্ট্যাক্স , 14 12 বাইট

ü≤▐éh╢%╠£┐3]

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

আনপ্যাকড, নিরবচ্ছিন্ন এবং মন্তব্য করা হয়েছে, এটি দেখতে এটির মতো দেখাচ্ছে।

3R26        push [1,2,3] and 26
K           cross-map using the rest of the program, printing lines implicitly
            this instruction maps over a cartesian join
  -         subtract
  " Aa"@    index into " Aa" using the subtraction result
  i+        add the iteration index

এটি চালান

এই প্রোগ্রামটি কেবল এমন বৈশিষ্ট্য ব্যবহার করে যা স্ট্যাক্সের প্রাথমিক প্রকাশের পরে থেকে পাওয়া যায়, তবে স্পষ্টতই আমি Kক্রস-ম্যাপের জন্য ভুলে গিয়েছিলাম যখন আমি মূলত এই উত্তরটি লিখি।

এই উত্তর সম্পর্কে একটি আকর্ষণীয় বিষয় লক্ষণীয় হ'ল এটি Rএকটি অপ্রয়োজনীয় নির্দেশ কারণ Kস্পষ্টতই পূর্ণসংখ্যাকে ব্যাপ্তিতে পরিণত করে। তবে কোন উপায় ধাক্কা এর 3এবং 26মধ্যবর্তী কিছু অতিরিক্ত বাইট ছাড়া।


4

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

0..2|%{-join(32..57|%{[char]($_+(0,65,33)[$j++%3])})}

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

আমি দেখতে পাচ্ছি এটি ডোমের পার্ল উত্তরের মতো, তবে আমি স্বাধীনভাবে এটিতে এসে পৌঁছেছি।

এটি প্যাটার্নটি চলে যায় এই সত্যটিকে কাজে লাগায় Symbol - Lowercase - Capital, এমনকি নিউলাইনগুলি ( 8 - z - Aউদাহরণস্বরূপ) মোড়ক করার সময়ও , এবং এটি কেবলমাত্র একটি $j++%3সংখ্যক স্ট্রিংয়ের সাথে যুক্ত করার $_আগে বর্তমান সংখ্যায় উপযুক্ত অফসেট (মাধ্যমে নির্বাচিত ) যুক্ত করে -join। তিনটি লাইন ( $jপুনরাবৃত্তির মধ্যে সংরক্ষণ করা ) নিয়ে আসতে এটি তিনবার হয়েছে । এই তিনটি লাইন পাইপলাইনে রেখে গেছে, এবং অন্তর্নিহিত Write-Outputআমাদের নিখরচায় নতুন লাইন দেয়।


4

জুলিয়া 0.6 , 79 বাইট

println.([prod([' ':'9' 'A':'Z' 'a':'z'][n,mod1(i-n,3)] for n=1:26) for i=2:4])

[' ':'9' 'A':'Z' 'a':'z']অক্ষরহীন 2d অ্যারে হ'ল [n,mod1(i-n,3)]উপযুক্ত আবর্তনের সাথে অ্যারেতে সূচকগুলি। prodঅক্ষরের একটি ভেক্টরকে একটি স্ট্রিংয়ে নিয়ে যায় (যেহেতু স্ট্রিং জোড়ার জন্য গুণটি ব্যবহৃত হয়)। দুটি নেস্টেড ভেক্টর বোঝাপড়া যার ফলে ভেক্টরের 3 টি স্ট্রিং রয়েছে, তার পরে println.ভেক্টরটিতে প্রতিটি স্ট্রিং একটি নতুন লাইন পরে মুদ্রণ করে।

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

পেস্টের উদাহরণটি অনুলিপি করুন (এটি ;প্রয়োজনীয় নয়, এটি কেবল আরআরপিএলে অতিরিক্ত আউটপুটকে সুপার্রেস করে):

julia> println.([prod([' ':'9' 'A':'Z' 'a':'z'][n,mod1(i-n,3)] for n=1:26) for i=2:4]);
 bC#eF&hI)kL,nO/qR2tU5wX8z
A!cD$fG'iJ*lM-oP0rS3uV6xY9
aB"dE%gH(jK+mN.pQ1sT4vW7yZ

4

কাঠকয়লা , 26 21 15 বাইট

E³⭆⧧⟦γαβ⟧⁻κμμ

এটি অনলাইন চেষ্টা করুন! লিঙ্কটি কোডটির ভার্জোজ সংস্করণ। ব্যাখ্যা:

 ³              Literal 3
E               Map over implicit range
   β            Lowercase letters
  ⭆             Map over characters and concatenate
            κ   Outer index
             μ  Inner index
           ⁻    Subtract
       γ        Printable characters
        α       Uppercase letters
         β      Lowercase letters
     §⟦   ⟧     Circularly index into list (selects one of the three strings)
              μ Inner index
    §           (Circularly) index into string
                Implicitly print each inner map result on a separate line

4

জে , 29, 27 25 বাইট

-২ বাইট মাইলে ধন্যবাদ ফ্রাউনফ্রোগ -২ বাইট

 |:u:(<26)2&(|.>:)32 65 97

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

প্রাথমিক পদ্ধতির: জে , 29 বাইট

u:(-|."_1&.|:32 65 97+/])i.26

ব্যাখ্যা: i.26- পরিসীমা 0-26

   i.26
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

32 65 97+/] - অক্ষরগুলির জন্য একটি 3-সারি সারণী তৈরি করুন

   32 65 97+/i.26
32 33 34  35  36  37  38  39  40  41  42  43  44  45  46  47  48  49  50  51  52  53  54  55  56  57
65 66 67  68  69  70  71  72  73  74  75  76  77  78  79  80  81  82  83  84  85  86  87  88  89  90
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122

&.|:স্থানান্তরিত করুন পরবর্তী ক্রিয়াটি ( |.) করুন এবং আবার স্থানান্তর করুন transp

-|."_1 প্রতিটি সারিতে n বার ঘোরান

     (-i.26)|."_1|:32 65 97+/i.26
 32  65  97
 98  33  66
 67  99  34
 35  68 100
101  36  69
 70 102  37
 38  71 103
104  39  72
 73 105  40
 41  74 106
107  42  75
 76 108  43
 44  77 109
110  45  78
 79 111  46
 47  80 112
113  48  81
 82 114  49
 50  83 115
116  51  84
 85 117  52
 53  86 118
119  54  87
 88 120  55
 56  89 121
122  57  90

u: ইউনিকোডে রূপান্তর করুন

    u:(-i.26)|."_1&.|:32 65 97+/i.26
 bC#eF&hI)kL,nO/qR2tU5wX8z
A!cD$fG'iJ*lM-oP0rS3uV6xY9
aB"dE%gH(jK+mN.pQ1sT4vW7yZ

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


নিবন্ধন করুন স্পষ্টতই আমি ম্যাট্রিক্স কলাম-ভিত্তিক তৈরির সম্ভাবনাটি পরীক্ষা করে দেখিনি।
গ্যালেন ইভানভ

2
|:u:(<26)2&(|.>:)32 65 972 বাইট সঞ্চয়
মাইল

@ মাইলস দুর্দান্ত কোডের জন্য ধন্যবাদ!
গ্যালেন ইভানভ

4

সি, 70 69 67 60 64 বাইট

i;f(t){for(i=t=0;++i<81;putchar(i%27?(4-t++%3)*32%97+i%27:10));}

+4 করতে বাইট ফাংশন পুনর্ব্যবহারযোগ্য

অবৈধ 60-বাইট উত্তর যা পুনরায় ব্যবহারযোগ্য নয়:

i,t;f(){for(;++i<81;putchar(i%27?(4-t++%3)*32%97+i%27:10));}

পোর্ট অফ আমার জাভা 8 উত্তর @Neil এর জাভাস্ক্রিপ্ট উত্তর

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


যেহেতু ফাংশনগুলি পুনরায় ব্যবহারযোগ্য হতে হয় এবং এই ফাংশনটি পরিষ্কারভাবে প্রস্থান করে না তাই এটি বিশ্বব্যাপী পরিবর্তনগুলি পিছনে ফেলে দেয়। আপনি একটি প্রয়োজন i=t=0
জোনাথন ফ্রেচ


3

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

সূচকের উত্স 0

⎕av[(-⍳26)⊖32 65 97∘.+⍳26]

এপিএল পারমাণবিক ভেক্টরের অক্ষরগুলির পূর্ণসংখ্য সূচক মানগুলির একটি ম্যাট্রিক্স উত্পন্ন করুন।

প্রতিটি কলামটি তার সংখ্যার মান দ্বারা নীচে ঘোরান।

পারমাণবিক ভেক্টর থেকে অক্ষরগুলি প্রদর্শন করতে ফলাফল সূচকগুলি ব্যবহার করুন।


3

ভিম, 81 79 বাইট

a !"#$%&'()*+,-./0123456789␛:h<_␍jjYZZpPgU$klqq"aDjlma"bD"ap`ajD"bpkkp`akl@qq@q

ব্যাখ্যা (সরলীকৃত)

a !"#$%&'()*+,-./0123456789␛    Insert the first line
:h<_␍jjYZZpPgU$                  Insert the alphabet twice by copying it from the help page
klqq                             Define the loop `q`:
"aDjl                             Cut the rest of the line to `a`
ma"bD"ap                          Replace the rest of the second line (cut `b`, paste `a`)
`ajD"bp                           Replace the rest of the third line (cut `c`, paste `b`)
kkp                               Paste `c`
`akl@qq@q                        Run the loop, each time one more step to the right

3

সি, 72 বাইট

f(k,x,n){for(n=81;n;putchar(x?k*32+59-x-!k:10))x=--n%27,k=(3+x-n/27)%3;}


3

ব্রেনফাক , 121 115 বাইট

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

6 জ্যাকেট বাঁচানোর জন্য @ জোকিংকে ধন্যবাদ!

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


সংখ্যা প্রজন্মের সাথে ফিড করে 115 বাইট
জো কিং

2
+++[[<+>>++<-]>]আসলেই কি সব কিছুর শুরু, হাহ? ধন্যবাদ!
ডেনিস

3

জাপট , 17 বাইট

26Æ" Aa"c+X éX÷y

এটা পরীক্ষা করো


ব্যাখ্যা

26Æ           Ã       :Create the range [0,26) and pass each X through a function
   " Aa"              :  String literal
        c+X           :  Add X to the codepoint of each character
            éX        :  Rotate right X times
               ·      :Join with newlines
                y     :Transpose

ওহ, আমার একটি পৃথক সমাধান ছিল যা আলাদা জবাবের জন্য যথেষ্ট বা নাও হতে পারে:;Bå_cÄ é}"@`" ·y
ETH প্রোডাকশনগুলি

ভাল এখন যেহেতু আমরা একই দৈর্ঘ্যটি সম্পর্কে এটিকে আরও ভাল বোধ করি ;-)
ETH প্রোডাকশনগুলি

@ ইথ প্রডাকশনগুলি: আমার কাছে যথেষ্ট আলাদা দেখাচ্ছে :) Cদুপুরের খাবারের পরে ম্যাপিংয়ের মাধ্যমে আমি আরও সংক্ষিপ্ত সমাধান নিয়ে আসতে পারি কিনা তা দেখতে যাচ্ছিলাম । কীভাবে yএবং কীভাবে ·ভুল পথে শেষ হয়েছে তা জানেন না ; আমি অবশ্যই Ctrl+Zবহু বার এড করেছিলাম Ctrl+A!
শেগি


2

এপিএল (ডায়ালগ ইউনিকোড) , 23 বাইট ( অ্যাডামের এসবিসিএস )

(⎕UCS-⊖∘↑32 65 97+⊂)⍳26

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

-1 আদমকে ধন্যবাদ ।

একটি ইন্টারেক্টিভ পরিবেশে চলে।

অনুমান ⎕IO←0



@ আদম আহ, ধন্যবাদ
এরিক আউটগল্ফার

2

K4 , 38 বাইট

সমাধান:

-1"c"$+(-t).q.rotate'32 65 97+/:t:!26;

উদাহরণ:

q)k)-1"c"$+(-t).q.rotate'32 65 97+/:t:!26;
 bC#eF&hI)kL,nO/qR2tU5wX8z
A!cD$fG'iJ*lM-oP0rS3uV6xY9
aB"dE%gH(jK+mN.pQ1sT4vW7yZ

ব্যাখ্যা:

ঘূর্ণন সম্পাদন করতে 9 টি অক্ষর ...

-1"c"$+(-t).q.rotate'32 65 97+/:t:!26;
-1                                   ; / print to stdout, swallow return
                                  !26  / til 26, 0..25
                                t:     / save as variable t
                             +/:       / add each right item to...
                     32 65 97          / the list 32, 65, 97 (ASCII offsets)
           .q.rotate'                  / rotate each-both
       (-t)                            / negate, 0..-25
      +                                / flip rows and columns
  "c"$                                 / cast to characters

2

পার্ল, 49 46 বাইট

perl -E 'say map chr($_*55%81)=~y// -:A-Z             
a-z       
/cr,0..79'

অথবা

perl -E 'say grep{$_=chr$_*55%81;y// -:A-Z             
a-z       
/c}0..79'

+1 টি! আমি আপনাকে কোনও বাইট পিছনে সংরক্ষণ করতে সাহায্য করতে পারি না, তবে আমি ব্যবহার সম্পর্কে ভেবে অবাক হলাম $^x8, তবে যথেষ্ট দৈর্ঘ্যের সাথে অন্য কোনও ভেরির কথা ভাবতে পারি না, সম্ভবত "@INC"এটি খুব দীর্ঘ, এবং "@-"পরিবর্তে $n++, তবে এখনও একই দৈর্ঘ্যটি ব্যবহার করে। যদি না এটি আপনাকে আরও সঙ্কুচিত করতে সহায়তা করে? আপনি -pপতাকা যুক্ত না করে এবং অন্তর্নিহিত আউটপুট না থাকলে?
ডম হেস্টিংস

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