ফ্র্যাঙ্কেনস্টাইনের মনস্টার এর নাম


15

পরিচিতি:

যেহেতু এটি প্রায় হ্যালোইন, আমি কেবল কিছু র্যান্ডম হ্যালোইন-থিমযুক্ত চ্যালেঞ্জগুলির কথা ভাবছিলাম। অবশেষে আমি ফ্রাঙ্কেনস্টেইনের উইকিপিডিয়া পৃষ্ঠাটি পড়ছিলাম এবং নীচের পাঠ্যটি পেয়েছিলাম:

জীব

ফ্রাঙ্কেনস্টাইন তার সৃষ্টিকে প্রত্যাখ্যান করার অংশটি হ'ল তিনি এটিকে কোনও নাম দেন না, যা পরিচয়ের অভাবের কারণ হয়। পরিবর্তে এটি "রেচ", "দানব", "প্রাণী", "রাক্ষস", "শয়তান", "অভিজাত" এবং "এটি" এর মতো শব্দ দ্বারা উল্লেখ করা হয়েছে। দশম অধ্যায়ে ফ্র্যাঙ্কেনস্টাইন যখন প্রাণীর সাথে কথোপকথন করেন, তখন তিনি এটিকে "জঘন্য পোকা", "ঘৃণ্য দৈত্য", "পণ্ডিত", "কৃপণ শয়তান" এবং "ঘৃণিত শয়তান" হিসাবে সম্বোধন করেন।

সূত্র

চ্যালেঞ্জ:

দুটি পূর্ণসংখ্যা (বছর এবং অধ্যায়) দেওয়া হয়েছে, নিম্নলিখিত নিয়মের উপর ভিত্তি করে একটি স্ট্রিং আউটপুট করুন:

  1. যদি বছরটি 1818 এর চেয়ে কম হয়: একটি খালি স্ট্রিং আউটপুট করুন
  2. যদি বছরটি ঠিক 1818 হয় এবং অধ্যায়টি 10 ​​এর নীচে থাকে: তালিকা থেকে একটি এলোমেলো স্ট্রিং আউটপুট করুন["wretch", "monster", "creature", "demon", "devil", "fiend", "it"]
  3. যদি বছরটি ঠিক 1818 হয় এবং অধ্যায়টি 10 ​​বা তার বেশি হয়: তালিকা থেকে একটি এলোমেলো স্ট্রিং আউটপুট করুন["vile insect", "abhorred monster", "fiend", "wretched devil", "abhorred devil"]
  4. 1818 এর উপরের বছরটি (এবং এইভাবে বইটি প্রকাশিত হয়েছিল), ফিরে আসুন "Frankenstein's Monster"

চ্যালেঞ্জ বিধি:

  • লোয়ারকেস, বড় হাতের বা কোনও সংমিশ্রণে আউটপুট দিতে হবে তা আপনি চয়ন করতে পারেন।
  • বছরটি সর্বদা সীমার মধ্যে থাকবে 1500-2017
  • অধ্যায়টি সর্বদা সীমার মধ্যে থাকবে 1-24(আমি যদি সঠিকভাবে গুগল করি তবে বইটির 24 টি অধ্যায় রয়েছে)
  • বিকল্প 1 একটি খালি স্ট্রিং outputting পরিবর্তে, এছাড়াও আপনি আউটপুট করার অনুমতি দেওয়া হয় null, undefined, false, 0, অথবা আপনার পছন্দের যে কোন অন্যান্য মান নয় অন্য তিনটি অপশনের অংশ (উল্লেখ করুন কি আপনার উত্তর ব্যবহার করেছি)।
  • আউটপুটে কোনও নেতৃস্থানীয় বা অনুসরণযোগ্য স্পেস / ট্যাব বা কোনও নতুন নতুন লাইন থাকতে পারে না। এটিতে একটি নতুন lineচ্ছিক পথ চলতে পারে।

সাধারণ নিয়ম:

  • এটি , তাই বাইট জেতে সংক্ষিপ্ত উত্তর।
    কোড-গল্ফ ভাষাগুলি আপনাকে নন-কোডগলফিং ভাষার সাথে উত্তর পোস্ট করতে নিরুৎসাহিত করবেন না। 'যে কোনও' প্রোগ্রামিং ভাষার জন্য যতটা সম্ভব সংক্ষিপ্ত উত্তর নিয়ে আসার চেষ্টা করুন।
  • স্ট্যান্ডার্ড নিয়মগুলি আপনার উত্তরের জন্য প্রযোজ্য , সুতরাং আপনাকে সঠিক পরামিতি, সম্পূর্ণ প্রোগ্রামগুলি সহ STDIN / STDOUT, ফাংশন / পদ্ধতি ব্যবহারের অনুমতি দেওয়া হবে। আপনার কল
  • ডিফল্ট লুফোলগুলি নিষিদ্ধ করা হয় (বিশেষত 'নকল এলোমেলো সংখ্যা' )।
  • যদি সম্ভব হয় তবে আপনার কোডের জন্য একটি পরীক্ষার সাথে একটি লিঙ্ক যুক্ত করুন।
  • এছাড়াও, প্রয়োজনে একটি ব্যাখ্যা যোগ করুন।

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

year,chapter possible outputs:

1700,1       ""; null; undefined; false; 0; etc.
1700,12      ""; null; undefined; false; 0; etc.
1817,10      ""; null; undefined; false; 0; etc.
1818,1       "wretch"; "monster"; "creature"; "demon"; "devil"; "fiend"; "it"
1818,9       "wretch"; "monster"; "creature"; "demon"; "devil"; "fiend"; "it"
1818,10      "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1818,11      "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1818,18      "vile insect"; "abhorred monster"; "fiend"; "wretched devil"; "abhorred devil"
1819,1       "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"
1819,18      "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"
2017,24      "Frankenstein's Monster"; "frankenstein's monster"; "FRANKENSTEIN'S MONSTER"

উত্তর:


3

পার্ল 5, 156 153 151 বাইট

-৩ বাইটস ডমহাস্টিংসকে ধন্যবাদ।

সাথে চালাও -p

$_=($d=devil,$m=monster,$w=wretch,<"{creature,demon,it,fiend,vile insect,{abhorr,$w}ed {$d,$d,$m},Frankenstein's $m}">)[/818/?6*/,../+rand 7:$_/606-5]

এই আউটপুট বিতরণটি অ-অভিন্ন, যা ডিফল্টরূপে গৃহীত হয় । বিশেষত, তারিখটি 1818 হয় এবং অধ্যায়টি 10 ​​হয়, "বিরক্ত শয়তান" এবং "ঘৃণ্য দৈত্য" নামগুলি দ্বিগুণ হয়ে ওজন করা হয় are rand 7তালিকাগুলি বিভিন্ন আকারের হলেও এটি আমাকে উভয় ক্ষেত্রেই ব্যবহার করতে দেয় ।

1818 এর আগে বছরের জন্য আউটপুটটি হ'ল "দু: খিত দৈত্য"। কিছু সাদৃশ্য থাকা সত্ত্বেও, এই স্ট্রিংটি অন্য তিনটি বিকল্পের কোনও অংশ নয় , এটি ব্যবহার করা ঠিক আছে।

এটি 1212-2424 সীমার বাইরে বছরের জন্য ব্যর্থ হয়, তবে ভাগ্যক্রমে বছরটি 150072017 সীমাতে থাকা বিধি দ্বারা গ্যারান্টিযুক্ত।

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


আমি জানতাম না পার্সের কাছে ব্রেস প্রসার কোনও জিনিসই ছিল ... এই পদ্ধতির ব্যবহার করে জানা চ্যালেঞ্জের একটি দুর্দান্ত সমাধান রয়েছে ! এটি অনলাইন চেষ্টা করুন!
ডম হেস্টিংস

@ ডোমহাস্টিংস ওহ আমি জানি না আপনি এমন জায়গাগুলির উদ্ধৃতি দিতে পারেন। এখানে -3 বাইট!
গ্রিমি

আমি সাহায্য করতে পেরে খুশি! আমি অবশ্যই এটি চেষ্টা এবং মনে রাখতে হবে, আমার ধারণা এটি কারণ <...>গ্লোবস ধরে?
ডম হেস্টিংস

1
<> হয় রিডলাইন বা গ্লোব,… স্টাফের উপর নির্ভর করে (ক্লাসিক পার্ল: ব্যাকরণ অস্পষ্ট, তবে পার্সার DWYM চেষ্টা করে)। যখন এটি একটি গ্লোব হয়, তখন এটি শেলের গ্লোবগুলি ঘনিষ্ঠভাবে নকল করে including
গ্রিমি

আপনি সম্ভবত আপনার উত্তরে একটি টিআইও-লিঙ্ক যুক্ত করতে পারেন। :) এটি বর্তমানে সংক্ষিপ্ত উত্তর, তবে আমি এটি নিশ্চিত করতে চাই যে আমি স্বল্পতম হিসাবে গ্রহণ করার আগে সমস্ত কিছু কাজ করে।
কেভিন ক্রুইজসেন

9

পাইথন 2 , 227 220 214 বাইট

lambda y,c:[[choice([["wretch",m,"creature","demon",d,F,"it"],["vile insect",a+m,F,"wretched "+d,a+d]][c>9]),"Frankenstein's "+m][y>1818],0][y<1818]
from random import*
m,d,F,a='monster','devil','fiend',"abhorred "

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


1
'abhorred 'তালিকায় নীচে নীচে রেখে আপনি আরও 6 টি বাইট সংরক্ষণ করতে পারেন , কারণ এটি দুটিবার ব্যবহার করা হয়েছে। ( 'wretch'এটিও সম্ভব, তবে বাইট-কাউন্ট একই থাকে))
কেভিন ক্রুইজসেন

6

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

171 বাইট কোড +1 এর জন্য -p

@a=<><10?($}=wretch,$M=monster,creature,demon,$D=devil,fiend,it):("vile insect",($A="abhorred ").$M,fiend,"$}ed $D",$A.$D);$_=($a[rand@a],"frankenstein's $M",0)[$_<=>1818]

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

ব্যাখ্যা

সুন্দর মান শুধুমাত্র সামান্য unsual জিনিস 'মহাকাশযান অপারেটর' (ব্যবহার করছে <=>সহ) 1818রিটার্ন -1, 0বা 1, যদি ইনপুট $_সমান, বা তার অধিক চেয়ে চেয়ে কম হয় 1818গত, প্রথম, বা দ্বিতীয় উৎস ডেটাকে সূচী ফিরতে । এছাড়াও, আমি মাছ অপারেটর পছন্দ !


আমি ব্যবহার না করে প্রশ্ন করতে যাচ্ছি $F=fiend, তবে পরীক্ষার পরে এটি একই দৈর্ঘ্য হিসাবে শেষ হয়।
কামিল দ্রাকারী

@ কামিলডাকারী হ্যাঁ, সিগিলের কারণে ছয় বা তার বেশি দৈর্ঘ্য হওয়া দরকার $:(
ডম হেস্টিংস

$}কী পরিবর্তনশীল নাম ...
টাইটাস

@ টিটাস ইয়ুপ! প্রায় কোনও কিছুই কাজ করে, যদিও অনেকেরই অতিরিক্ত বিশেষ অর্থ রয়েছে। আমি কেবল সেখানে এটি ব্যবহার $Wকরলাম যেন আমি ${W}অন্য চিঠির পাশের মতো ব্যবহার করার দরকার হত ।
ডম হেস্টিংস

1
আমি এটা গণনা করেছি। কিছুই কম নয় :)
তিতাস

4

সি # (ভিজ্যুয়াল সি # সংকলক) , 225 209 বাইট

y=>c=>y<1818?"":y>1818?"frankenstein's monster":"wretch,monster,creature,demon,devil,it,fiend,vile insect,abhorred monster,wretched devil,abhorred devil".Split(',')[new System.Random().Next(c>9?6:0,c>9?11:7)];

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

-16 কেভিন ক্রুইজসেনকে ধন্যবাদ

বিশেষভাবে সংক্ষিপ্ত নয়, তবে আমি আশা করব যে সি # যে কোনও পুনরাবৃত্ত স্ট্রিংগুলি কেবল সেগুলি পুনরাবৃত্তি করার চেয়ে যেভাবে পুনরাবৃত্ত উত্তর দেয় সেগুলি ঘোষিত করতে এবং ব্যবহার করতে আরও বেশি জায়গা নেয়। অন্তর্ভুক্ত পরীক্ষা রানার Thread.Sleep(1)টেস্ট কেসগুলি গণনার অভ্যন্তরে রয়েছে কারণ Random()বর্তমান সময়ের জন্য ডিফল্ট বীজ বপন করা হয় এবং আসল ফাংশনটি দেরি না করে পরবর্তী রানগুলিতে একই বীজের সাথে শেষ পর্যন্ত যথেষ্ট দ্রুত সঞ্চালিত হয়।

ফানকের কলগুলি কারিরিং সিনট্যাক্স ব্যবহার করে f(year)(chapter)(বা ফাংশনের নামে যে কোনও নামই সংরক্ষণ করা হয়)


2
আমি দেখতে পাচ্ছি যে আপনি যখন একই মুহূর্তে fiendউভয় তালিকায় উপস্থিত রয়েছেন তখন একটি স্ট্রিং-অ্যারের মাঝখানে রেখে আমি চ্যালেঞ্জটি পোস্ট করার সময় আমার মনে মতো একই কৌশল প্রয়োগ করেছি । আপনি প্রতিস্থাপন করে কিছু বাইট সংরক্ষণ করতে পারবেন new[]{"wretch","monster","creature","demon","devil","it","fiend","vile insect","abhorred monster","wretched devil","abhorred devil"}সঙ্গে "wretch,monster,creature,demon,devil,it,fiend,vile insect,abhorred monster,wretched devil,abhorred devil".Split(',')(-16 বাইটস)
কেভিন Cruijssen

কেভিনিক্রুজসেন চমৎকার কৌশল, এটি অবিলম্বে উপকারী বলে মনে হচ্ছে না তবে কয়েকটি আইটেমের সাথে তুলনা করে ডিলিমিটারটি পরিবর্তন করে ","কেবল ,দীর্ঘতর করা .Split(',')যায় new[]{}
কামিল দ্রাকারী

3

বাশ, 229 , 206 , 197 , 179 বাইট

m=monster
a=("Frankenstein's $m" wretch $m creature demon devil it fiend vile\ insect {abhorr,wretch}ed\ {devil,$m})
echo "${a[$1>1818?0:$1<1818?13:RANDOM%($2>9?5:7)+($2>9?7:1)]}"

ব্রেস / পরিবর্তনশীল প্রসার সম্পর্কে ব্যাখ্যা about

m=monster
{abhorr,wretch}ed\ {devil,$m}

প্রথমে প্রসারিত হয়

abhorred\ {$m,devil} wretched\ {devil,$m}
abhorred\ $m abhorred\ devil wretched\ devil wretched\ $m

তারপরে চলক মি প্রসারিত হয়

abhorred\ monster abhorred\ devil wretched\ devil wretched\ monster

তবে নিম্নলিখিতটি কাজ করে না কারণ এর $wসাথে প্রথম যোগদান করা হবে edএবং wedসংজ্ঞায়িত হয়নি এবং খালি স্ট্রিংয়ে প্রসারিত হবে।

m=monster
w=wretch
{abhorr,$w}ed\ {devil,$m}

এটি স্পষ্টত্রে ধনুর্বন্ধনী যোগ করা w সম্পন্ন করা যেতে পারে তবে আরও দীর্ঘ হবে be

m=monster
w=wretch
{abhorr,${w}}ed\ {devil,$m}

Tio


আপনি wretchএবং monster( 225 বাইট ) ভেরিয়েবল তৈরি করে 4 বাইট সংরক্ষণ করতে পারেন ।
কেভিন ক্রুইজসেন

পরিবর্তনশীল প্রসারণের আগে ঘটে যা বন্ধনী সম্প্রসারণের কারণে এতটা সহজ নয়
নাহুয়েল ফিউইলুল

আমি (প্রায়) বাশে কখনই প্রোগ্রাম করি নি, আপনি কী বলতে চেয়েছেন তা কি আপনি পরিষ্কার করতে পারেন? এটি টিআইওতে কাজ করছে বলে মনে হচ্ছে না , তবে প্রোগ্রামিংয়ের ভাষা আচরণের কারণে সম্ভবত আমি কিছু মিস করছি।
কেভিন ক্রুইজসেন

1
@ কেভিন ক্রুজসেন আপনাকে ধন্যবাদ জানাতে পেরেছিলাম যখন বন্ধনীগুলি শেষ উপাদানটির সম্প্রসারণের কাজ হয়
নাহুয়েল ফুইলুল

1
@ ডোমহাস্টিংস, হ্যাঁ, স্থির
নাহুয়েল ফুইলুল

2

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

m'monster'
a'abhorred ',⊢
f'fiend'
d'devil'
{⊃⍵=1818:{⊃⌽⍵<10:(?7)⊃'wretch'm'creature' 'demon'd f'it'⋄(?5)⊃'vile insect'(a m)f('wretched ',⊢d)(a d)}⍵⋄{⊃⍵>1818:'frankenstein''s ',⊢m''}⍵}

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

পরীক্ষা করার জন্য, পরীক্ষার কেসটি কেবল সর্বশেষ কোঁকড়ানো বন্ধনীতে যুক্ত করুন:

{⊃⍵=1818:{⊃⌽⍵<10:(?7)⊃'wretch'm'creature' 'demon'd f'it'⋄(?5)⊃'vile insect'(a m)f('wretched ',⊢d)(a d)}⍵⋄{⊃⍵>1818:'frankenstein''s ',⊢m''}⍵}1818 10

হোয়াইটস্পেসের শীর্ষস্থানীয় সমস্যাটি সমাধানে সহায়তার জন্য @ জিএনএকে প্রচুর ধন্যবাদ।

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

এটি লক্ষণীয় যে এপিএল স্ট্রিংগুলিকে অক্ষরের অ্যারে ( ভেক্টর ) হিসাবে ব্যাখ্যা করে , তাই 'wretch' 'creature'অন্য ভাষায়ও ব্যাখ্যা করা হবে[[w,r,e,t,c,h],[c,r,e,a,t,u,r,e]]

এগুলি হ'ল সহায়ক কার্যাদি:

m'monster'      #These are pretty self explanatory, variables m, f and d are being set to 'monster', 'fiend' and 'devil respectively.
f'fiend'
d'devil'
a'abhorred ',⊢  # a is being set to 'abhorred ' concatenated with the argument to it's right.

এটি মূল ফাংশন, যা আরও ভাল বোঝার জন্য 3 ভাগে বিভক্ত হবে:

{⊃⍵=1818:{⊃⌽⍵<10:(?7)⊃'wretch'm'creature' 'demon'd f'it'⋄(?5)⊃'vile insect'(a m)f('wretched ',⊢d)(a d)}⍵⋄{⊃⍵>1818:'frankenstein''s ',⊢m''}⍵}

অংশ 1:

{⊃⍵=1818:{Part2}⍵⋄{Part3}⍵} # First conditional
        :                   # If
                           # the first element
                           # of the argument ⍵
   =1818                    # Equals the literal 1818
         {Part2}⍵           # Executes part 2 with argument ⍵
                           # Else
                  {Part3}⍵  # Executes part 3 with argument ⍵

অংশ ২:

{⊃⌽⍵<10:(?7)⊃'wretch'm'creature' 'demon'd f'it' # Second conditional
(?5)⊃'vile insect'(a m)f('wretched ',⊢d)(a d)}⍵                
       :                                         # If
                                                # the first element
                                                # of the inverse
                                                # of the argument ⍵
    <10                                          # is less than 10
                                                # pick the nth
       (?7)                                      # random element between [1,7]
            'wretch'm'creature' 'demon'd f'it'   # from this string array
                                                # Else
                                                # pick the nth
(?5)                                             # random element between [1,5]
     'vile insect'(a m)f('wretched ',⊢d)(a d)    # from this string array
                                             }⍵  # using argument ⍵

পার্ট 3:

{⊃⍵>1818:'frankenstein''s ',⊢m''}⍵ # Third conditional
        :                           # If
                                   # the first element
                                   # of the argument ⍵
   >1818                            # is greater than 1818
         'frankenstein''s ',⊢m      # print the string "frankenstein's" concatenated with m (which prints monster)
                                   # else
                               ''   # print an empty string
                                 }⍵ # with argument ⍵

2

জাভা (ওপেনজেডিকে 8) , 275 269 255 207 203 বাইট

y->c->y<1818?0:y>1818?"Frankenstein's monster":"wretch;monster;creature;demon;devil;it;fiend;vile insect;abhorred monster;wretched devil;abhorred devil".split(";")[c+=Math.random()*(c>9?5:7)+(c>9?6:0)-c]

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


Objectসরাসরি প্রিন্ট করার পরিবর্তে আপনি 44 বাইট সংরক্ষণ করতে পারেন :y->c->y<1818?0:y>1818?"Frankenstein's monster":"wretch,monster,creature,demon,devil,fiend,it,vile insect,abhorred monster,fiend,wretched devil,abhorred devil".split(",")[(int)(Math.random()*(c<9?7:5))+(c<9?0:7)]
কেভিন ক্রুইজসেন

এবং আপনি fiendমাঝখানে রেখে (যা উভয় তালিকায় উপস্থিত রয়েছে) আরও 4 টি বাইট সংরক্ষণ করতে পারেন : y->c->y<1818?0:y>1818?"Frankenstein's monster":"wretch;monster;creature;demon;devil;it;fiend;vile insect;abhorred monster;wretched devil;abhorred devil".split(";")[(int)(Math.random()*(c<10?7:5))+(c<10?0:6)]( 207 বাইট )
কেভিন ক্রুইজসেন

1
203 বাইট । এটি কাজ করার IntFunctionপরিবর্তে গুলি ব্যবহার করুন Function<Integer>
অলিভিয়ার গ্রাগোয়ার 10 ই

2

পিএইচপি, 184 176 বাইট

<?=strtr([0,1,2,Creature,Demon,It,Fiend,30,31,"2ed 1","Vile Insect","Frankenstein´s 0"][[rand(6*$x=$argv[2]>9,6+4*$x),11][$argv[1]<=>1818]],[Monster,Devil,Wretch,"Abhorred "]);

-nকমান্ড লাইন যুক্তি হিসাবে বছর এবং অধ্যায়টি দিয়ে যান এবং অনলাইনে চেষ্টা করুন

ইনডেক্স এবং ফলস্বরূপ NULLবছরের জন্য <1818 মূল্যায়ন করে , খালি আউটপুট নিয়ে যায়।


কি করে $argv[1]<=>1818? আমি কখনই দেখিনি।
YU NO WORK


1

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

a="abhorred ",d="devil",f="fiend",m="monster"
y=>c=>y<1818?0:y>1818?"frankenstein's "+m:(l=c<10?[f,"wretch",m,"creature","demon",d,f,"it"]:["vile insect",a+m,f,"wretched "+d,a+d])[0|Math.random()*l.length]

0বছরটি 1818 এর চেয়ে কম হলে ফিরে আসে


1

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

M="monster"
A=(y,c)=>y<1818?"":y^1818?"Frankenstein's "+M:[W="wretch",M,"creature","demon",D="devil",F="fiend","it","vile insect",(H="abhorred ")+M,F,W+"ed "+F,H+D][Math.random()*(c>9?5:7)+7*(c>9)|0]

console.log(A(1700,1))
console.log(A(1700,12))
console.log(A(1817,10))
console.log(A(1818,1))
console.log(A(1818,9))
console.log(A(1818,10))
console.log(A(1818,11))
console.log(A(1819,1))
console.log(A(1819,18))
console.log(A(2017,24))


1

সি, 380 বাইটস

void ok(int *year, int* chapter){char*below_10[] = {"wretch", "monster", "creature", "demon", "devil", "fiend", "it"}; char*at_10[] = {"vile insect", "abhorred monster", "fiend", "wretched devil", "abhorred devil"}; year < 1818?printf("0"):(year == 1818?(chapter<10 printf("%s",below_10[rand()%8]):printf("%s",at_10[rand()%7])):printf("Frankenstein's Monster"));}

4
হাই, পিপিসিজিতে আপনাকে স্বাগতম! একটি কোড-গল্ফ চ্যালেঞ্জে লক্ষ্যটি হ'ল যথাসম্ভব কম বাইট। সুতরাং পদ্ধতি / পরিবর্তনশীল নামগুলি একক অক্ষর হিসাবে সেরা। এছাড়াও, আপনি সমস্ত অপ্রয়োজনীয় স্পেস এবং নতুন লাইনগুলি সরিয়ে ফেলতে পারেন এবং এর "Frankenstein's Monster"জন্য পরিবর্তনশীল তৈরির পরিবর্তে সরাসরি ব্যবহার করতে পারেন। এছাড়াও, এখন থেকে yearএবং chapterআসছে কোথা থেকে? আমি এটিকে পদ্ধতির পরামিতি হিসাবে দেখছি না। মধ্যে golfing জন্য টিপস <সমস্ত ভাষা> এবং সি golfing জন্য টিপস সহায়ক হতে পারে। উপভোগকর তোমার থাকা! :)
কেভিন ক্রুইজসেন

সমস্যা নেই. এবং আপনি আরও কিছুটা গল্ফ করতে পারেন:void o(int y,int c){char*b[]={"wretch","monster","creature","demon","devil","fiend","it"},*a[]={"vile insect","abhorred monster","fiend","wretched devil","abhorred devil"};printf("%s",y<1818?0:y==1818?c>9?a[rand()%6]:b[rand()%7]:"Frankenstein's Monster");} 256 বাইট এখানে চেষ্টা করে দেখুন! এ তিন-যদি কিছু অপ্রয়োজনীয় প্রথম বন্ধনী মুছে; একক (আমি অপ্রয়োজনীয় সকল স্পেস, নতুন নামকরণ পদ্ধতি / ভেরিয়েবল / একক চিঠির পরামিতি মুছে printf; পরিবর্তিত <10করতে>9 ; ইত্যাদি) rand()টিআইওতে কেন কাজ করছেন না তা নিশ্চিত নন ..: এস
কেভিন ক্রুজজেন


1

MBASIC , 288 বাইট

1 DIM R$(12):FOR I=1 TO 12:READ R$(I):NEXT:INPUT Y,C:IF Y<1818 THEN 5
2 IF Y>1818 THEN O$="Frankenstein's Monster":GOTO 5
3 IF C>9 THEN O=7
4 O$=R$(O+INT(RND(1)*N+1))
5 PRINT O$:DATA wretch,monster,creature,demon,devil,fiend,it,vile insect,abhorred monster,fiend,wretched devil,abhorred devil

0

05 এ বি 1 ই , 114 110 বাইট

0…뢼–±¹.•ʒ¦Ë"ìËM₂G¶тá≠•ì#.•1ÏiT¥Ƶʒ“T¡Äg… 5ÀΘO¼™Ãí?ιË%4₄‡‡λYιi¾н••Jtm•17в£‚…'s 'ì³R7£R’¡¬ÿÿ±¹’¸¸)sŽ7X.S>èsT@èΩ

0বছর নীচে থাকে আউটপুট 1818

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

ব্যাখ্যা:

0                    # Push a 0
…뢼–±¹              # Push dictionary string "creature devil monster"
 .•ʒ¦Ë"ìËM₂G¶тá≠•   "# Push compressed string "demon fiend it wretch "
  ì                  # Prepend it: "demon fiend it wretch creature devil monster"
   #                 # Split by spaces: ["demon","fiend","it","wretch","creature","devil","monster"]
.•1ÏiT¥Ƶʒ“T¡Äg 5ÀΘO¼™Ãí?ιË%4₄‡‡λYιi¾н•
                     # Push compressed string "abhorred devilabhorred monsterfiendvile insectwretched devil"
 Jtm               # Push compressed integer 1249548
      17в            # Converted to Base-17 as list: [14,16,5,11,14]
         £           # Split the string into parts of that size: ["abhorred devil","abhorred monster","fiend","vile insect","wretched devil"]
                    # Pair both string-lists together
's                 '# Push string "'s "
   'ì³              '# Push dictionary string "liechtenstein"
      R7£R           # Leave the last 7 characters: "enstein"
          ’¡¬ÿÿ±¹’   # Push dictionary string "frankÿÿmonster", where the "ÿ" are automatically
                     # replaced with the strings at the top of the stack: "frankenstein's monster"
                  ¸¸ # Wrap it twice into a list: [["frankenstein's monster"]]
)                    # Wrap everything on the stack into a list
                     # (We now have: [0,[["demon","fiend","it","wretch","creature","devil","monster"],["abhorred devil","abhorred monster","fiend","vile insect","wretched devil"]],[["frankenstein's monster"]]])
 s                   # Swap to get the first (implicit) input
  Ž7X                # Push compressed integer 1818
     .S              # Compare it with the input (-1 if below; 0 if equal; 1 if above)
       >             # Increase it by 1 (0 if below; 1 if equal; 2 if above)
        è            # Use it to index into the list
         s           # Swap to get the second (implicit) input
          T@         # Check if it's larger than or equal to 10 (results in 0 for falsey; 1 for truthy)
            è        # Use it to index into the inner list
             Ω       # And finally get a random value from that list (which is output implicitly)

আমার এই 05AB1E টিপটি দেখুন (বিভাগগুলি অভিধানটি কীভাবে ব্যবহার করবেন? ; কিভাবে কম্প্রেস স্ট্রিং অভিধান অংশ নয় কিভাবে? ; ইপিএসে দক্ষিন কোরিয়ায় কিভাবে পূর্ণসংখ্যার কম্প্রেস কিভাবে? আর কিভাবে কম্প্রেস পূর্ণসংখ্যা তালিকা কিভাবে? ) কেন বুঝতে হবে:

  • …뢼–±¹হয় "creature devil monster";
  • .•ʒ¦Ë"ìËM₂G¶тá≠•হয় "demon fiend it wretch ";
  • .•1ÏiT¥Ƶʒ“T¡Äg… 5ÀΘO¼™Ãí?ιË%4₄‡‡λYιi¾н•হয় "abhorred devilabhorred monsterfiendvile insectwretched devil";
  • •Jtm•হয় 1249548এবং •Jtm•17вহয় [14,16,5,11,14];
  • 'ì³হয় "liechtenstein ";
  • ’¡¬ÿÿ±¹’হয় "frankÿÿmonster";
  • Ž7Xহয় 1818

-1

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

e=Math.random,f=Math.floor;x=(a,b,c=`insect,monster,wretch,creature,demon,devil,fiend,it`.split`,`,d=[`vile `,`abhorred `])=>a<1818||a-1818?`Frankenstein's `+c[1]:(b<10||c[f(e()*2)])+c[f(e()*8)]

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