ঘুমাতে ছাগল গণনা


36

কিছু লোক ঘুম পেতে ভেড়া গণনা করে। অন্যরা ছাগল গণনা করে।

এমন একটি প্রোগ্রাম বা ফাংশন লিখুন যা ইতিবাচক পূর্ণসংখ্যার এন নেবে এবং এন -1 জাগ্রত ছাগলকে একটি ঘুমন্ত ছাগলকে অনুসরণ করবে, যেন কেউ এন ছাগল গণনা করছে এবং শেষের দিকে তারা ঘুমিয়ে পড়েছে।

জাগ্রত ছাগলগুলি দেখতে এইরকম:

      \
  ___/o>
-(___)"
 '' ''

ঘুমন্ত ছাগলগুলি দেখতে দেখতে:

      \
  ___/->
,(___)"
 `` ``

এগুলি দাড়ি এবং সংলগ্ন ছাগলের লেজের মধ্যে একক স্থানের সাথে এক সাথে বেঁধে রাখা হয়:

      \       \       \
  ___/o>  ___/o>  ___/->
-(___)" -(___)" ,(___)"
 '' ''   '' ''   `` ``

আউটপুটটিতে ট্রেলিং স্পেস এবং একক ট্রেলিং নিউলাইন থাকার অনুমতি রয়েছে।

বাইটের মধ্যে সংক্ষিপ্ততম কোডটি জয়ী।

উদাহরণ

এন = 1:

      \
  ___/->
,(___)"
 `` ``

এন = 2:

      \       \
  ___/o>  ___/->
-(___)" ,(___)"
 '' ''   `` ``

এন = 3:

      \       \       \
  ___/o>  ___/o>  ___/->
-(___)" -(___)" ,(___)"
 '' ''   '' ''   `` ``

এন = 4:

      \       \       \       \
  ___/o>  ___/o>  ___/o>  ___/->
-(___)" -(___)" -(___)" ,(___)"
 '' ''   '' ''   '' ''   `` ``

বৃহত্তর এন পাশাপাশি কাজ করা উচিত।


9
আমি মনে করি যে আপনার "ছাগল" আরও 4 ফুট ক্রুদ্ধ পাখির মতো দেখতে ;-)
ডিজিটাল ট্রমা

4
আমি কিছুটা ছাগলকে অন্যভাবে না দেখে গণনা করার আশায় ছিলাম
বিটা ডেকে

1
আমি জানি মনে হয় যারা ঘুমাতে ছাগল বড়, মোট ছাত্র
লুইস Mendo

7
আমি মনে করি না আপনি "ছিনতাই" ছাগলকে ঘুমাতে গণনা করতে পারবেন না যদি না "ব্লিফিট" আপনাকে নিদ্রাহীন করে তোলে: P +1 দুর্দান্ত চ্যালেঞ্জ
ডাউনওয়েট

1
চিত্কার করে ছাগল গণনা করে সাইকোপ্যাথরা ঘুমিয়ে পড়ে।
mbomb007

উত্তর:


30

এমএটিএল , 56 53 বাইট

:"'!!((!((!!#*```).?p0```!!!]'8eP!P]'p(.' '.a-'XE&hqc

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

ব্যাখ্যা

জাগ্রত ছাগল

জাগ্রত ছাগলটি স্ট্রিংয়ে প্যাক করা যায়

  '' ''  ")___(->o/___   \

এবং শীঘ্রই ব্যাখ্যা করা হবে হিসাবে আনপ্যাক করা। তবে এগুলি থেকে বাঁচার জন্য একক-উদ্ধৃতি চিহ্নগুলি নকল করা দরকার , সুতরাং স্ট্রিং আক্ষরিক হিসাবে সংজ্ঞায়িত করতে হবে (সংলগ্ন একক-উদ্ধৃতি চিহ্ন এবং মূল চিহ্নগুলির সদৃশ):

'  '''' ''''  ")___(->o/___   \'

বাইটগুলি সংরক্ষণ করতে, আমরা এরপরে একটি কোড পয়েন্ট ব্যবহার করে স্ট্রিংটি সংজ্ঞায়িত করি, যাতে ডুপ্লিকেশন এড়ানো হয়। স্ট্রিং আক্ষরিক হয়

'!!((!((!!#*```).?p0```!!!]'

কোডের শেষে আমরা 1 টি বিয়োগ করে চরে রূপান্তর করব। (স্ট্রিং আক্ষরিকের ঠিক পরে আমরা এখনই এটি করতে পারি; তবে শেষের দিকে রেখে দিলে অন্য একক-উদ্ধৃতি সদৃশতা সাশ্রয় হবে, যেমন আমরা দেখব)

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

  '' ''  ")___(->o/___   \

একটি 8-সারি 2D চর অ্যারে, কলাম-প্রধান ক্রমে (নীচে, তারপরে) এটি স্বয়ংক্রিয়ভাবে চার্ট 0 দিয়ে শেষ কলামটি প্যাড করে (কোড শেষে 1 বিয়োগ করে এটি −1 সংখ্যায় রূপান্তরিত হবে, যা চরে রূপান্তরিত হয়ে আবার চর 0 দেয়)। চর 0 একটি স্থান হিসাবে প্রদর্শিত হয়। সুতরাং কার্যকরভাবে আমরা স্পেস দিয়ে প্যাডিং করছি। পুনর্নির্মাণের ফলাফল

  > 
 "o\
')/ 
'__ 
 __ 
'__ 
'(  
 -  

আমরা এখন উল্লম্বভাবে উল্টাতে:

 -  
'(  
'__ 
 __ 
'__ 
')/ 
 "o\
  > 

এবং তারপরে জাগ্রত ছাগল তৈরির জন্য পুনরায় স্থানান্তরিত করে উল্লম্বভাবে উল্টাতে:

      \ 
  ___/o>
-(___)" 
 '' ''  

দুটি ফ্লিপ অপারেশন প্রয়োজন কারণ মূল প্যাক করা স্ট্রিং "বিপরীতে"। এটি ছাগলকে উপস্থাপন করে এমন প্রকৃত 2D চর অ্যারেটির প্রথম সারিতে 6 টি প্রাথমিক স্পেস রয়েছে, যা স্ট্রিংটি 8-সারি 2 ডি অ্যারে রূপান্তরিত হওয়ার পরে স্বয়ংক্রিয়ভাবে প্যাডিংয়ের মাধ্যমে পূরণ হবে the তবে প্যাডিংটি শেষ কলামের শেষ দিকে (শুরু নয়) করা হয় (সারি নয়), সুতরাং ফ্লিপস এবং ট্রান্সপোজ।

ঘুমন্ত ছাগল

একটি স্লিপিং ছাগল transliterating অক্ষর দ্বারা একটি জাগ্রত ছাগল থেকে জেনারেট হওয়া o, ', -মধ্যে -, `, ,যথাক্রমে। আসলে, এক-কোড দফা-উপরে রূপান্তরের কারণ, আমরা অক্ষর ভিন্ন বর্ণমালায় p, (, 'মধ্যে ., a, -, আবার আমাদের একক উদ্ধৃতি চিহ্ন সদৃশ করা থেকে রক্ষা করে থাকে। এই কারণেই প্রোগ্রামটির শেষের জন্য বিয়োগফল অপারেশনটি বাকি ছিল।

কোড কাঠামো

  1. Nকোড পয়েন্টের সাথে কাজ করে একটি জাগ্রত ছাগলের সময় তৈরি করুন 1 টি বৃদ্ধি পেয়েছে।
  2. শেষ ছাগলকে ঘুমন্ত ছাগলে রূপান্তর করুন।
  3. সমস্ত ছাগলকে অনুভূমিকভাবে সংযুক্ত করুন। কোড পয়েন্টগুলিতে 1 কে বিয়োগ করুন এবং চরে কাস্ট করুন।

মন্তব্য করা কোড

:                              % (Step 1) Implicitly input N. Push range [1 2 ... N]
"                              % For each (i.e. repeat N times)
  '!!((!((!!#*```).?p0```!!!]' %   Push this string. Quotes are escaped by duplicating
  8e                           %   Reshape into an 8-row 2D array of char, in
                               %   column-major order, padding last column with
                               %   char 0
  P                            %   Flip vertically
  !P                           %   Transpose and flip vertically
]                              % End
'p(.'                          % (Step 2) Push this string: source for transliteration
'.a-'                          % Push this string: target for transliteration
XE                             % Transliterate. Transforms last goat into sleeping
&h                             % (Step 3) Horizontally concat all 2D char arrays
qc                             % Subtract 1 and convert to char. 0 becomes −1, which
                               % is converted to char 0, which is displayed as a space
                               % Implicitly display 

8
এটি কিছু গুরুতর ছাগল তত্ত্ব;)
কনর ও'ব্রায়েন

17

পাইথন 3.6, 102 বাইট

lambda n:f'''{'      \ '*n}
{'  ___/o>'*~-n}  ___/->
{'-(___)" '*~-n},(___)"
{" '' ''  "*~-n} `` ``'''

ইয়া, এফ-স্ট্রিংস !

            __________________________
           /
          | এই উত্তরটি বাআআআআআআআডি। |
      \ / ___________________________ /
  ___ / o> '  
- (___) " 
 '' ''  

13

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

উত্তর

f=(n,r='repeat')=>'      \\ '[r](n--)+`
${'  ___/o>'[r](n)}  ___/->
${'-(___)" '[r](n)},(___)"
`+` '' ''  `[r](n)+' `` ``'

পার্শ্ব দ্রষ্টব্য
নিম্নলিখিত কোডে (91 বাইট) ছাগলগুলি উল্লম্বভাবে সাজানো আছে। এটি আউটপুট বিন্যাসের সাথে সম্মতি দেয় না তবে আমি আকর্ষণীয় হতে পারি যে আউটপুট বিন্যাসে অনুভূমিক প্রান্তিককরণের জন্য আরও বাইট প্রয়োজন:

f=n=>`
      \\
  ___/${--n?'o':'-'}>
${n?'-':','}(___)"
 ${n?'`` ``':`'' ''`}`+(n?f(n):'')

3
উল্লম্ব জমা কেন অন্তর্ভুক্ত করবেন? চ্যালেঞ্জটি অনুভূমিক প্রান্তিককরণের জন্য জিজ্ঞাসা করে।
মেগো

5
@ মেগো আরও কত গল্ফযোগ্য হতে পারে তা দেখানোর ক্ষেত্রে কী ভুল?
নীল

2
@ নীল কারণ এটি চ্যালেঞ্জের সম্পূর্ণরূপে স্পর্শকাতর।
মেগো

9
@ মেগো আমি মনে করি এটি নোট করা আকর্ষণীয়।
কনর ও'ব্রায়েন

3
@ মেগো আমি ভেবেছিলাম এটি আকর্ষণীয় হতে পারে। উল্লম্ব সারিবদ্ধকরণ কোনও বৈধ উত্তর নয় এমনটি আরও স্পষ্ট করে তুলতে আমি পোস্টটি সম্পাদনা করেছি।
হেডি

4

ব্যাচ, 234 বাইট

@echo off
set/pn=
call:l "      \ " "      \"
call:l "  ___/o]" "  ___/-]"
call:l "-(___)@ " ",(___)@"
call:l " '' ''  " " `` ``"
exit/b
:l
set s=%~2
for /l %%i in (2,1,%n%)do call set s=%~1%%s%%
set s=%s:@="%
echo %s:]=^>%

স্টিডিন থেকে ইনপুট নেয়। ব্যাচটিতে বিভিন্ন কারণে সমস্যা রয়েছে "এবং >তাই আমাকে স্থানধারকগুলি ব্যবহার করতে হবে এবং তারপরে এগুলি স্যুইচ করতে হবে।


আমার কোন ধারণা set/pnকাজ করে না ._।
কনর ও'ব্রায়েন

^অক্ষর পালাতে।
ক্রি

@ ক্রি আমার যখন প্রয়োজন তখন কাজ করে না।
নীল


3

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

f=
n=>`      \\       \\
  ___/o>  ___/->
-(___)" ,(___)"
 '' ''   `.replace(/^.{8}/gm,"$&".repeat(n-1))+"`` ``"
;
<input type=number min=1 oninput=o.textContent=f(this.value)><pre id=o>

তিনটি ধরণের উদ্ধৃতি চরিত্রকে সমর্থন করা বিরক্তিকর ছিল, তবে ভাগ্যক্রমে @ পিঙ্কফ্লয়েডএক্স 33 এর মন্তব্য আমাকে অনুপ্রেরণার ঝলক দিয়েছে যে আমি শেষদিকে ব্যাককোটগুলি যুক্ত করতে পারব ফলে এইভাবে আমাকে 1 বাইট সংরক্ষণ করা সম্ভব।


মাঝখানে কোট টাইপের স্যুইচ করে এবং দুটি স্ট্রিং কনটেটেট করে আপনি কী একটি বাইট সংরক্ষণ করতে পারবেন '+"'' ''"(একক উদ্ধৃতি ব্যাক টিকগুলি মনে করুন যেহেতু মন্তব্যে কোনও কোড ব্লকে ব্যাকটিক কীভাবে পাবেন তা আমি ধারণা করি না)
পিঙ্কফ্লয়েডএক্স 33

@ পিঙ্কফ্লয়েডএক্স 33 আমি ভেবেছিলাম আমি ইতিমধ্যে এটি চেষ্টা করেছি তবে আমি বুঝতে পেরেছিলাম যে আমি সেই ব্যাক টিকগুলি শেষের দিকে যুক্ত করতে পারি যা আমাকে একটি বাইট বাঁচায়। একটি মন্তব্য কোড ব্লকে ব্যাক টিক পেতে কেবল ব্যাকস্ল্যাশ দিয়ে এটি উপসর্গ করুন।
নীল

আপনি সেমিকোলনটি সরিয়ে ফেলতে পারেন
হাওডেরেক

1
@ হাউডেরেক আমি এটিকে বা f=আমার বাইট গণনায় অন্তর্ভুক্ত করি নি , এটি সম্পূর্ণতার জন্য রয়েছে।
নীল

3

গল্ফস্ক্রিপ্ট , 91 বাইট

~:a 1-:b;"      \\ "a*n"  ___/o>"b*"  ___/->"n"-(___)\" "b*",(___)\""n" '' ''  "b*" `` ``"n

ইনপুট: 3

আউটপুট:

      \       \       \ 
  ___/o>  ___/o>  ___/->
-(___)" -(___)" ,(___)"
 '' ''   '' ''   `` ``

ব্যাখ্যা

~:a 1-:b;      # Parse and save the input
"      \\ "a*n # Repeat the first line 'a' times
"  ___/o>"b*   # Repeat the head 'b' times
"  ___/->"n    # Then add the sleeping goat's head
"-(___)\" "b*  # Idem
",(___)\""n    #
" '' ''  "b*   # Idem
" `` ``"n      #

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


5
প্রায় ছাগলস্ক্রিপ্ট হিসাবে অপ্রকাশিত
ক্যালভিনের

3

জেলি , 62 56 বাইট

⁶ẋ6;“\   ___/o>-(___)"  '' ''  ”s8
¢“-,o-'`”yЀ
’1£ẋ€ż¢Y

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

কিভাবে?

⁶ẋ6;“\   ___/o>-(___)"  '' ''  ”s8 - Link 1: make a goat, niladic
⁶ẋ6                                - space character, ⁶, repeated 6 times
    “\   ___/o>-(___)"  '' ''  ”   - rest of the awake goat text
   ;                               - concatenate
                                s8 - split into length 8 parts

¢“-,o-'`”yЀ - Link 2: put a goat to sleep, niladic
¢            - last link (make a goat)
 “-,o-'`”    - characters to remap
         yЀ - map for each (change "-" into ",", "o" into "-", and "-" into "`"

’1£ẋ€ż¢Y - Main link: n
’        - decrement (nAwakeGoats)
 1£      - call link 1 as a nilad (make an awake goat)
   ẋ€    - repeat nAwakeGoats times
      ¢  - last link (make a sleeping goat)
     ż   - zip
       Y - join with line feeds
         - implicit print

1

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

$a=["      \ ","  ___/o>",'-(___)" '," '' ''  "," `` ``  "];$z=8*$n=$argv[1];for($i=0;$i<4;)$o.=str_repeat($a[$i],$i++==3?$n-1:$n);$o[$z*2-2]="-";$o[$z*3-8]=",";$o.=$a[4];echo chunk_split($o,$z,"\n");

1
আপনি খুব পরিষ্কার কোডিং করছেন, জর্জ। আমি 11 পদক্ষেপে 32 বাইট বন্ধ গল্ফ পারে। ইঙ্গিত চান?
তিতাস

ধন্যবাদ আমি চাই যে কোনওভাবেই এই চ্যালেঞ্জটি সমাধান করা। কখনও কখনও পরিষ্কার একটি ভুল সমাধান তারপর। আপনি আপনার উপায় পেস্ট করতে পারেন।
জার্গ হালসারম্যান

আমি একটি ভিন্ন পদ্ধতির গ্রহণ; তবে আপনি যদি আপনার জন্য টিপস চান তবে কেবল জিজ্ঞাসা করুন। প্রথম 5 ধাপে 24 বাইট।
তিতাস

@ জার্গহলসারম্যান অন্য জনের উত্তরগুলি সংশোধন করা এই সাইটটিতে খুব ভারাক্রান্ত বলে মনে হচ্ছে।
কারসিজেনেট

@ কারসিজেনিকেট আপনি কি বোঝাতে চেয়েছিলেন আমার অন্য লোকের কাছ থেকে উত্তরগুলি পরিবর্তন করা উচিত বা ভাইরাসগুলি? আমি যদি এই ক্ষেত্রে কেবল আকর্ষণীয় হয়ে থাকি তবে পরিষ্কার সমস্যার সমাধান করার জন্য আমার আরও ঝোঁক থাকে। Ascii আর্ট সাধারণত আমার অগ্রাধিকার নয়
Jörg Hülsermann

1

সি ++, 180 বাইট

auto f(int n)
{
string a,b,c,d;
while(n--)
{
a+="      \\ ";
b+="  ___/";b+=n?"o>":"->\n";
c+=n?"-(___)\" ":",(___)\" \n";
d+=n?R"( '' ''  )":" `` ``  \n";
}
return a+'\n'+b+c+d;
}

2
পিপিসিজিতে আপনাকে স্বাগতম! দয়া করে একটি লাইনের সংস্করণ অন্তর্ভুক্ত করুন যাতে আপনি এটির প্রকৃতপক্ষে গণনা করতে পারেন। আপনি সর্বদা পৃথকভাবে একটি পঠনযোগ্য সংস্করণ অন্তর্ভুক্ত করতে পারেন যাতে লোকেরা ওয়ান-লাইনার পড়তে হয় না। :)
মার্টিন এন্ডার

মার্টিন, লিঙ্কটির জন্য ধন্যবাদ। আমি প্রথমে ফাইলের আকার দ্বারা আকারটি পরিমাপ করেছি এবং এখন আমি এটি ঠিক করেছি।
ইউরি ব্লক

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

ঠিক আছে, আমি ফাইল আকার দ্বারা আকার লিখেছি। এই কোডটি কীভাবে কাজ করে সে সম্পর্কে - পাঠযোগ্য এবং এক লাইনের সংস্করণের মধ্যে কোনও পার্থক্য নেই।
ইউরিরি ব্লক

আপনার ফাংশন সেগুলি ব্যতীত সংকলন করা না গেলে এটি #include <string>এবং না হয় using namespace std;বা using std::string;আপনার বাইট গণনায় অন্তর্ভুক্ত করা বৈধ বলে মনে করি না ।
এইচডিভি

1

পিপ , 60 + 1 = 61 বাইট

nপতাকাটির জন্য একটি বাইট যুক্ত করা হয়েছে ।

YsX6.\"\   ___/o>-(___)"  '' ''  \"<>8yXa-1.YyR^"-o'"Y^",-`"

একটি জাগ্রত ছাগলকে লাইনগুলির তালিকা হিসাবে তৈরি করে এবং এতে প্রবেশ করে ya-1জাগ্রত ছাগলগুলি পেতে স্ট্রিং-গুনগুলি । প্রতিস্থাপন -o'সঙ্গে ,-`মধ্যে yএবং শেষ যোগসূত্র করুন। প্রিন্ট, নিউলাইন-পৃথক।

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

(আমি মনে করি এটি আমার প্রথমবারের মতো পাইপের এস্কেপড স্ট্রিং সিনট্যাক্স ব্যবহার করছে \"...\" , যা আক্ষরিক ডাবল উদ্ধৃতিগুলির মঞ্জুরি দেয়))


1

সিজেম , 58 বাইট

ri{S6*"\   ___/o>,(___)\"  '' ''  "+\{'o`"`-"er}|8/}%W%zN*

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

ব্যাখ্যা

ri                               e# Read an integer from input
{                                e# Map the following block to the range 0..input-1
 S6*                             e#  Push 6 space characters
 "\   ___/o>,(___)\"  '' ''  "+  e#  Push this string and concatenate with the spaces
 \                               e#  Bring the number being mapped to the top
 {                               e#  If it's 0, execute this block:
  'o`                            e#   Push the string "'o"
  "`-"                           e#   Push the string "`-"
  er                             e#   Transliterate the large string by replacing characters
                                 e#    from "'o" with respective characters from "`-"; this
                                 e#    makes the sleeping goat.
 }|                              e#  (end if)
 8/                              e#  Split the string into chunks of length 8
}%                               e# (end map)
W%                               e# Reverse the array, since the sleeping goat was made at 
                                 e#  the beginning
z                                e# Transpose
N*                               e# Join with newlines

1

পাইথন 2.7, 101 113 বাইট

সম্পাদনা: ফাংশন সংজ্ঞা যুক্ত করা হয়েছে

def f(n):
 m=n-1
 print "      \ "*n+"\n"+"  ___/o>"*m+"  ___/->\n"+'-(___)" '*n+"\n"+" '' ''  "*m+" ``"*2

ডি golfified:

m=n-1              # Replacement variable. Saves 6 bytes
"      \ "*n+"\n"+ # Print ears, same for all goats!
"  ___/o>"*m+      # Print eyes of n-1 awake goat
"  ___/->\n"+      # Print eye of sleeping goat
'-(___)" '*m+      # Print body of n-1 awake goat
',(___)"\n'+       # Print body of sleeping goat
+" '' ''  "*m+     # Print the legs of n-1 awake goat
" ``"*2            # Print legs of sleeping goat using *2 operator to save 1 byte

দ্রষ্টব্য পাইথন 2.7 পাইথন 3 এর চেয়ে এক বাইট কম খাটো কারণ এটি মুদ্রণের সময় পেরেন্টেসিসের প্রয়োজন হয় না।


ইনপুট গ্রহণ করা প্রয়োজন n, এবং আপনি ঘুমন্ত ছাগলের জন্য লেজ পরিবর্তন মিস করেছেন (এছাড়াও আপনি পাই 3.6 উত্তরটি দেখেছেন?)।
জোনাথন অ্যালান

নমস্কার! লেজ পরিবর্তন আছে, আপনার যদি ইনপুট হ্যান্ডেল করার প্রয়োজন হয় তা সম্পর্কে নিশ্চিত ছিলেন না। আমার নিজের লেখার পরে পাইথন .6..6 উত্তরটি দেখেছিল। এটি কি ইনপুট প্রাপ্ত করে?
টাইগার

আহ, ঠিক আছে. এটি একটি প্রোগ্রাম বা একটি ফাংশন হওয়া প্রয়োজন। আপাতত খারাপ সমাধান সহ আপডেট হবে :(
টাইগার

হ্যাঁ, ফাংশন বা প্রোগ্রাম, আপনি এটি পেয়েছেন! আপনি স্থানটি সরিয়ে ফেলতে পারেন print "...এবং ;দুটি বিবৃতি পৃথক করতে 1 ব্যবহার করে সমস্ত কিছু এক লাইনে রেখে দিতে পারেন। লেজটি এখনও দেখানো গল্ফড কোডে নেই, তবে দেখে মনে হচ্ছে আপনি এটি গণনা করেছেন, সবকিছুর মধ্যে এটি 112 বাইট করা উচিত
জোনাথন অ্যালান

1

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

’      \ 0  ___/1>02(___)" 0 33 33  ’0¡v123SDys…o-'S:I<×?ys…-,`S:,

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

ব্যাখ্যা

’      \ 0  ___/1>02(___)" 0 33 33  ’0¡v123SDys…o-'S:I<×?ys…-,`S:,   Argument n
’      \ 0  ___/1>02(___)" 0 33 33  ’   The goat, newline replaced by 0 and the eye replaced by 1
0¡                              Split on 0
  v                             For each y in array, do:
   123SD                          Push the array [1,2,3] twice
        ys…o-'S:                  Replace [1,2,3] with ['o','-','\'']
                I<×?              Print that n-1 times without newline
                    ys…-,`S:,     Replace [1,2,3] with ['-',',','`'] and print

0

বাশ + জিএনইউ কোরিটিলস, 165 155 বাইট

a=" \      
>o/___  
 \")___(-
  '' '' "
eval paste -d \'\' $(seq $1|while read;do
printf '<(echo "$a") '
done) | sed "s/-/,/;s/o/-/;s/'' ''/"'`` ``/'|rev

সাথে চালান:

bash my_pgm.bash N

মূলত প্রোগ্রাম কপি করে প্রিন্ট এন একই ছাগল (বিপরীত) এর সময়, এবং পরিপূরক প্রথম -, জন্য ,, প্রথম oজন্য -এবং প্রথম '' ''ব্যাকটিক জন্য। তারপরে লাইনগুলি বিপরীত করে।


0

পিএইচপি, 133 131 বাইট

for(;$y<32;$y+=8)for($x=$argv[1];$x--;)echo substr("      \   ___/".($x?"o>-(___)\"  '' ''  ":"->,(___)\"  `` ``  "),$y,8),"
"[$x];

আমি দুটি বাইট খুঁজে পেয়েছি গল্ফ থেকে কোনও সংস্করণ থেকে কোঁকড়া ছাড়াই।


0

পাওয়ারশেল ভি 2 +, 96 বাইট

param($n)'      \ '*$n--
'  ___/o>'*$n+'  ___/->'
'-(___)" '*$n+',(___)"'
" '' ''  "*$n+' `` ``'

(অব) Write-Outputউপাদানগুলির মধ্যে একটি নতুন লাইন অন্তর্ভুক্ত করতে ডিফল্ট বিন্যাস ব্যবহার করে । লাইনে স্ট্রিং সংমিশ্রণ এবং গুনাগুলি লাইন দ্বারা ছাগল রেখার জন্য তৈরি করুন। একমাত্র আসল কৌশলটি $n--কানের সঠিক সংখ্যা নির্ধারণের জন্য প্রথম লাইন এবং তারপরে হ্রাস-পরবর্তী হ'ল $nএটি বাকি লাইনের জন্য সঠিক।

PS C:\Tools\Scripts\golfing>  1..4|%{.\counting-goats-to-sleep.ps1 $_}
      \ 
  ___/->
,(___)"
 `` ``
      \       \ 
  ___/o>  ___/->
-(___)" ,(___)"
 '' ''   `` ``
      \       \       \ 
  ___/o>  ___/o>  ___/->
-(___)" -(___)" ,(___)"
 '' ''   '' ''   `` ``
      \       \       \       \ 
  ___/o>  ___/o>  ___/o>  ___/->
-(___)" -(___)" -(___)" ,(___)"
 '' ''   '' ''   '' ''   `` ``

0

রুবি, ১০২ বাইট

m=-1+n=gets.to_i
puts'      \ '*n,'  ___/o>'*m+'  ___/->',(?-+a='(___)" ')*m+?,+a," '' ''  "*m+" ``"*2

0

পাইথন 3. 170 বাইট

lambda n:'\n'.join(map(lambda*l:''.join(l),*map(lambda w:(' '*6+'\ ','  ___/'+(w and'o'or'-')+'>',(w and'-'or',')+'(___)" ',w and" '' ''  "or' `` ``  '),range(n)[::-1])))

হুঁ, তালিকা ম্যানিপুলেশন ফলন সংক্ষিপ্ত কোড না করে স্পষ্টতই স্ট্রিংটি তৈরি করছে


0

আইবিএম / লোটাস নোটস সূত্র, 187 174 188 বাইট (প্রতিযোগিতা নয়)

সম্পাদনা একটি জায়গা খুঁজে পেয়েছেন যা সেখানে না থাকা উচিত ছিল এবং একটি অপ্রয়োজনীয় @ ইমপ্ল্লোড অপসারণ করেছে

188 যেহেতু আমি ঘুমন্ত ছাগলের লেজটি পৃথক:

B:=@Repeat("      \\  ";a);C:=@Repeat("     /o> ";a-1)+"     /->";D:=@Repeat("  ---    ";a);E:=@Repeat(",(___)\"  ";a);F:=@Repeat(" `` ``   ";a);@Implode(B:C:D:E:F;@NewLine)

Ungolfed:

B:=@Repeat("      \\  ";a);
C:=@Repeat("     /o> ";a-1)+"     /->";
D:=@Repeat("  ---    ";a);
E:=@Repeat("`(___)\"  ";a-1)+",(___)\"  ";
F:=@Repeat(" `` ``   ";a);
@Implode(B:C:D:E:F;@NewLine)

ব্যবহার:

A এবং g নামের দুটি ক্ষেত্র সহ একটি নোট ফর্ম তৈরি করুন।

a = সম্পাদনাযোগ্য, সংখ্যা, জি = গণনা, পাঠ্য।

উপরের সূত্রটি জি-তে আটকান এবং 0 এর আ ডিফল্ট মান দিন।

টার্মিনালে ফর্ম ফন্ট সেট করুন।

ফর্মটি সহ একটি নতুন নথি তৈরি করুন, একটিতে একটি নম্বর লিখুন এবং ছাগল আপডেট করতে F9 টিপুন।

নমুনা:

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

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

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

ছাগলের সংখ্যা পৃষ্ঠাটির প্রস্থে পৌঁছালে বিন্যাসটি গণ্ডগোলের সাথে প্রতিযোগিতা করছেন না Not

একটি অসীম ওয়াইড স্ক্রীন এটি দেওয়া উচিত ছাগল যে কোন সংখ্যার জন্য কাজ করবে যদিও । পৃষ্ঠাটি পর্যাপ্ত পরিমাণে প্রশস্ত না হলে এটি দেখতে এটির মতো দেখাচ্ছে।

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


কেন এটি প্রতিযোগিতা করছে? প্রতিটি উত্তর যেমন হয়। এটিকে বলা হয় মোড়ক।
mbomb007

@ Mbomb007 স্পষ্টতার জন্য ধন্যবাদ। আমার থেকে আরও ভাল গল্ফারদের অসম্মান না করার চেষ্টা করছিল be আমি এই নতুন। ঠিক আছে এটি প্রতিযোগিতা করে। এটি জিতবে না তবে আমি বাজি ধরেছি যে সূত্রের ভাষা দিয়ে আমাকে মারতে খুব বেশি লোটাস নোটস গল্ফার থাকবে না ☺
এলপেড্রো

সত্যি কথা বলতে, আমি বাজি ধরেছি যে খুব বেশি লোটাস নোটস গল্ফার থাকবে না।
এলপেড্রো

0

ইমাস লিস্প, 241 বাইট

(defvar s'("     \\""  ___/->"",(___)\""" `` ``"))(defun a()(dotimes(n 4 g)(setf(nth n g)(format"%s%s"(nth n'("     \\  ""  ___/o>""-(___)\" "" '' ''  "))(nth n g)))))(defun g(n)(let((g(copy-seq s)))(mapcar'message(dotimes(i(- n 1)g)(a)))))

"কিছুটা অবহেলিত"

(defvar s'("     \\""  ___/->"",(___)\""" `` ``"))
(defun a()(dotimes(n 4 g)(setf(nth n g)(format"%s%s"(nth n'("     \\  ""  ___/o>""-(___)\" "" '' ''  "))(nth n g)))))
(defun g(n)(let((g(copy-seq s)))(mapcar'message(dotimes(i(- n 1)g)(a)))))

sএকটি ঘুমন্ত ছাগল কোথায় , aএকটি জাগ্রত ছাগল যুক্ত করে এবং g(n)এটি গণনা কার্য।


0

জাভা 8, 236 222 218 173 বাইট

n->{String x="\n",a="",b=a,c=a,d=a;for(;n-->0;a+="      \\ ",b+="  ___/"+(n<1?"-":"o")+">",c+=(n<1?",":"-")+"(   )\" ")d+=(n<1?" `` ``":" '' ''")+"  ";return a+x+b+x+c+x+d;}

ব্যাখ্যা:

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

n->{                                // Method with integer parameter and String return-type
  String x="\n",                    //  New-line String to reduce bytes
         a="",                      //  Row 1 String, starting empty
         b=a,                       //  Row 2 String, starting empty
         c=a,                       //  Row 3 String, starting empty
         d=a;                       //  Row 4 String, starting empty
  for(;n-->0;                       //  Loop `n` times:
    a+="      \\ ",                 //   Append the horns to row 1
    b+="  ___/"+(n<1?"-":"o")+">",  //   Append the back and head to row 2
    c+=(n<1?",":"-")+"(   )\" ")    //   Append the tail, body, and beard to row 3
    d+=(n<1?" `` ``":" '' ''")+"  ";//   Append the legs to row 4
  return a+x+b+x+c+x+d;}            //  Return the four rows, separated by new-lines

0

ক্যানভাস , 58 বাইট

>o/___¶ ")___(-∙ \;∔± ''2×∔╶╷×>-/___¶ ")___(,∙ \;∔± ``2×∔+

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

খুব বিরক্তিকর উত্তর, সত্যিই ... জাগ্রত ছাগলটি তৈরি করে, আনুভূমিকভাবে n-1বারবার পুনরাবৃত্তি করে , ঘুমন্ত ছাগল তৈরি করে এবং যুক্ত করে, ফলাফলটি মুদ্রণ করে।

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