জীবন মহাবিশ্ব এবং সবকিছু উত্তর


46

কার্য

ইনপুট হিসেবে একটি স্ট্রিং দেওয়া, আপনার টাস্ক আউটপুট হয় 42 শুধুমাত্র যদি ইনপুট স্ট্রিং হতে হবে ঠিক করুন:

abbcccddddeeeeeffffffggggggghhhhhhhhiiiiiiiiijjjjjjjjjjkkkkkkkkkkkllllllllllllmmmmmmmmmmmmmnnnnnnnnnnnnnnoooooooooooooooppppppppppppppppqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrrrrrrsssssssssssssssssssttttttttttttttttttttuuuuuuuuuuuuuuuuuuuuuvvvvvvvvvvvvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzzzzzzzz

ইনপুট পূর্বোক্ত স্ট্রিংয়ের সমান না হলে এটি অন্য কোনও মান আউটপুট করতে পারে, একটি ত্রুটি তৈরি করতে পারে বা আউটপুট আদৌ নয়।


বিজয়ী মানদণ্ড

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


এখানে প্রদত্ত সমাধানগুলির অনেকগুলিই ভুল কারণ তারা স্ট্রিংটি পছন্দসই স্ট্রিংয়ের চেয়ে দীর্ঘ হয় এবং উপসর্গটি পছন্দসই স্ট্রিংয়ের সাথে মেলে।
fR0DDY

@ ফ্রডি: একমাত্র চরিত্র হলে কী হবে? স্ট্রিং অনুসরণ করে (হয়?) একটি লাইন বিরতি? আমার স্বাভাবিক ইনপুট প্রক্রিয়াটি কোনও লাইন ব্রেক দ্বারা ইনপুটটি সমাপ্ত হয় কিনা তা উভয় ক্ষেত্রেই লক্ষ্য রাখে না তবে উদাহরণস্বরূপ উভয় ক্ষেত্রেই একই ফলন দেয়।
জোয়

@ fR0DDY: বাকি ইনপুট কীভাবে পরিচালনা করা উচিত সে সম্পর্কে কোনও পরিষ্কার সংজ্ঞা ছিল না, সুতরাং এখানে কোনও 'ভুল' নেই।
প্যাট্রিকভিএল

3
@ পেট্রিকভিএল যদি ইনপুট প্রদত্ত স্ট্রিং থাকে তবে এটি 'কেবল' উল্লেখ করে। সুতরাং abbcccddddeeeee...zzabcসন্তুষ্ট হয় না যে আমি মনে করি এবং আমি কিছু ইনপুটটিতে হ্যাঁ দেওয়া প্রোগ্রাম দেখতে পাচ্ছি।
fR0DDY

2
@ fR0DDY: আমাকে এটি অন্য একটি উপায়ে বলি: কীভাবে ইনপুটটি সীমিত করা হয় তার কোনও স্পষ্টতা নেই, সুতরাং এটি ব্যাখ্যার জন্য উন্মুক্ত। চরিত্রের এনকোডিংয়ের কোনও উল্লেখ নেই (আমার ধারণা আমরা বেশিরভাগই তাদের পরিবেশের ডিফল্ট ধরে নিই - এএনএসআই, ইউটিএফ 8 এবং ইউটিএফ 16 এলই সর্বাধিক জনপ্রিয় হবে)। এছাড়াও ইনপুট কীভাবে উপস্থাপন করা হবে তা উল্লেখ করুন - এটি কি কোনও কমান্ড-লাইন প্যারামিটারের মাধ্যমে স্ট্যান্ডার্ড ইনপুট দিয়ে প্রবেশ করা হয়? সুতরাং আপনি দেখুন - এই সমস্ত স্বাধীনতা থাকা কিছু ব্যাখ্যার পথ দেয় যে আপনি 'ভুল' হিসাবে চিহ্নিত করবেন, অন্যরা এটি 'অনুগত' হিসাবে বিচার করবেন। এনওএফআই, তবে এটি আমাদের কারও জন্য প্রতিদিনের অনুশীলন।
প্যাট্রিকভিএল

উত্তর:


20

গল্ফস্ক্রিপ্ট, 20

26,{.97+\{.}*}%=42`*

নতুন লাইন সহ, 21 টি অক্ষর (নব দ্বারা)

26,{).[96+]*}%n+=42`*

প্রকৃতপক্ষে ন্যাব আমার মার, এখানে নতুন লাইন, 22 টি অক্ষরের সাথে আসল সমাধান

26,{.97+\{.}*}%n+=42`*

এটি কেবল উত্সের স্ট্রিং তৈরি করছে এবং স্ট্ডিনের সাথে স্ট্রিংয়ের সাথে তুলনা করছে।


3
26,{).[96+]*}%n+=42`*21 (Inc newline) এর জন্য।
ন্যাব

হেই, এটি ছাড়া কাজ করে না n+কারণ অ্যারেটি সমতল নয়। আপনাকে হয় আপনার মূল 20 টি অক্ষর রাখতে হবে বা ~অ্যারের অভ্যন্তরীণ শর্তগুলি সমতল করতে একটি যুক্ত করতে হবে।
ন্যাব

@ নব্ব, হিহহ, আমি বুঝতে পারিনি যে নতুন লাইন এটি আলাদা করেছে।
আপনি

13

রুবি ১.৯, 46 42 39 টি অক্ষর

p (?a..?z).map{|a|a*$.+=1}*""==gets&&42

ধরে নিই ইনপুটটি কোনও নতুন লাইন দিয়ে শেষ করা হয়নি।


গেমস থেকে নিউলাইন সম্পর্কে কি?
স্টেনস্ল্যাগ

2
@ স্টেইনস্লাগ: একটি নতুন লাইন দ্বারা ইনপুটটি সমাপ্ত হচ্ছে বলে চশমাগুলি কিছুই বলে না, সুতরাং এই সমাধানটি অনুমান করে যে কোনও কিছুই নেই।
ভেন্টোরো

11

সি প্রোগ্রাম - 78 89

সম্পাদনা করুন: অতিরিক্ত অক্ষর থাকলে 42 মুদ্রণ করবেন না।

ধরে নিই ইনপুটটির পিছনে নতুন লাইন নেই।

main(i,j){for(i=1;i<27;i++)for(j=i;j--;getchar()==96+i?0:exit(1));puts("42"+!!gets(&i));}

উপসর্গটি না মিললে প্রোগ্রামটি প্রস্থান করে। উপসর্গটি যদি মেলে তবে সেখানে 1-3 বা আরও অতিরিক্ত অক্ষর রয়েছে, 2 টি প্রিন্ট করে Otherwise অন্যথায়, অনির্ধারিত আচরণ তৈরি করে।

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


1
যদি স্ট্রিংটি পছন্দসই স্ট্রিংয়ের চেয়ে দীর্ঘ হয় এবং উপসর্গটি পছন্দসই স্ট্রিংয়ের সাথে মেলে তবে এটি 42 মুদ্রণ করবে।
fR0DDY

8

পিএইচপি (60)

কমান্ডলাইনে ইনপুট সরবরাহ করা হয়েছে তা ধরে নিচ্ছি:

for(;$i<702;)$s.=chr(96.5+sqrt($i+=2));echo$s!=$argv[1]?:42;

ব্যাখ্যা : আপনি একটি ত্রিভুজ কাঠামো হিসাবে স্ট্রিং দেখতে পারেন।

j     i   val
0     0   a
1   1-2   bb
2   3-5   ccc
3   6-9   dddd
4 10-14   eeeee
5 15-20   ffffff
      ...

লাইন jসূচকে শুরু হয় i = j*(j+1)/2(এটি ত্রিভুজাকার সংখ্যা সূত্র)। চতুর্ভুজ সমীকরণের সমাধানের ফলে সূচকে iলাইনে থাকে j = int((sqrt(8*i+1)-1)/2)এবং এর ফলে অক্ষর থাকে 97 + int((sqrt(8*i+1)-1)/2)0-350সূচক পরিসীমা আমাদের যে প্রক্রিয়া সহজ করার জন্য করতে পারবেন 96.5 + sqrt(2*(i+1)), কিন্তু এখন আর বৃহত্তর মানের জন্য সত্য যে।

সম্পাদনা করুন : মন্তব্যগুলিতে পরামর্শ অনুসারে কমান্ডলাইন ইনপুটটিতে স্যুইচ করা হয়েছে।
সম্পাদনা : একটি অক্ষর সংরক্ষণ করতে শর্তসাপেক্ষ অপারেটর ব্যবহার করে


+1, যা কাজ করে;) উম্মে আপনি কীভাবে $s.=chr(96.5+sqrt($i+=2));কাজ করে তা দয়া করে বিস্তারিত বর্ণনা করতে পারেন ?
ক্লাইড লোবো

সম্পাদনা করা হয়েছে। আমি আশা করি এটি উপলব্ধি করেছে :-)
সাম হোচেভার

জন্য (; $ i এর <702;) $ s এর = chr, (96.5 + + বর্গমূল ($ আমি + = 2));। প্রতিধ্বনি ($ s এর == $ argv হয় [1]) * 42; কেবল 61 টি অক্ষর,
স্টিডিন

@ ভাইপার_এসবি: ইঙ্গিতটির জন্য ধন্যবাদ; আমি নিয়ম সম্পর্কে নিশ্চিত ছিলাম না তাই আমি ক্লাইডের সমাধানটি নকল করেছিলাম। আমি আপনার পরামর্শ নিয়ে যাব।
সাম হোচেভার

1
@ পাওটাাক ভাষার সিনট্যাক্সের জন্য এখানে কোনও জায়গার প্রয়োজন নেই
sam hocevar

7

পার্ল, 35 43

map$s.=$_ x++$a,a..z;say 42if<>~~$s

পার্লের প্রয়োজন 5.10 বা তার পরে (চালানো -E), ইনপুটটিতে কোনও নতুন লাইন নেই।

আমি আমার পার্শ্ব-প্রতিক্রিয়াগুলি আরও ভাল পছন্দ করেছি, তবে সংক্ষিপ্ত কোডটি বলেছে। এখানে এটি একটি স্যুভেনির হিসাবে। পার্ল ৫.১০ বা তারপরের জন্যও পরিকল্পনা করা হয়েছে, তবে কেবলমাত্র উন্নত / পরীক্ষামূলক রেজেক্স বৈশিষ্ট্যগুলির জন্য, সুতরাং কেবল একটি pকমান্ড-লাইন বিকল্প প্রয়োজন।

$a=a;$_=/^(??{$b++;$a++."{$b}"}){26}$/&&42

চমৎকার। আমি এই ডাব্লু / রিকার্সিভ রেজেক্সকে পরাজিত করার জন্য অনেক চেষ্টা করেছি তবে 43c এর নিচে নামতে পারিনি। : - ((
রাবার বুটগুলি

ন্যায়বিচারের $a++."{$b}"পরিবর্তে কেন বলা দরকার $a++.$b?
টিমউই

@ টিমউই কারণ ফলাফলের স্ট্রিংয়ে উপস্থিত হওয়ার জন্য আমার এই ধনুর্বন্ধনী প্রয়োজন। আমি আক্ষরিক "ডি 4" এর সাথে মিল রাখতে চাই না, আমি "ডিডিডিডি" চাই, রেজেক্স "ডি {4}" হিসাবে প্রকাশিত
জেবি

অবশ্যই. ব্যাখ্যা করার জন্য ধন্যবাদ!
টিমউই

এর জন্য একটি 33 বাইট সমাধান নিয়ে এসেছেন! এটি অনলাইন চেষ্টা করুন!
ডম হেস্টিংস

7

05 এ বি 1 ই , 7 বাইট (প্রতিযোগী নয়)

AƶJQi42

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

ব্যাখ্যা

A       push lowercase alphabet
 ƶ      lift every letter, push it and multiply it by its index
  J     join the list
   Qi   does it equal the input?
     42 push 42 and output implicitly

05AB1E (এবং সাধারণভাবে গল্ফ করা) শেখার জন্য কেবল কয়েকটি চ্যালেঞ্জের মধ্য দিয়ে যাচ্ছি। এই চ্যালেঞ্জটি গতকাল সক্রিয় হিসাবে চিহ্নিত হয়েছে এবং আমি একটি সংক্ষিপ্ত সমাধান পেয়েছি, তবে কেন ভাগ করবেন না? :)


3
পিপিসিজিতে আপনাকে স্বাগতম!
স্টেডিবক্স

6

হাস্কেল প্রোগ্রাম - 71 67 64 57

কোনও অনুমানযোগ্য নিউলাইন অনুমান করে না এবং একটিও আউটপুট দেয় না।

f x|x==[c|c<-['a'..'z'],_<-['a'..c]]="42"
main=interact f

ব্যবহার:

$ echo -n 'abbcccddddeeeeeffffffggggggghhhhhhhhiiiiiiiiijjjjjjjjjjkkkkkkkkkkkllllllllllllmmmmmmmmmmmmmnnnnnnnnnnnnnnoooooooooooooooppppppppppppppppqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrrrrrrsssssssssssssssssssttttttttttttttttttttuuuuuuuuuuuuuuuuuuuuuvvvvvvvvvvvvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzzzzzzzz' | { ./42; echo; }
42
$ echo -n 'something else' | { ./42; echo; }
42: 42.hs:1:0-54: Non-exhaustive patterns in function f


$

1
এই কোডটি এখনও খুব পঠনযোগ্য।
ড্যান বার্টন

1
যেহেতু zipWithস্টপ যখন এটি খাটো তালিকার শেষে পৌঁছে, আপনি প্রতিস্থাপন করতে পারেন ['a'..'z']সঙ্গে ['a'..]এবং 3 টি অক্ষর সংরক্ষণ করুন।
হামার

@ হ্যামার: ধন্যবাদ কনট্যাট এবং জিপউথের পরিবর্তে >> = (কনক্যাটম্যাপ) ব্যবহার করে আমি আরও 1 টি চর সংরক্ষণ করেছি।
জোয় অ্যাডামস

@ হ্যামার: >> = এবং ল্যাম্বদা :-) এর পরিবর্তে নোটেশন ব্যবহার করে আরও বেশি কিছু সংরক্ষণ করা হয়েছে
জোয় অ্যাডামস

2
@ জোয়ে: বা আরও ভাল:[c|c<-['a'..'z'],_<-['a'..c]]
হামার

4

জে, 29

f=:42#~((>:#a.{~97+])i.26)-:]

উদাহরণ:

f 'oasijfiojasef'

f 23841235

f 'abbccc...'
42

আমি জে পছন্দ করি এবং এটি কুরুচিপূর্ণ এবং ভয়ঙ্কর মনে করি। এবং আমি ইহা পছন্দ করি.
seequ

4

ডি: 94 অক্ষর

void f(S)(S s){S t;foreach(i;0..26)t~=array(repeat(cast(char)(i+'a'),i+1));s==t&&writeln(42);}

আরও সুস্পষ্টভাবে:

void f(S)(S s)
{
    S t;

    foreach(i; 0 .. 26)
        t ~= array(repeat(cast(char)(i + 'a'), i + 1));

    s == t && writeln(42);
}

3

দেলফি, 164 132

এটি একটি স্ট্রিং তৈরি করে এবং এটি প্রথম কমান্ড-লাইন আর্গুমেন্টের সাথে তুলনা করে। এটি আমার অন্যান্য জমা দেওয়ার চেয়ে খাটো এবং কম কৌশল:

var s:string;c,i:int8;begin repeat s:=s+Char(c+97);i:=i-1;c:=c+Ord(i<0);if i<0then i:=c;until c=26;Write(42*Ord(s=ParamStr(1)));end.

(দ্রষ্টব্য, এই সংস্করণটি ধরে নিয়েছে যে ডেল্ফি (২০১০) এর আমার সংস্করণে যেমনটি হয় cএবং iপরিবর্তনশীলগুলি 0 থেকে শুরু হয়))

আমার অন্যান্য জমা দেওয়ার মতো, যদি স্ট্রিং-বিল্ডিং কোনও ফাংশনে স্থান না নেয়, তবে এটির মতো কম অক্ষরের প্রয়োজন যেমন আমি আগে করেছি:

ডেলফি, 181

program a;{$APPTYPE CONSOLE}function s(c,i:byte):string;begin if(i>0)then Exit(Char(c)+s(c,i-1));if(c<122)then Exit(s(c+1,c-95));end;begin if(s(97,1)=ParamStr(1))then Write(42);end.

দ্রষ্টব্য যে আউটপুটটির কোনও নতুন লাইন প্রয়োজন নেই, সুতরাং WritLn () রাইটিং () হয়ে গেল।


3

পিএইচপি - 45 টি অক্ষর

আমি অবাক হয়েছি যে কেউ হ্যাশিং ব্যবহার করে এমন কোনও উত্তর পোস্ট করেনি। সঠিক স্ট্রিংয়ের পরীক্ষার এটি খুব আকারের কার্যকর উপায় ec

echo md5($argv[1],1)!='¯è a@ÛÚƒ:ïT�p'?:42;

কোডের মাঝখানে একটি নাল-বাইট থাকায় ডেটা অনুলিপি করা / কপি করা এক ধরণের শক্ত। পরীক্ষার উদ্দেশ্যে কোডটির একটি হ্যাক্স-ডাম্প।

65 63 68 6 এফ 20 6 ডি 64 35 28 24 61 72 67 76 5 বি 31 5 ডি 2 সি 31 29 21 3 ডি 27 আফি 800 40 ডিবি দা 7 এফ 11 0 ফ 83 3 এ ই 54 54 70 27 3 এফ 3 এ 34 32 3 বি


2
চতুর! যদিও যেহেতু এই একই হ্যাশ ফলনশীল টেকনিক্যালি অন্যান্য ইনপুট মান, এটা বেশ 42 outputting এর প্রয়োজনীয়তা সন্তুষ্ট না শুধুমাত্র যদি ইনপুট নির্দিষ্ট ফর্ম্যাটে আছে।
মেল্লামব্যাক

3

স্কালা 79

 if((for(i <- 1 to 26;j<-1 to i)yield(96+i).toChar).mkString==args(0))print(42)

3

পাইথ, 14

*42qzsm*dhxGdG

কেবল প্রয়োজনীয় স্ট্রিং তৈরি করে, তারপরে ইনপুটটির সাথে তুলনা করে 42 দ্বারা গুণিত হয়।


'ইনপুটটির সাথে তুলনা করে 42 দ্বারা গুণিত হয়' ' আমার নিজের উপর এটি কখনই ভাবিনি। আপনি কেবল আমার সমাধান থেকে আমার 1 অক্ষর শেভ করতে সহায়তা করুন। ধন্যবাদ।
AndoDaan

আঃ, আমি অনেক দেরি করে এসেছি। এটি কীভাবে কাজ করে তা ব্যাখ্যা করতে পারেন? ফাংশনটি mআমাকে সমস্যায় ফেলে…
জিম

1
@ জিম আমরা মানচিত্রের ফাংশন দিয়ে শুরু করি m, যা এর ইনপুটটির প্রতিটি উপাদানকে একটি ফাংশন প্রয়োগ করে। ইনপুটটি হ'ল Gবর্ণমালা। বর্ণমালার মধ্যে বর্ণমালার মধ্যে , অক্ষরটির xGdঅবস্থান আবিষ্কার করে । এটি একের পর এক বৃদ্ধি করে এবং চরিত্রটিকে বহুবার প্রতিলিপি করে। ফাংশনের বাইরে , স্ট্রিংগুলির ফলাফলের তালিকাটিকে একটি স্ট্রিংয়ের সাথে সংযুক্ত করে, ফলাফলটি ইনপুটটির সমান কিনা তা পরীক্ষা করে। বুলিয়ানগুলি মিথ্যা এবং সত্য হিসাবে যদি উপস্থাপিত হয় , সুতরাং ফলস যদি সত্য হয় এবং যদি মিথ্যা হয় তার ফলস্বরূপ । dGh*dmsqz01*42420
isaacg

3

ব্র্যাচল্যাগ (2), 15 বাইট, ভাষা পোস্টডেটস চ্যালেঞ্জ

⊇Ạ∧?o?ọtᵐ~⟦₁+₁₆

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

এবং এখন এমন উত্তরের জন্য যা এখানে দেখা বেশ সম্পূর্ণ ভিন্ন নীতিতে কাজ করে। এটি একটি ফাংশন সাবমিশন (কোন ধরণের জমা দিতে চান তা প্রশ্নটি নির্দিষ্ট করে না তবে ফাংশনগুলি ডিফল্টরূপে অনুমোদিত)।

ব্যাখ্যা

এই উত্তরটি একটি ধরণের স্ট্রিং সংজ্ঞায়িত করে কাজ করে: ক) বর্ণমালার সমস্ত ছোট হাতের অক্ষরগুলি খ) অনুসারে বাছাই করা হয় এবং গ) যার জন্য স্ট্রিংয়ের প্রতিটি অক্ষরের সংখ্যার সংখ্যা ক্রমাগত ক্রম উত্পাদন করে পূর্ণসংখ্যা ১ থেকে শুরু হয় (এটি স্পষ্ট হওয়া উচিত যে এরকম অনেকগুলি স্ট্রিং রয়েছে তবে আমরা বিশেষ বিশেষ ক্ষেত্রে যেটি চাই তা সবচেয়ে কম হয়)) তারপরে যদি স্ট্রিংটি সেই মানদণ্ডগুলি পূরণ করে তবে আমরা পৃথক অক্ষরের সংখ্যায় 16 যোগ করব স্ট্রিং; যদি স্ট্রিংটি প্রশ্নটি আমাদেরকে বিশেষ ক্ষেত্রে জিজ্ঞাসা করে, তবে অন্য 42 ক্ষেত্রে কমপক্ষে 43 টি উত্পাদন করবে। (স্ট্রিংটি বিভাগের অন্তর্ভুক্ত কোনও মানদণ্ডে ব্যর্থ হলে, ফাংশনটি ব্যর্থতায় শেষ হবে, যা ব্যতিক্রম ছোঁড়ার মতো like)

উত্স কোডটি কীভাবে ব্যাখ্যা করা যায় তা এখানে:

⊇Ạ∧?o?ọtᵐ~⟦₁+₁₆
⊇Ạ               {the input} contains all lowercase letters
  ∧              and
   ?o?           the input sorts to itself
                 {and; implied when two conditions overlap}
     ?ọ          the {character, number of occurrences} pairs for the input
       tᵐ        when the second element of each is taken
         ~       create an output that could have been produced by
          ⟦₁     outputting the list of integers from 1 to some input inclusive;
            +₁₆  add 16 to that input {and output it}

3

আর, 60 58

if(readline()==paste0(rep(letters,1:26),collapse=""))cat(42)

if(scan(,"")==paste(rep(letters,1:26),collapse=""))cat(42)

@ গিউস্প্পে পরামর্শের জন্য ধন্যবাদ


আমি মনে করি pasteএখানে ঠিক আছে, এবং আপনি এর scan(,"")পরিবর্তে ব্যবহার করতে পারেন readline()
জিউসেপ

2

পাইথন (84)

ইনপুট শেষে একটি পেছনের নতুন লাইন ধরে।

আমদানি sys
যদি ''।

1
raw_inputপরিবর্তে ব্যবহার করবেন না কেন sys.stdin.read?
জুয়ান

1
@ জুয়ান: raw_inputকেবল একটি একক লাইন পড়ে; "ইনপুট" সর্বদা একটি এক লাইনে থাকবে কিনা বা পরবর্তী লাইনে অযোগ্য ইনপুট থাকতে পারে কিনা তা আমি নিশ্চিত ছিলাম না।
হোয়া লং ট্যাম

2

পাইথন - 62 টি অক্ষর

print("".join(x*chr(x+96) for x in range(27))==raw_input())*42

2
পাইথন 3: এ ছোট হতে পারে print("".join(x*chr(x+96)for x in range(27))==input())*42
mbomb007

2

পার্ল, 49 46 টি অক্ষর

কমান্ড লাইনে নয়, প্রোগ্রামে ব্যবহার করতে হবে

$..=chr($+96)x$ for 1..26;$.eq(pop)&&print '42'

join('',map$_ x++$x,'a'..'z')eq pop&&print'42'

শুভেচ্ছা সহ

rbo

সম্পাদনা: ভেন্টোরো থেকে আইডিয়া ছিড়ে


2

পিএইচপি 92 88 87 অক্ষর

function _($a){for($i=97;$i<123;$i++)for($j=$i-96;$j;$j--)$b.=chr($i);echo($b==$a)*42;}

সম্পাদনা

এর $j<0সাথে $jএবং return $b==$a?42:0;সাথে প্রতিস্থাপন করা হয়েছেecho $b==$a?42:0;

echo $b==$a?42:0;সঙ্গে প্রতিস্থাপনecho($b==$a)*42;


2
এটি যদি সমস্ত ফ্রিকিং ডলারের লক্ষণগুলির জন্য না হয় তবে 80 টি অক্ষর হতে পারে।
জোয় অ্যাডামস

একক লুপ সমাধানের জন্য আমার এন্ট্রিও দেখুন।
সাম হোচেভার

2

ECLiPSe প্রোলগ - 173

c(_,[],_):-!. c(A,M,N):-length(L,N),checklist('='(A),L),append(F,L,M),P is N-1,B is A-1,c(B,F,P). ?- read_string(end_of_file,351,S),string_list(S,L),c(122,L,26),writeln(42).

2

জাভাস্ক্রিপ্ট (91 93 94 98 102 116 )

ব্যবহার: a('string'), আয় 42যদি বৈধ অনুযায়ী বৈশিষ্ট, অথবা 0

function a(z){for(i=r='';i++<26;)for(j=i;j--;)r+=String.fromCharCode(i+96);return(z==r)*42}

http://jsfiddle.net/g25M3/6/

সম্পাদনা করুন : varদুটি স্থান ফাঁকা করে মুছে ফেলা হয়েছে for (

সম্পাদনা করুন 2 : পরিবর্তিত j>0করতে j, এবং

  1. return (z==r)?42:0; প্রতি
  2. return z==r?42:0

সম্পাদনা করুন 3 : আরম্ভ iসঙ্গে i='', পরিবর্তন

  1. (z==r)?42:0 প্রতি
  2. (z==r)*42

সম্পাদনা 4 : পরিবর্তন

  1. for(;i<27;i++) প্রতি
  2. while(i++<26)

5 সম্পাদনা করুন : পরিবর্তন করুন

  1. i=r='';while(i++<26) প্রতি
  2. for(i=r='';i++<26;) এবং
  3. for(j=i;j;j--) প্রতি
  4. for(j=i;j--;)

আপনি যদি varভেরিয়েবলগুলি ঘোষণা করতে না চান তবে আপনি আরও 12 টি অক্ষর হ্রাস করতে পারবেন ;)
ক্লাইড লোবো

ক্লাইড: ধন্যবাদ! আরও দেখা আমি মধ্যে স্থান দূর করতে পারবে for (
মেল্লামব্যাক

হ্যাঁ, একই পরামর্শ দেওয়ার কথা ছিল;) ওহ এবং আমি পিএইচপি-তে আপনার মতো একই যুক্তি ব্যবহার করে একটি সমাধান কোড করেছিলাম
ক্লাইড লোবো

আপনি আরও 2 টি অক্ষর প্রতিস্থাপনের return(z==r)?42:0;মাধ্যমে সংরক্ষণ করতে পারেন return z==r?42:0
ক্লাইড লোবো

j>0jআমি ঠিক মনে হতে পারে ।
আপনি

2

জাভাস্ক্রিপ্ট 1.8, 99 অক্ষর

function c(x)(x.replace(/([a-z])\1*/g,function(m)!(a-m.length)*m.charCodeAt(0)-96-a++,a=1)==0)*a+15

আমি এটি জানার সাহস করি :)


2

পিএইচপি - 59

ধরে নেওয়া যাক কমপক্ষে কমপক্ষে 1 ইনপুট সরবরাহ করা হয়েছে

echo md5($argv[1])!='afe8a06140dbda7f110f833aef540070'?:42;

এটি এমডি 5 বাদে প্রযুক্তিগতভাবে হ্যাশিং অ্যালগো সহ নকল করতে পারে, এটি কমবেশি কাজ করে।


2

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

42*(-join(1..26|%{,[char]($_+96)*$_})-ceq$args)

একটি পরিসীমা তৈরি করে 1..26, এটি দিয়ে একটি লুপের মাধ্যমে ফিড দেয় |%{...}। প্রতিটি পুনরাবৃত্তি আমরা কমা অপারেটরকে[char] বর্তমান লুপ সংখ্যার দ্বারা গুণিত বর্তমানের অ্যারে আক্ষরিক তৈরি করতে ব্যবহার করি । তারপরে আমরা -joinসবাই মিলে স্ট্রিংটি তৈরি করতে abbcccdddd...এবং তারপরে -ceqআমাদের ইনপুটটির বিরুদ্ধে কেস-সংবেদনশীল তুলনা ব্যবহার করি $args, যার ফলশ্রুতিতে হয় হয় $TRUEবা হয় $FALSE। পাওয়ারশেলে, বুলিয়ান মানগুলি যথাক্রমে 1বা 0যথাক্রমে যথাযথভাবে নিক্ষেপ করা যেতে পারে , যা এখানে এখানে ঘটে থাকে 42*42ইনপুটটি প্রিন্ট আউট abbccc...zzzzzzzzzzzzzzzzzzzzzzzzzzহবে এবং 0অন্যথায় আউটপুট হবে।


আপনি একটি বাইট সংরক্ষণ করতে পারেন :) এটি অনলাইন চেষ্টা করুন!
mazzy

2

কে, 26 বাইট

{(::;42)x~,/(1+!26)#'.Q.a}
{(::;42)x~,/(1+!26)#'.Q.a}"hello"
{(::;42)x~,/(1+!26)#'.Q.a}"abbcccddddeeeeeffffffggggggghhhhhhhhiiiiiiiiijjjjjjjjjjkkkkkkkkkkkllllllllllllmmmmmmmmmmmmmnnnnnnnnnnnnnnoooooooooooooooppppppppppppppppqqqqqqqqqqqqqqqqqrrrrrrrrrrrrrrrrrrsssssssssssssssssssttttttttttttttttttttuuuuuuuuuuuuuuuuuuuuuvvvvvvvvvvvvvvvvvvvvvvwwwwwwwwwwwwwwwwwwwwwwwxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyyyyyyyyyyyyyyyyzzzzzzzzzzzzzzzzzzzzzzzzzz"
42

ধন্যবাদ


{$[x~.Q.a@&1+!26;42;]}জন্য 22 বাইট।
স্ট্রিস্টার

1
42*(&!27)~-96+"j"$জন্য 18 বাইট (আমার porting Ok উত্তর)।
রাস্তার

2

ভিবিএ 91

কোনও ভিবিএ উত্তর ছিল না তবে এটি কাজ করে:

Function f(t)
    For i = 1 To 26
        o = o & String(i, Chr(i + 96))
    Next
    f = -42 * (t = o)
End Function

এটি থেকে কোনও শ্বেত স্থান অপসারণ করা কি সত্যিই অসম্ভব?
ফল

1
সংশ্লেষিত সংস্করণ, 61 বাইট -o="":For i=1To 26:o=o &String(i,Chr(i+96)):Next:?-42*([A1]=o)
টেলর স্কট

@ চ্যালেঞ্জার 5 না, এটি অসম্ভব নয়। টেলরের স্কট মন্তব্য ঠিক সে রকম। এটি তাত্ক্ষণিক উইন্ডোতে চলে এবং সেল থেকে মানটি A1ইনপুট হিসাবে নেয় ।
ইঞ্জিনিয়ার টোস্ট

2

এপিএল (ডায়ালগ) , 18 17 বাইট

42/⍨⍞≡819⌶⎕A/⍨⍳26

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

চারটি স্পষ্ট বাইট সংরক্ষণ করা যায় যদি আমাদের বড় হাতের ব্যবহারের অনুমতি দেওয়া হয়।

42 42

/⍨ যদি (লিট। দ্বারা প্রতিলিপি)

 অক্ষর ইনপুট

 অনুরূপ

819⌶ নিম্নতর

⎕Aএকটি lphabet

/⍨ দ্বারা প্রতিলিপি

 এক মাধ্যমে

26 26


1

ক্লোজার - 61 টি অক্ষর

(fn[a](if(=(mapcat #(repeat%(char(+% 96)))(range 1 27))a)42))

নিম্নলিখিত তথ্যগুলি শোষণ করে:

  • ক্লোজার যেকোন স্ট্রিংকে অক্ষরের ক্রম হিসাবে স্বয়ংক্রিয়ভাবে ব্যাখ্যা করতে পারে
  • আমি অক্ষর তৈরি করতে 1 থেকে 26 পর্যন্ত সংখ্যার পরিসর ব্যবহার করতে পারি এবং "সঠিক" ইনপুট তৈরি করতে তাদের সঠিক সংখ্যা বা বার পুনরাবৃত্তি করতে পারি

Clojure নেস্টেড # () এর জন্য অনুমতি দিলে 6 টি অক্ষর বাঁচাতে পারে ..... ক্লোজারের 1.4 গুরুত্বপূর্ণ বৈশিষ্ট্যের অনুরোধ আমি মনে করি!
মাইকেরা

1

জাভাস্ক্রিপ্ট 144

সম্ভবত উল্লেখযোগ্যভাবে উন্নতি করা যেতে পারে, পুনরাবৃত্তি আমার জন্য সবসময়ই একটি মাথা ছিল।

কম্প্রেস

function r(a,b,d,c){c++;if(b<d)a+=r(a,b+1,d,c);for(i=0;i<c;i++)a=String.fromCharCode(b)+a;return a}function q(a){if(q==r(a,97,122,0))return 42};

কম সংকুচিত

function r(s, c, x, w){        
    w++;
    if(c < x)
        s += r(s, c + 1, x, w);
    for(i = 0; i < w; i++)
        s = String.fromCharCode(c) + s;              
    return s;
}
function q(z){
    if(q==r(z,97, 122, 0))
        return 42;            
}

alert(q("rgrg"));

1

ডেল্ফি, 127

var b:Char;c,i:Int8;begin repeat if i<0then i:=c;Read(b);if c+97<>Ord(b)then Exit;i:=i-1;c:=c+Ord(i<0)until i=27;Write(42);end.

এই একটি ইনপুট থেকে স্ট্রিংটি পড়ে, এটি যেমন যায় তেমন তুলনা করে, শেষ পর্যন্ত ইনপুট মেলে যখন 42 লিখে যায় z

দেলফি, 157

var b:pchar;c,i:byte;begin b:=CmdLine+85;c:=97;i:=1;repeat Inc(b);if b^<>Char(c)then Exit;Dec(i);if i>0then Continue;c:=c+1;i:=c-96;until i=27;Write(42);end.

দেলফি, 188

program a;{$APPTYPE CONSOLE}var b:pchar;c,i:byte;begin b:=CmdLine+85;c:=97;i:=1;repeat Inc(b);if(b^<>Char(c))then Exit;Dec(i);if(i>0)then Continue;c:=c+1;i:=c-96;until(i=27);Write(42);end.

এই সংস্করণটি কোনও ফাংশন ব্যবহার করে না, যা এই প্রযুক্তির আগের সংস্করণের তুলনায় বেশ কয়েকটি অক্ষর সংরক্ষণ করে:

ডেলফি, 213

program a;{$APPTYPE CONSOLE}function t(b:pchar;c,i:byte):byte;begin repeat Inc(b);if(b^<>Char(c))then Exit(0);Dec(i);if(i>0)then Continue;c:=c+1;i:=c-96;until(i=27);t:=42;end;begin WriteLn(t(CmdLine+77,97,1));end.

হায়রে কিছুটা দীর্ঘ, বেশিরভাগ কারণ ডেলফির দীর্ঘ কীওয়ার্ড এবং আউটপুট লেখার আগে কনসোল অ্যাপ্লিকেশনগুলি আরম্ভ করার প্রয়োজন।

আরও মনে রাখবেন যে আমি সিএমডিলাইনকে characters characters টি অক্ষর দ্বারা বর্ধিত করেছি, যেহেতু আমার স্থানীয় এক্সিকিউটেবলপথ (দেলফির কোনও প্রত্যক্ষ যুক্তি নির্দেশক নেই) এড়িয়ে যাওয়ার দরকার অফসেট ছিল। আপনার নিজের সেটআপটি মিলিয়ে নিতে সামঞ্জস্য করুন (<10 টি অফসেট করার সময় 1 টি কম অক্ষর হতে পারে)।


আপনি প্রজেক্টপশনস / ডেলফী কমপিলার / লিঙ্কিং / জেনারেটকনসোল অ্যাপ্লিকেশন এর অধীনে অ্যাপ্লিকেশন ধরণের সেট করতে পারেন। এছাড়াও, আপনি program a;লাইন বাদ দিতে পারেন । এবং কাছাকাছি বন্ধনী b^<>Char(c), i>0এবং i=27সরানো যেতে পারে।
ওয়াউটার ভ্যান নিফটারিক

@ ওয়াটার ভ্যান নিফটারিক: পরামর্শের জন্য ধন্যবাদ, আমি এগুলি আমার অন্যান্য সাবমিশনেও প্রয়োগ করব। (আমি জানি না if i>0thenযে সংকলন করবে!)
প্যাট্রিকভিএল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.