দাবা স্কোয়ারের রঙ নির্ধারণ করুন


59

আপনার চ্যালেঞ্জটি এমন একটি প্রোগ্রাম লিখুন যা দাবাবোর্ড থেকে প্রদত্ত বর্গের রঙকে আউটপুট করে। দাবাবোর্ডটি এভাবে দেখায়:

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

আপনি দেখতে পারেন যে বর্গ a1 টি অন্ধকার এবং এইচ 1 একটি হালকা বর্গক্ষেত্র। আপনার প্রোগ্রামটির আউটপুট প্রয়োজন darkবা lightযখন একটি বর্গ দেওয়া হয়। কিছু উদাহরণ:

STDIN:  b1
STDOUT: light

STDIN:  g6
STDOUT: light

STDIN:  d4
STDOUT: dark

নিয়ম:

  • আপনাকে একটি সম্পূর্ণ প্রোগ্রাম সরবরাহ করতে হবে যা STDIN ব্যবহার করে এবং আউটপুট darkবা STDOUT ব্যবহার করে light
  • ধরে নিন যে ইনপুটটি সর্বদা বৈধ ( [a-h][1-8])
  • এটি , তাই সংক্ষিপ্ত পরিমাণে বাইট জয়!

স্কোরবোর্ড

var QUESTION_ID=63772,OVERRIDE_USER=8478;function answersUrl(e){return"http://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"http://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>


1
কেন কেউ <> ^ মাছ চেষ্টা করেননি?
ভূত_স_ই_কোড

উত্তর:


46

জিএস 2 , 17 15 বাইট

de♦dark•light♠5

উত্স কোডটি সিপি 437 এনকোডিং ব্যবহার করে । এটি অনলাইন চেষ্টা করুন!

প্রতিপাদন

$ xxd -r -ps <<< 6465046461726b076c696768740635 > chess.gs2
$ wc -c chess.gs2 
15 chess.gs2
$ gs2 chess.gs2 <<< b1
light

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

d               Add the code points of the input characters.
 e              Compute the sum's parity.
  ♦             Begin a string literal.
   dark
       •        String separator.
        light
             ♠  End the string literal; push as an array of strings.
              5 Select the element that corresponds to the parity.

8
এটা আশ্চর্যজনক! 9 অপরিবর্তনীয় বাইট সহ 3 বাইট আউটগল্ফিং পাইথ এবং সিজেম আশ্চর্যজনক।
isaacg

29
পবিত্র গরু, ছেলেরা, জিএস 2 হ'ল নতুন পাইথ! কেউ ডান্নির আগে এটি কীভাবে ভালভাবে ব্যবহার করবেন তা বুঝতে পারেন ... কিছু মনে করবেন না।
ইটিএইচ প্রডাকশন

56

পাইথন 2, 41 38 বাইট

print'ldiagrhkt'[int(input(),35)%2::2]

স্ট্রিং ইন্টারলেসিংয়ের জন্য মেগোকে 3 বাইট ধন্যবাদ

ইনপুট লাগে "g6"। এটি হালকা এবং গা dark় জড়িত।


স্ট্রিং ইন্টারলেসিংয়ের সাথে এটি কেবল দৃষ্টিনন্দন।
ওয়েইন ওয়ার্নার

5
আমি আসলে বলতে পারি যে int(input(),35)উজ্জ্বল অংশ। আমি স্ট্রিংটি ইন্টারলেসিংয়ের কথা ভেবেছিলাম তবে আপনার ইনপুট পদ্ধতিটি সর্বাধিক বাইট সংরক্ষণ করে।
mbomb007

26

হেক্সাগনি , 34 32 বাইট

,},";h;g;;d/;k;-'2{=%<i;\@;trl;a

উদ্ঘাটিত করা হয়েছে এবং টীকাযুক্ত কার্যকরকরণের পাথ সহ:

এখানে চিত্র বর্ণনা লিখুন
টিমভিয়ের আশ্চর্যজনক হেক্সাগনি কলরারের সাহায্যে চিত্রটি তৈরি করা হয়েছে ।

বেগুনি পথটি প্রাথমিক পথ যা দুটি অক্ষর পড়ে, তাদের পার্থক্যটি গণনা করে এবং এটি মডিউল 2 গ্রহণ করে The <এরপরে একটি শাখা হিসাবে কাজ করে, যেখানে গা gray় ধূসর পথ (ফলাফল 1) মুদ্রণ করে darkএবং হালকা ধূসর পথ (ফলাফল 0) মুদ্রণ করে light

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

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

মেমরি পয়েন্টারটি প্রান্তের লেবেলযুক্ত সারি থেকে শুরু হয় , যেখানে আমরা অক্ষরটি পড়ি। }প্রান্তে লেবেলযুক্ত কর্নালে চলে যায় , যেখানে আমরা অঙ্কটি পড়ি। দুটির পার্থক্যের গণনা করে যেখানে "প্রান্তের লেবেলযুক্ত ডিফারে চলে যায় -'লেবেল বিহীন সেল যেখানে আমরা লাগাতে প্যাচসমূহ 2, এবং {=সেল লেবেল থেকে প্যাচসমূহ গেলিক ভাষার যেখানে আমরা সঙ্গে মডিউল গনা %

এটি কয়েকটি বাইট দ্বারা কিছুটিকে পুনরায় ব্যবহার করে গল্ফযোগ্য হতে পারে ;তবে আমি সন্দেহ করি যে এটি অনেকগুলি দ্বারা গল্ফ করা যেতে পারে, অবশ্যই পাশের দৈর্ঘ্য 3 এ নিচে নয়।


7
ওহ, সুন্দর রঙ!
সেলো

1
এই ভাষাটি আমার কাছে নতুন তবে আমি যতটা সম্ভব
ভাবনার

18
আমি সত্যিই এই সমস্ত গল্ফ ভাষা পাই না।
জুনিয়ররুবিস্ট

4
@ কোডসউইফট 4 লাইফ হেক্সাগনি গল্ফ করার ভাষা থেকে দূরে। এর মতো তুচ্ছ কাজের জন্য এটি যুক্তিসঙ্গতভাবে প্রতিযোগিতামূলক হতে পারে, কারণ এতে সিঙ্গল-ক্যারেক্টার কমান্ড রয়েছে তবে এটি বেফুঞ্জ, পিট,> <> সহ অন্যান্য 2 ডি ভাষাগুলির দ্বারা ভাগ করা আরও বেশি প্রয়োজনীয় । হেক্সাগনির অদ্ভুত স্মৃতি মডেলের কারণে যে কোনও অনানুষ্ঠানিক কাজের জন্য খুব বড় পরিমাণে কোড এবং জটিল প্রোগ্রামের প্রয়োজন হবে। এটি কোনওভাবেই সংক্ষিপ্ত ভাষা হিসাবে বোঝানো নয়, বরং একটি বহিরাগত এবং উদ্ভট ভাষা, ষড়ভুজীয় গ্রিডগুলিতে প্রোগ্রামিং অন্বেষণ করে।
মার্টিন ইন্ডার

3
@ কিউইউআর আমি ভেবেছিলাম যে এটি অনুমোদিত হওয়ার বিষয়টি Esolangs এর মূল বিষয়। ;)
মার্টিন এন্ডার

21

সিজেম, 18 বাইট

r:-)"lightdark"5/=

অনলাইন ডেমো

ব্যবচ্ছেদ

r               e# Read a token of input
:-              e# Fold -, giving the difference between the two codepoints
)               e# Increment, changing the parity so that a1 is odd
"lightdark"5/   e# Split the string to get an array ["light" "dark"]
=               e# Index with wrapping, so even => "light" and odd => "dark"

34
আপনার কোডটি হাসছে:-)
ডোরকনব

8
আমি সমান কার্যকর হিসাবে বিবেচনা করেছি:^)
পিটার টেলর

2
আপনি কীভাবে এটি কাজ করে তা ব্যাখ্যা করতে পারেন।
ফোগমিস্টার

@ ফগমিস্টার, ব্যাখ্যা যুক্ত করেছেন।
পিটার টেলর

17

সেড, 37

s/[1357aceg]//g
/^.$/{clight
q}
cdark

ব্যাখ্যা

s/[1357aceg]//gসমস্ত বিজোড়-সূচকযুক্ত স্থানাঙ্কগুলি সরিয়ে দেয়। ফলস্বরূপ প্যাটার্ন বাফারের "হালকা" জন্য দৈর্ঘ্য 1 বা "অন্ধকার" এর জন্য 0 বা 2 দৈর্ঘ্য। /^.$/1 দৈর্ঘ্যের নিদর্শনগুলির সাথে cমেলে, প্যাটার্নটিকে "হালকা" এবং quits- এ ঝুলিয়ে তোলে। অন্যথায় cনিদর্শনটিকে "অন্ধকার" এ ঝুলানো হয়েছে।


qঅপ্রয়োজনীয়, এবং আপনি যদি এর পরিবর্তে সঙ্গে অন্ধকার প্রথম পরীক্ষা করতে পারবেন /../, tio.run/##K05N@f@/WD/a0NjUPDE5NT1WXz@dS19PTz85JbEomys5JzM9o@T//...
Kritixi Lithos

14

পাইথ, 18 বাইট

@c2"lightdark"iz35

ইনপুটটিকে বেস 35 নম্বর হিসাবে ব্যাখ্যা করুন, lightdarkঅর্ধেকে কেটে মুদ্রণ করুন।


13

শ্যাডিএসফাক, 91 বাইট / ব্রেনফাক, 181 বাইট

আমার প্রথম আসল ব্রেইনফাক প্রোগ্রাম, সাহায্যের জন্য এবং আমাকে অ্যালগরিদম সংরক্ষণাগারটিতে দেখানোর জন্য মেগোকে ধন্যবাদ জানাই। (এর অর্থ আমি নিজে থেকে এটি নিজে করিনি, তবে বিদ্যমান কিছু অ্যালগরিদম অনুলিপি করেছেন Still তবুও একটি অভিজ্ঞতা =)

NKnmWs3mzhe5aAh=heLLp5uR3WPPPPagPPPPsuYnRsuYgGWRzPPPPlMlk_PPPPPP4LS5uBYR2MkPPPPPPPP_MMMkLG]

এটি অবশ্যই আমার ব্রেইনফাক উত্তরগুলি থেকে অনুবাদ:

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

এই দোভাষী / ডিবাগার ব্যবহার করে বিকাশ হয়েছে ।

আমি এখান থেকে divmodএবং এর জন্য দুটি কোড স্নিপেট চুরি করেছি (@ মেগোকে ধন্যবাদ!)if/else

,>,               read input
[<+>-]            add
++<               set second cell to 2 

এখন আমাদের >sum 2ঘরে কনফিগারেশন রয়েছে এখন আমরা ডিভোড অ্যালগরিদম সম্পাদন করছি:

[->-[>+>>]>[+[-<+>]>+>>]<<<<<]>
[-]>

ডিভোমডের আউটপুটটি দেখতে এইরকম দেখাচ্ছে 0 d-n%d >n%d n/dতবে আমরা শূন্য করেছি d-n%dএবং পরের ঘরটিও শূন্য করছি:

>[-]

100সহজ আউটপুটিংয়ের জন্য মানটিতে একটি ঘর পূরণ করুন :

++++++++++[>++++++++++<-]< 

এখন কনফিগারেশনটি রয়েছে >cond 0 100এবং if/elseঅ্যালগরিদম প্রয়োগের জন্য আমাদের দুটি টেম্প ভেরিয়েবলের প্রয়োজন, তাই আমরা কনফিগারেশনটি বেছে নিইtemp0 >c temp1 100

c[<temp0+>>temp1+<c-]<temp0[>c+<temp0-]+
>>temp1[
 #>++++++++.---.--.+.++++++++++++.<         outputs light
 <<temp0-
>>temp1[-]]
<<temp0[
 #>>>.---.+++++++++++++++++.-------.<<<     outputs dark
temp0-]

12

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

print'dlairgkh t'[sum(map(ord,input()))%2::2]

ইনপুট লাগে "a1"এটি অনলাইনে চেষ্টা করুন


মুদ্রণের জন্য পেরেনের অভাবের কারণে এটি পাইথন 3 এ কাজ করবে না।
isaacg

এই মুহূর্তে পরীক্ষা করা যায় না তবে "ldiagrhgt"[expression::2]দু'জন বাইট সংরক্ষণের সময় এমন কিছু কাজ করা উচিত
FryAmTheEggman

12

সিরিয়াসলি , 19 বাইট

"dark""light"2,O+%I

ইনপুট লাগে "a1"

এটি অনলাইনে চেষ্টা করে দেখুন (আপনাকে ম্যানুয়ালি ইনপুট প্রবেশ করতে হবে; পারমালিঙ্কগুলি উদ্ধৃতি পছন্দ করে না)


2
অনলাইন লিংক ডেড ..
ক্যালকুলেটরফলাইন 21

10

ট্যুরিং মেশিন কোড, 235 বাইট

এখানে সংজ্ঞায়িত নিয়ম টেবিল সিনট্যাক্স ব্যবহার করে

0 a _ r 1
0 c _ r 1
0 e _ r 1
0 g _ r 1
0 * _ r 2
1 2 _ r 3
1 4 _ r 3
1 6 _ r 3
1 8 _ r 3
2 1 _ r 3
2 3 _ r 3
2 5 _ r 3
2 7 _ r 3
* * _ r 4
3 _ l r A
A _ i r B
B _ g r C
C _ h r D
D _ t r halt
4 _ d r E
E _ a r F
F _ r r G
G _ k r halt

1
এটি সম্ভবত আমি সবচেয়ে আশ্চর্যজনক জিনিসটি হ'ল লুলাস
লুভাস


9

টিআই-বেসিক, 66 বাইট

একটি টিআই -৪৪ + ক্যালকুলেটর পরীক্ষিত।

Input Str1
"light
If inString("bdfh",sub(Str1,1,1)) xor fPart(.5expr(sub(Str1,2,1
"dark
Ans

এখানে তৃতীয় লাইনে আরও আকর্ষণীয় প্রকরণ রয়েছে যা দুঃখজনকভাবে একই আকারের:

Input Str1
"dark
If variance(not(seq(inString("bdfh2468",sub(Str1,X,1)),X,1,2
"light
Ans

আপনি ভাবেন যে টিআই-বেসিক এই চ্যালেঞ্জের সাথে মার্জিত হবে, কারণ এতে মডুলো ২ রয়েছে It's এটি নয়; এই সমাধানগুলি সবচেয়ে কম সম্ভব বলে মনে হচ্ছে।

স্ট্রিংয়ে উভয় চরিত্র পেতে আমরা প্রচুর বাইট ব্যয় করি তবে সত্যিকারের ব্যয় হ'ল তেরো বাইট ছোট ছোট অক্ষর।


9

বেফুঞ্জ -৩৩ , 39 37 33 31 বাইট

সমস্ত ক্রেডিট লিনাস যারা প্রস্তাব এই 31-বাইট সমাধান:

<>:#,_@  v%2-~~
"^"light"_"krad

এই দোভাষী ব্যবহার করে এটি পরীক্ষা করুন ।

ব্যাখ্যা

<        v%2-~~

<শুরুতে বাম, যেখানে এটি ডান দিকে কাছাকাছি গোপন করার নির্দেশ পয়েন্টার পাঠায়। তখনই হওয়া ASCII হিসাবে ইনপুট থেকে দুই অক্ষর লেখা, তাদের subtracts এবং 2. হিসাবে দ্বারা একটি মডিউল করে aএবং 1উভয় বিজোড় (ASCII কোড পদ) এই কাজ করে থাকে। vনিম্নগামী নির্দেশ পয়েন্টার পুননির্দেশনা ...

"^"light"_"krad

... এর দিকে _, যা স্ট্যাকের শীর্ষটি 0 এবং অন্যথায় ডানদিকে বাম দিকে নির্দেশিকা নির্দেশক প্রেরণ করে। যথাক্রমে "হালকা" বা "গা dark়" বর্ণের অক্ষরগুলি বিপরীত ক্রমে স্ট্যাকের উপরে ধাক্কা দেওয়া হয়। উভয় পাথ ^বাম দিকে আঘাত করে , যা নির্দেশ পয়েন্টারটিকে উপরের দিকে প্রেরণ করে ...

 >:#,_@

... আউটপুট বিভাগে। :স্ট্যাকের #শীর্ষটিকে নকল করে, উপরের ,দিকে এবং উপরে লাফ দেয় _, যা স্ট্যাকের শীর্ষটি 0 এবং অন্যথায় বামে থাকলে নির্দেশ পয়েন্টারটি ডানদিকে প্রেরণ করে। স্ট্যাকটি খালি হলে, স্ট্যাকের শীর্ষ (পরে :) 0 হয়, সুতরাং নির্দেশিকা পয়েন্টারটি আঘাত করে @যা কার্যকর করে বন্ধ করে দেয়। অন্যথায়, এটি হিট করে ,, যা একটি চরিত্র হিসাবে স্ট্যাকের শীর্ষটিকে আউটপুট করে এবং তারপরে #এটিকে লাফিয়ে লাফিয়ে :ontoুকে যায় >, যা প্রক্রিয়াটি আবার শুরু করে।


rad"v>"kএকটি জায়গা ছাড়া একটি বাইট সংরক্ষণ ?
লিনাস

@ লিনাস: "স্থানটি প্রয়োজনীয় কারণ অন্যথায় আউটপুট হবে dar k।" এটি লিঙ্কযুক্ত অনলাইন দোভাষীতে চেষ্টা করুন।
এল'ইনিয়া স্টারম্যান

1
আপনার অধিকার. যাইহোক, আমি বেফুঞ্জে এটি করতে যাচ্ছিলাম তবে আমি কেবল আপনার অধীনে 2 বাইট পেতে পারি ... <>:#,_@ v%2-~~\n"^"light"_"krad, নতুন লাইনটি ঠিক করুন।
লিনাস

@ লিনাস: এটি দুর্দান্ত। ধন্যবাদ!
এল'েন্ডিয়া স্টারম্যান

পছন্দ করুন আপনি বাতলান এই মূল Befunge-93 ব্যাখ্যাকারী কাজ করে না ঠিক বলেছ, প্রকৃত বৈশিষ্ট একটি 80x25 টরাসের জন্য। আপনি নিজের সংস্করণটির নিজস্ব উত্তর হিসাবে পোস্ট করতে এবং পার্থক্যটি ব্যাখ্যা করতে চাইতে পারেন। আমি মনে করি কমপক্ষে এটি আমার সাথে বছরের পুরানো শখের কোডটি বিতর্কের চেয়ে আরও কার্যকর হবে be
লিনাস

8

জাপট , 23 22 বাইট

Japt একটি সংক্ষিপ্ত সংস্করণ জা vaScri পর্তুগীজ ভাষায়অনুবাদক

Un19 %2?"dark":"light"

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

          // Implicit: U = input string
Un19      // Convert U from a base 19 number to decimal.
%2        // Take its modulo by 2.
?"dark"   // If this is 1, return "dark".
:"light"  // Else, return "light".
          // Implicit: output last expression

নতুন সংস্করণ 0.1.3 ব্যবহার করে (22 নভেম্বর প্রকাশিত), এটি 17 বাইট হয়ে যায় , জিএস 2 ব্যতীত সকলের চেয়ে ছোট:

Un19 %2?`»rk:¦ght

বা, বিকল্পভাবে, একটি যাদু সূত্র: (26 বাইট)

Un19 %2*22189769+437108 sH
Un19 %2                    // Convert input to base 19 and modulo by 2.
       *22189769+437108    // Where the magic happens (top secret)
                        sH // Convert to a base 32 string.

8

জাভা, 157 127 124 বাইট

interface L{static void main(String[]a){System.out.print(new java.util.Scanner(System.in).nextInt(35)%2>0?"dark":"light");}}

আপনি interface i{static void main
এটির

7

টিস্ক্রিপ্ট , 23 বাইট

®x,35)%2?"dark":"light"

দুর্ভাগ্যক্রমে স্ট্রিংগুলি darkএবং lightসংকুচিত করা যায় না।


হেই , জাপট একবারের জন্য খাটো ;) +1 তবে জেএস সংক্ষেপণের কৌশলগুলি দুর্দান্ত! আমি দোভাষী সংশোধন করার পরে এগুলি জাপটে যুক্ত করতে পারি।
ইটিএইচ প্রডাকশনগুলি

7

রুবি, ৪৪ ৩৩ বাইট আউট করেছেন

puts %w[light dark][gets.to_i(19)%2]

আপনি (কোনও স্থান নেই) puts দিয়ে প্রতিস্থাপন করে একটি বাইট সংরক্ষণ করতে পারেন $><<
লিন

@ মাউরিস আমি জানি, তবে আমার শেষ হওয়া
নিউলাইনটি

আপনি পরিবর্তন করে 3 বাইট সংরক্ষণ করতে পারবেন putsজন্যp
Cyoce

7

সি, 55 বাইট

s;main(){puts(strtol(gets(&s),0,19)&1?"light":"dark");}

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

প্রচুর গল্ফিং টিপসের জন্য ধন্যবাদ ডিজিটালট্রামা


আমার মনে হয় আপনার (পরে puts
স্তরের

55 এই: s;main(){puts(strtol(gets(&s),0,19)&1?"light":"dark");}। ধরে নেওয়া হয় যে পূর্ণসংখ্যার প্রস্থ 3 অক্ষরের স্ট্রিং ধরে রাখতে যথেষ্ট বড়। আপনার main(s){puts(strtol(gets(&s),0,19)&1?"light":"dark");}54 টির জন্যও সক্ষম হবেন , যদিও কোনও কারণে () যদি আবর্জনা ফেরা করে sতবে তা বিশ্বব্যাপী নয় so
ডিজিটাল ট্রমা

ওহ বাহ, বেস -19। চালাক।
ফ্লফি

7

বোটেঞ্জাইন , 165 14x11 = 154

v acegbdfh
>ISSSSSSSS
 v<<<<>v<<P
vS1   vS2ke
vS3   vS4re
vS5   vS6ae
vS7   vS8de
>     >   ^
>     >  v
^S2   ^S1el
^S4   ^S3ei
^S6  P^S5eg
^S8 te^S7eh
     ^   <

এখানে হাইলাইট করা বিভিন্ন পাথ বিভাগগুলি রয়েছে:

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

(স্থান ব্যতীত অন্য কোনও অক্ষর নির্দেশাবলী eএবং Sনির্দেশাবলীর জন্য আর্গুমেন্ট হিসাবে পরিবেশন করে - এই নির্দেশাবলীর প্রত্যেকটিই তার বাম হিসাবে প্রতীকটি বামে (বটটির ভ্রমণের দিকের সাথে সম্পর্কিত) ব্যবহার করে)


7

26, 26 অক্ষর / 34 বাইট

ô(שǀ(ï,ḣ)%2?`dark`:`light”

Try it here (Firefox only).


1
আরও বাইট
লাগলে

1
আমি এই মুহুর্তে বাইটের চেয়ে চরগুলি নিয়ে বেশি চিন্তিত। আমি সম্পূর্ণরূপে বাইট গণনাটি olf ... এ গলফ করার চেষ্টা ছেড়ে দিয়েছি
মামা ফান রোল

1
আমরা সর্বদা বাইট দ্বারা স্কোর করি, এবং এটি প্রায়শই একটি গৌণ উদ্দেশ্যটির জন্য অনুকূল করা আকর্ষণীয় হলেও মনে রাখবেন যে সর্বনিম্ন বাইট সর্বদা জয়ী হয়।
lirtosiast

হ্যাঁ, আমি এটি বুঝতে পারি। আমি যদিও যতটা জয়ের পক্ষে আসলেই লক্ষ্য রাখছি না।
মামা ফান রোল

7

সি, 49 বাইট

main(c){gets(&c);puts(c+c/256&1?"light":"dark");}

না, এটি সংকলন করে না।
xsot

ওহ, আমার খারাপ, আমি অন্য কিছু নিয়ে ঝিমঝিম করেছিলাম। আউটপুট ভুল, যদিও । আমার মনে হয় তুমি করতে চাও gets(&c)%256+c/256?
লিন

ওহ, ভাল ক্যাচ যদিও এই মুহুর্তে, আমার সমাধানটি আপনার চেয়ে কঠোরতর খারাপ কারণ আমরা একই কৌশল ব্যবহার করছি। দেখে মনে হচ্ছে আমার কাছে প্রচুর শেখার আছে।
xsot

দেখা যাচ্ছে যে ভুল আউটপুট এর রিটার্ন মান দ্বারা হয়েছিল gets(&c)। আমি সেই অনুযায়ী আমার জমা আপডেট করেছি।
xsot

7

Clojure, 63 বাইট

(pr (['light 'dark] (mod (Integer/parseInt (read-line) 35) 2)))
  • আমরা স্টিডিনের সাথে একটি লাইনে পড়ি (পঠন-রেখা)
  • তারপরে JVM পদ্ধতিতে একটি কল ব্যবহার করে স্ট্রিংটি বেস 35-তে পূর্ণসংখ্য মান হিসাবে পার্স করুন
  • ফলাফল 2 মোড গ্রহণ করে আমাদের জানায় যে এটি সমান বা বিজোড়
  • মডিউল ফাংশন থেকে ফিরে আসা ফলাফলটি অনুক্রমের সূচক হিসাবে ব্যবহার করুন এবং এটি মুদ্রণ করুন

আমি একক উদ্ধৃতি দিয়ে "হালকা" এবং "গা dark়" উল্লেখ করে একটি যোগ্য 2 বাইট সংরক্ষণ করি যাতে ক্লোজুর একে শাব্দিক হিসাবে গ্রহণ করে, প্রতিটি শব্দেরকে একজোড়া উদ্ধৃতি চিহ্নের মোড়কের বিপরীতে। আমি প্রিন্টলান না করে জনসংযোগ ব্যবহার করে কিছু বাইটও সঞ্চয় করি।

ক্লোজুরেতে উদ্ধৃতি সম্পর্কিত কিছু তথ্য


প্রোগ্রামিং ধাঁধা এবং কোড গল্ফ স্বাগতম! এটি একটি সুন্দর প্রথম উত্তর। :) আমি ক্লোজুরের সাথে খুব বেশি পরিচিত নই; আপনি একটি ব্যাখ্যা যোগ করতে আপত্তি হবে?
অ্যালেক্স এ।

কাফনের কাপড়! এই নাও. যদি আপনার কোন প্রশ্ন থাকে তাহলে আমার জানতে দিন!
MONODA43


5

সি, 46 বাইট

main(c){gets(&c);puts(c%37%2?"light":"dark");}

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

ব্যাখ্যা

cহয় argc, তাই প্রাথমিকভাবে এটি ধারণ করে 01 00 00 00getsদুটি অক্ষর পড়বে, বলবে a (0x61)এবং সেগুলিতে 1 (0x31)সংরক্ষণ করবে c, যা এখন

61 31 00 00

0x3161 বা 12641 নম্বর উপস্থাপন করে।

মূলত, প্রদত্ত এই সমস্যায়, c = x + 256*yআমরা গণনা করতে চাই (x + y) mod 2এবং সেই অনুযায়ী একটি স্ট্রিং মুদ্রণ করতে চাই । এটি করার জন্য, আমি c % 255 % 2তখনও লিখতে পারতাম

  (x + 256 * y) % 255 % 2
= (x % 255 + y % 255) % 2      since 256 ≡ 1 (mod 255)
= (x + y) % 2                  since 0 < x, y < 255

তবে, 37এছাড়াও কাজ করে:

  (x + 256 * y) % 37 % 2
= (x % 37 - 3 * (y % 37)) % 2  since 256 ≡ -3 (mod 37)

x49-57 সমেত (1-8 অঙ্কগুলি) এর মধ্যে রয়েছে x % 37 == x - 37

y97-104 ইনক্লুসিভ (লোয়ারকেস এহ) এর সীমার মধ্যে রয়েছে, তাই y % 37 == y - 74

এর অর্থ আমরা সহজ করতে পারি

= (x - 3 * y + 185) % 2
= (x + y + 1) % 2              since -3 ≡ 185 ≡ 1 (mod 2)

এবং সাম্যটির জন্য সঠিকভাবে স্ট্রিংগুলি ফ্লিপ করুন।


5

বিম , 127 বাইট

rSr>`+v
   ^  )
n(`)nS<
    >L'''''>`+++++)S>`+++)@---@'''>`+++++)++@-------@H
>L'''''>`+++)S>`++++++)+++@---@--@+@'''>`++++)@H

একটি ব্যাখ্যা এখানে চিত্র বর্ণনা লিখুন হালকা নীল - বিমের ইনপুট থেকে একটি অক্ষর পড়ুন, স্টোরের মধ্যে মরীচি মানটি সংরক্ষণ করুন, বিমের ইনপুট থেকে একটি অক্ষর পড়ুন।

গাark় নীল - মরীচি বাড়ানোর সময় 0 টি স্টোরকে হ্রাস করে বিমের সাথে স্টোর যুক্ত করে

হালকা সবুজ - একটি এমনকি বিজোড় পরীক্ষামূলক গঠন। ল্যামটি বামে প্রস্থান করা হবে যদি বিমটি সমান হয় বা বিজোড় হলে ডানদিকে যায়।

গা green় সবুজ - আউটপুট অন্ধকার

ট্যান - আউটপুট হালকা


5

, 22 17 বাইট

আমি # 2% "light'dark"?

এটি কোনও অতিরিক্ত সুবিধা ছাড়াই যা করার প্রয়োজন তা করে।


5

ল্যাবরেথ , 48 46 45 42 বাইট

দুটি বাইট সংরক্ষণের জন্য Sp3000 ধন্যবাদ।

-,"
#
%0:::8.5.3.4.116.@
1
00.97.114.107.@

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

ব্যাখ্যা

কোডের শুরুটি একটি মজার শেষ is মনে রাখবেন যে স্ট্যাকের নীচে অপারেশনগুলির প্রয়োজন হলে ল্যাবরেথ অসীম সংখ্যক শূন্যকে ধরে নেয়। কোডটি একটি -ডানদিকে যেতে শুরু করে , যা দুটি সংখ্যা বিয়োগ করার চেষ্টা করে, তাই স্ট্যাকটি হয়ে যায়:

[ ... 0 ]

তারপরে ,প্রথম চরিত্রটি পড়ে, aবলুন:

[ ... 0 97 ]

"কোন সমিতি, কিন্তু এই একটি মৃত শেষ তাই নির্দেশ পয়েন্টার প্রায় একবছর এবং বাম যাচ্ছে শুরু হয়। তারপরে `অন্য চরিত্রটি পড়ুন, 2বলুন:

[ ... 0 97 50 ]

এবার, এই -দুটি সংখ্যাটি বিয়োগ করে:

[ ... 0 47 ]

আইপি এখন "করিডোর" এর বাঁক অনুসরণ করে। অন্তর্ভুক্ত #শূন্যগুলি উপেক্ষা করে স্ট্যাকের গভীরতা পাওয়া যায় যা সহজেই ঘটে 2:

[ ... 0 47 2 ]

এবং %মডুলো গণনা:

[ ... 0 1 ]

এই মুহুর্তে, আইপি একটি সংযোগস্থলে রয়েছে। যদি স্ট্যাকের শীর্ষটি শূন্য হয় তবে এটি সোজা এগিয়ে যাবে, যেখানে 100.97.114.107.@মুদ্রণ করে dark। তবে যদি স্ট্যাকের শীর্ষটি শূন্য হয় না (বিশেষত, 1), এটি ডানদিকে চলে যাবে, যেখানে 0:::8.5.3.4.116.@মুদ্রণ light(মনে রাখবেন যে আমরা অগ্রণীকে বাদ দিতে পারি 1, কারণ ইতিমধ্যে 1স্ট্যাকের উপর একটি ইতিমধ্যে রয়েছে , এবং আমরা পুনরাবৃত্তিতে সংরক্ষণ করতে পারি 10মধ্যে 108, 105, 103, 104কয়েক কপি করে 10যখন আমরা প্রথম সেখানে পেতে)।


4

মতলব, 51 বাইট

আমি মনে করি না এর কোনও ব্যাখ্যা দরকার =)

a={'light','dark'};disp(a(2-mod(sum(input('')),2)))

4

> <> , 31 বাইট

ii+2%?\"krad"oooo;
l"oc0.\"thgi

এখানে আমি ভাবছি "এখানে আরও ভাল উপায় হতে পারে ..."


4

পার্ল, 29 27 বাইট

$_=/./&($'+ord)?light:dark

এই কোডটির জন্য -pস্যুইচ দরকার যা আমি 1 বাইট হিসাবে গণনা করেছি।

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

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

  • -pস্যুইচটির কারণে , পার্ল ইনপুটগুলির একটি লাইন পড়ে এবং এটি সঞ্চয় করে $_

  • /./একটি নিয়মিত প্রকাশ যা একটি চরিত্রের সাথে মেলে। এর দুটি জড়িত প্রভাব রয়েছে:

    • ম্যাচটি যেহেতু সফল, তাই /./প্রত্যাবর্তন 1

    • ম্যাচ পরবর্তী পোস্ট (দ্বিতীয় ইনপুট অক্ষর) এতে সঞ্চিত থাকে $'

  • $'+ordপূর্ণসংখ্যা যোগ করে দ্বিতীয় ইনপুট অক্ষর অন্তর্ভুক্ত ordভেরিয়েবলের প্রথম অক্ষরের কোড পয়েন্ট ( ) উপস্থাপন করে $_

  • &/./যোগফলের সমষ্টি এবং সমষ্টিটির বিটওয়্যার এবং সংখ্যায় নিয়ে যায় $'+ord, 1 প্রদান করা সমষ্টিটি বিজোড় হলে যোগফল হয়, 0 হয় এমনকি যদি হয়।

  • ?light:darkআয় আলো যদি পূর্ববর্তী অভিব্যক্তি ফিরে 1 এবং অন্ধকার অন্যথায়।

  • পরিশেষে $_=ফলাফলটি বরাদ্দ করে $_, যা পার্ল স্বয়ংক্রিয়ভাবে মুদ্রণ করে, কারণ -p স্যুইচ।

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