ASCII कला को 45 डिग्री से घुमाएं


21

आपका कार्य एक ASCII कला छवि लेना है और इसे 45 डिग्री से दक्षिणावर्त घुमाया और एक कारक द्वारा बढ़ाया गया है । स्केलिंग एक जाली पैटर्न का उपयोग करके आती है जो वर्णों के बीच की जगह का परिचय देती है।2

इसे स्पष्ट रूप से समझाने के लिए, ब्लॉक को इस तरह संसाधित किया जाएगा:3×3

123
456
789

हो जाता है

  1
 4 2
7 5 3
 8 6
  9

वर्ण रूपांतरित नहीं होंगे, इसलिए घुमाव के बाद बक्से अजीब लगेंगे:

+-+
| |
+-+

हो जाता है

  +
 | -
+   +
 - |
  +

प्रक्रिया को अधिक स्पष्ट रूप से समझाने के लिए, आउटपुट में एक हीरे की जाली का पैटर्न होता है, जहां शीर्ष पंक्ति इनपुट के ऊपरी-बाएँ वर्ण से मेल खाती है, अगली पंक्ति दाईं और नीचे पड़ोसियों से मेल खाती है, अगली पंक्ति उन पड़ोसियों की है, और आगे तक सभी पात्रों को जाली पर रखा गया है।

उदाहरण

           FISHKISSFISHKIS               
       SFISHKISSFISHKISSFISH            F
    ISHK   ISSFISHKISSFISHKISS         FI
  SHKISS   FISHKISSFISHKISSFISS       FIS
HKISSFISHKISSFISHKISSFISHKISSFISH    KISS
  FISHKISSFISHKISSFISHKISSFISHKISS  FISHK
      SSFISHKISSFISHKISSFISHKISSFISHKISSF
  ISHKISSFISHKISSFISHKISSFISHKISSF  ISHKI
SSFISHKISSFISHKISSFISHKISSFISHKIS    SFIS
  HKISSFISHKISSFISHKISSFISHKISS       FIS
    HKISSFISHKISSFISHKISSFISHK         IS
       SFISHKISSFISHKISSFISH            K
         ISSFISHKISSFISHK                

स्रोत

हो जाता है

     H
      K S
       I H I
      F S K S
 S     I S I H S
  S I   S F S K F
   F S   H I S   I
  H I H   K S     S F
   K S K S I H     H I
    I H I S S K   I K S
   H S K S F S I F S I H
    K S I S I F S I S S K
     I F S F S I S S F S I
      S I S I H S F H I F S
     S S S F S K H I K S I S
      F F H I H I K S I H S F
       I I K S K S I H S K H I
      I S S I H I S S K S I K S
       S H H S K S F S I F S I H
        S K K S I S I F S I S S K
         F I I F S F S I S S F S I
          I S S I S I H S F H I F S
           S S S S F S K H I K S I
            H F F H I H I K S I H S
             K I I K S K S I H S K H
              I S S I H I S S K S I
               S H H S K S F S I F S
                S K K S I S I F S I S
                 F I I F S F S I S S
                  I S S I S I H S F S
                   S S S S F S K H I
                    H F F H I H I K S
                     K I I K S K S I H
                        S S I H I S S
                         H H S K S F S
                            K S I S I
                                 S F S
                                      H F K F F F
                                       K I I I I
                                      I I S S S
                                       S S H S
                                      S H S K
                                       F K F
                                      F I I
                                       I S
                                      I S
                                       S
                                      K

      _,,ddF"""Ybb,,_      
    ,d@#@#@#@g,   `"Yb,    
  ,d#@#V``V@#@#b      "b,  
 d@#@#I    I@#@8        "b 
d@#@#@#A..A@#@#P         `b
8#@#@#@#@#@#@8"           8
8@#@#@#@#@#@J             8
8#@#@#@#@#P               8
Y@#@#@#@#P    ,db,       ,P
 Y@#@#@#@)    @DWB      aP 
  "Y#@#@#b    `69'    aP"  
    "Y@#@#g,,     _,dP"    
      `""YBBgggddP""'       

स्रोत

हो जाता है

     d d ,
    8 @ @ d ,
   8 # # # # d _
  8 @ @ @ @ @ @ ,
 Y # # # # # # # ,
  @ @ @ @ @ I V @ d
 Y # # # # #   ` # d
  @ @ @ @ @ A   ` @ F
 " # # # # # .   V # "
  Y @ @ @ @ @ .   @ @ "
   # # # # # # A I # g "
  " @ @ @ @ @ @ @ @ @ , Y
   Y # # # # # # # # #   b
    @ @ @ P P @ @ @ @ b   b
   ` # # )     J 8 # 8     ,
    " @ b         " P     ` ,
     " #                   " _
      Y g                   Y
       B ,     ,             b
        B ,   @ d             ,
         g   ` D b           "
          g   6 W ,           b
           g   9 B             ,
            d   '             "
             d                 b
              P _             `
               " ,             b
                " d           8
                 ' P a       8
                    " P a , 8
                       " P P

                             ...,?77??!~~~~!???77?<~....
                        ..?7`                           `7!..
                    .,=`          ..~7^`   I                  ?1.
       ........  ..^            ?`  ..?7!1 .               ...??7
      .        .7`        .,777.. .I.    . .!          .,7!
      ..     .?         .^      .l   ?i. . .`       .,^
       b    .!        .= .?7???7~.     .>r .      .=
       .,.?4         , .^         1        `     4...
        J   ^         ,            5       `         ?<.
       .%.7;         .`     .,     .;                   .=.
       .+^ .,       .%      MML     F       .,             ?,
        P   ,,      J      .MMN     F        6               4.
        l    d,    ,       .MMM!   .t        ..               ,,
        ,    JMa..`         MMM`   .         .!                .;
         r   .M#            .M#   .%  .      .~                 .,
       dMMMNJ..!                 .P7!  .>    .         .         ,,
       .WMMMMMm  ?^..       ..,?! ..    ..   ,  Z7`        `?^..  ,,
          ?THB3       ?77?!        .Yr  .   .!   ?,              ?^C
            ?,                   .,^.` .%  .^      5.
              7,          .....?7     .^  ,`        ?.
                `<.                 .= .`'           1
                ....dn... ... ...,7..J=!7,           .,
             ..=     G.,7  ..,o..  .?    J.           F
           .J.  .^ ,,,t  ,^        ?^.  .^  `?~.      F
          r %J. $    5r J             ,r.1      .=.  .%
          r .77=?4.    ``,     l ., 1  .. <.       4.,
          .$..    .X..   .n..  ., J. r .`  J.       `'
        .?`  .5        `` .%   .% .' L.'    t
        ,. ..1JL          .,   J .$.?`      .
                1.          .=` ` .J7??7<.. .;
                 JS..    ..^      L        7.:
                   `> ..       J.  4.
                    +   r `t   r ~=..G.
                    =   $  ,.  J
                    2   r   t  .;
              .,7!  r   t`7~..  j..
              j   7~L...$=.?7r   r ;?1.
               8.      .=    j ..,^   ..
              r        G              .
            .,7,        j,           .>=.
         .J??,  `T....... %             ..
      ..^     <.  ~.    ,.             .D
    .?`        1   L     .7.........?Ti..l
   ,`           L  .    .%    .`!       `j,
 .^             .  ..   .`   .^  .?7!?7+. 1
.`              .  .`..`7.  .^  ,`      .i.;
.7<..........~<<3?7!`    4. r  `          G%
                          J.` .!           %
                            JiJ           .`
                              .1.         J
                                 ?1.     .'
                                     7<..%

स्रोत

हो जाता है

                                                      . .
                                                     .   .
                                                      .   .
                                                     b     .
                                                    .       .
                                                     ,       .
                                                  . J .       .
                                                 . %   ?       .
                                                  + .   4 . .
                                                 P ^ 7     ! ? .
                                                l     ; ^       7 .
                                               ,     .           ` .
                                            d         ,             ^ .
                                           . M r     ,                 ,
                                            W M       ,                 =
                                             M M     d                   ` .
                                              M N   J ,                     .
                                             ? M J . M                       ?
                                              T M . M a           , .         7
                                               H M . # .             = .       ` .
                                              ? B m !   .     . . , .   ^ .       .
                                               , 3       ` , J % `   ^ .   ,       .
                                                                        ?   7       ,
                                               7     ?                   7   7       ?
                                      r .       ,     ^                   ?   7       7
                                 .   r   J .           .                   ?   . ?     7
                                , ? .   % . .   `       .                   ?   . ` .   ?
                                 . ` $ . J   = . <                     .     7 .     .   ?
                                      . 7 .     . .                 . M ,     ~ l .   ~   !
                                   .   . 7   .   .       ?         . M M       .   I . 7   ~
                                    . .   = $ ^   .       7         M M L           . . ^   ~
                                     1 5   ?       d       7       M M N       1       ? `   ~
                                      J     4   ,   n       ?     . M M             ?   7     ~
                                       L     .   , G .       !     M M !       5     i   !     !
                                            .     , . .         .   # `       .       .   1     ?
       . .                             1     X   5 t , .   .     .             ;     .   .   I   ?
      . ` ^ , .                         .     .   r   7     .     ,           F       > .   .     ?
       7     ` ? .                     J       .         .   .     ?       . F         r   .       7
        <       ` .                     S         ` J ,   .   .     ! . . . t             . !       7
         .         ^ .         .         .         `   ^ . .   .       P %               . `         ?
          .           J       j ,       ` .     `   ,     .     ?     . 7               `             <
           .           ? .       7       >       ` .       , .   7 .   . !             `               ~
            .           ? , r 8   !     +           n       o .     , .     .                           .
             .           , 7   .       =   .       . .       . .     ^ Y                                 .
              .             ,     7   2     .     . % .       . ,     . r   .         .                   .
               .         <         ~ r         .   ,             7     `     >         ,                   .
                .         . `       L       r   .         l       . .       .         6       4 .
                 .       1   T       .     $     ^ .     .       . . = . . . .       .         . = .       `
                  .           .       .   r   `     =   . , .   ? ? J   ^ %         . .         .   ,       7
                   ~     L   ~ .       . t     t     ` J %   ,   ^   = .           . !           .   ^ .     !
                    <   .     . .     . $ `   ,             J     .   ! `         . ~                   ,     .
                     < .     L   .   G = = 7   .       ` . . . 1       7 ' , . . ,               ?       7     .
                      3     .     .       . ~ t     J     $ '     ,     ,   ` ^ !                 <       ! .
                       ?   .       . j     ? .     r .   . .   r   r . J                           .         .
                        7 . .       . ,     7 .   J     L J ? L   . . ^ .           Z                         . ?
                         ! `       ,         r   .   ~     7 ` . . . 1               7             .           ? 1
                          ` .       . %     j     ;   = 4   ?   ' `                 ? `             =           ? .
                             .   . .             j     . .   ?       <   `           ,               .           7
                              ` . % 7         .   .     .     7       .   ?
                               7 `   .         . r .     G     <     J     ~         5               ?
                                .     .         ,         .     .     .     .         .     .         ,
                               4       .         ^ ;             .   t               ?
                                .       .           ?               .       .         .               4
                               J   . . . .           1           7 .         =       1                 .
                                . r ^ ^ ` .           .           . ;         .     .                 ,
                                 `       ! .         .             :                 ,         `       ,
                                J           .     . . .                       4     F           ?     .
                                 i . ` , .   .     >                           . . F             ^     ;
                                  J !   ` ?   ?     =                         ` , %               .   .
                                 .         7   T     .                         '                   .   ,
                                  1         !   i . .                                                 ,
                                   .         ?   . D .                                                 ,
                                              7   .                                                 ? ,
                                   ?           + ` l                                                 ^ ,
                                    1           . j                                                   C
                                     .         .   ,
                                                i 1
                                                 .
                                      7         G ;
                                       <         %
                                        .     . %
                                         . . J `
                                          % '

नियम और नोट्स

  • इनपुट और आउटपुट किसी भी सुविधाजनक प्रारूप और वर्ण एन्कोडिंग में हो सकते हैं जब तक कि यह सभी मुद्रण योग्य ASCII वर्णों का समर्थन करता है (U + 0020 - U + 007E, LF)
  • आप मान सकते हैं कि इनपुट में केवल मुद्रण योग्य ASCII वर्ण हैं (ऊपर परिभाषित)
  • आपको वर्णों तक कला का समर्थन करना चाहिए ।100×100
  • आप मान सकते हैं कि इनपुट सही-गद्देदार है, जैसा कि पात्रों का एक सही आयताकार ग्रिड है।
    • यदि यह आपको उपयुक्त बनाता है, तो आप यह मान सकते हैं कि इनपुट बराबर है100×100 वर्णों का है।
  • संरेखित करें और वर्ण वर्णों के लिए ASCII स्थान का उपयोग करें।
  • जब तक परिणाम ठीक से संरेखित नहीं किया जाता है, तब तक वर्ण किसी भी दिशा में अतिव्यापी (या अंडरपैडेड) हो सकते हैं।

हैप्पी गोल्फिंग!


5
गरीब सोनिक, वह बस डी जीना चाहता था:
बेंजामिन अर्कहार्ट

आप पूर्ण-चौड़ाई वाले वर्णों का उपयोग करना चाह सकते हैं ताकि घूमने के बाद भी एक वर्ग ग्रिड पर काफी चौकोर आकार प्रदर्शित हो? , पूर्ण-चौड़ाई वाले वर्णों को आधी-चौड़ाई वाले वर्णों में
बदलना


@ शैगी मैं सिर्फ संबंधित कहूंगा, लेकिन हां, यह सुनिश्चित करने के लिए बहुत सारी समानताएं हैं। एकमात्र पर्याप्त अंतर यह है कि इस चुनौती के लिए आउटपुट में स्पेस पैडिंग की आवश्यकता होती है। अन्य खबरों में, आप प्रभावशाली तरीके से डुप्स ढूंढ रहे हैं।
बीफ़स्टर

अगर यह सच था, तो मुझे वह चुनौती मिल गई थी जबकि यह अभी भी Sanbox में था! मैं पूरी तरह से दुर्घटना से लड़खड़ा गया था, जबकि मेरे पास एक चुनौती विचार की एक डुप्लिकेट खोज रहा था और तुरंत आपकी याद आ गई।
झबरा

जवाबों:


18

चारकोल , 2 बाइट्स

↘A

इसे ऑनलाइन आज़माएं! लिंक कोड के वर्बोज़ संस्करण के लिए है। इनपुट को एकल न्यूलाइन-सीमांकित स्ट्रिंग शाब्दिक या स्ट्रिंग्स की एक सरणी के रूप में लेता है। स्पष्टीकरण: इनपुट पढ़ता है और इसे वांछित विकर्ण दिशा में आउटपुट करता है। संस्करण जो STDIN से लाइनों की एक खाली-लाइन समाप्त सूची को स्वीकार करता है:

WS⊞υι↘υ

इसे ऑनलाइन आज़माएं! लिंक कोड के वर्बोज़ संस्करण के लिए है।


वाह। नौकरी के लिए सही उपकरण।
संयोजक 22

10

कैनवस , 6 बाइट्स

/⤢ *\⤢

यहाँ कोशिश करो!

/        pad each line with one less space than the previous
 ⤢       transpose the object
   *     place a space between every character
    \    pad each line with one more space than the previous
     ⤢   transpose the object back

उदाहरण:

123
456
789
/:
  123
 456
789
⤢:
  7
 48
159
26 
3  
 *:
    7
  4 8
1 5 9
2 6  
3    
\:
    7    
   4 8   
  1 5 9  
   2 6   
    3    
⤢:


  1  
 4 2 
7 5 3
 8 6 
  9  



क्या आपका कोड और स्पष्टीकरण अलग-अलग स्लैश का उपयोग नहीं कर रहे हैं?
आडंबर

@ Adám मैं आमतौर पर ASCII-fy स्पष्टीकरण के लिए उन्हें बेहतर संरेखित करने के लिए
dzima

6

पायथन 3.8 (पूर्व-रिलीज़) , 104 बाइट्स

lambda a:[" "*abs(l+~i)+" ".join(a[i-j][j]for j in range(i+1)if j<l>i-j)for i in range((l:=len(a))*2-1)]

इसे ऑनलाइन आज़माएं!

-5 बाइट्स ओव्स के लिए धन्यवाद (पायथन 3.8 चीजें)


1
पाइथन 3.8 में 5 बाइट्स कम
ओवीस

@ovs प्रतीक्षारत 3.8 बाहर है? : ओ इनलाइन असाइनमेंट। यह मुझे पंसद है। धन्यवाद!
हायपरनीट्रीनो


1

05AB1E , 18 12 बाइट्स

RāRú€Sζðýāú»

पोर्ट ऑफ @dzaima कैनवस का जवाब है , इसलिए उसे उभारना सुनिश्चित करें !!

लाइनों की एक सूची के रूप में इनपुट।

इसे ऑनलाइन आज़माएं।

स्पष्टीकरण:

R             # Reverse the (implicit) input-list
 ā            # Push a list in the range [1, length of input-list],
              # without popping the list itself
  R           # Reverse this list to [length, 1]
   ú          # Pad the reversed input-list with that many leading spaces
    S        # Split each string on spaces
      ζ       # Zip/transpose; swapping rows/columns, with space default as filler
       ðý     # Join each inner character-list by spaces
         ā    # Push a list in the range [1, length of this string-list],
              # without popping the list itself
          ú   # Pad the list of strings with that many leading spaces
           »  # Join the string-list by newlines (and output the result implicitly)

मूल 18 17 बाइट्स उत्तर:

g2IεNFR]JŽE5SΛ

लाइनों की एक सूची के रूप में इनपुट।

इसे ऑनलाइन आज़माएं।

स्पष्टीकरण:

g     # Get the length of each line of the (implicit) input
       # (assumes they are all padded with spaces to make them of equal length)
  2.ý  # Intersperse this list with 2 (i.e. [3,3,3] becomes [3,2,3,2,3])
Iε     # Map the strings in the input to:
  NF   #  Loop the 0-based index amount of times:
    R  #   And reverse the current string that many times
 ]J    # After the loop and map: join the strings to a single string
ŽE5S   # Push compressed integer 3575, converted to a list of digits: [3,5,7,5]
Λ      # Use the canvas with these three options (which is output immediately by default)

मेरा 05AB1E टिप देखें (यह समझने के लिए कि बड़े पूर्णांक को संपीड़ित कैसे करें? ) क्यों ŽE5है 3575

05AB1E कैनवस बिलिन के बारे में कुछ और जानकारी इस टिप में मिल सकती है।

कैनवस बिलिन में तीन पैरामीटर होते हैं:

  • सी[0,7]+×8

इस चुनौती में मैं निम्नलिखित विकल्पों का उपयोग करता हूं:

सी[3,5,7,5][,,↖↙]

     S
      
   ↙↖   
        
↙↖      ↖↙
     
  .   
    .

372521




0

जावास्क्रिप्ट (ईएस 6), 102 बाइट्स

f=
s=>(z=[...Array(100)],o=z.map(v=>z.map(_=>" ")),s.map((r,y)=>r.map((c,x)=>o[y+x][s.length+~y+x]=c)),o)

इसे ऑनलाइन आज़माएं!

इनपुट और आउटपुट सूची की सूची के रूप में।

स्पष्टीकरण:

एक 100x100 ग्रिड के रिक्त स्थान बनाता है। फिर इनपुट के माध्यम से छोरों, ग्रिड में उचित प्रविष्टि की स्थापना। सेट करने के लिए वर्ण का सूचकांक के रूप में x' = length of input - 1 + y + xऔर गणना की जाती है y' = y + x

लौटा परिणाम 100x100 सूचियों की सूची है, ऊपरी बाएं कोने में आउटपुट के साथ।



0

सी # (विज़ुअल सी # इंटरएक्टिव कंपाइलर) , 153 बाइट्स

z=>{var m=new char[100,100];var s=z.Split('\n');var l=s[0].Length;for(int x=0;x<l-1;x++)for(int y=0;y<s.GetLength(0);y++)m[x+y,l+~y+x]=s[y][x];return m;}

इसे ऑनलाइन आज़माएं!

एक स्ट्रिंग के लिए पूछता है और एक 2 डी चार 100 x 100 सरणी देता है।

मैंने LINQ / कलेक्शंस का उपयोग करने की कोशिश की, लेकिन मैंने अंततः हार मान ली।


0

वोल्फ्राम लैंग्वेज (मैथमेटिका) , 79 बाइट्स

SparseArray[100+{#2+#,#2-#}&@@#&/@Range@100~Tuples~2->Flatten@#,{301,301}," "]&

इसे ऑनलाइन आज़माएं!

इनपुट को 100x100 के बराबर होना चाहिए। आउटपुट 301x301 का एक सरणी है। घूर्णन ध्वनि (उचित स्वरूपण के साथ) का परिणाम:

ध्वनि परिणाम

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.