Hepimiz bir boşluk olup olmadığını bize söyleyen motel işaretlerini gördük:
Tipik olarak, bunlar kalıcı olarak BOŞLUK harfleri yanacak ve motelde yer yoksa NO harfleri yanacaktır .
Meydan okuma
ABD'deki ortalama motel 200 odaya sahiptir.
Tek girdi olarak T tamsayısını (alınan odalar için) alan bir program / işlev yazacaksınız .
Programınız kelimeleri görüntüler NO VACANCY
. Harfleri VACANCY
kırmızı renkte yazdırılacaktır.
Eğer T ≥ 200, mektupları NO
da kırmızı renkte basılacaktır.
Örneğin, a.out
programınız ve "input" = komut satırı argümanınız olduğunu varsayarsak : (Ben yazdım ve sistemim büyük / küçük harf kullanımını yok sayar.)
Kurallar
- Programınız / işleviniz, büyük / küçük harf de dahil olmak üzere tam dizeyi görüntülemelidir (veya lambda ise döndürür )
NO VACANCY
. - Programınız / işleviniz metin ön plan rengini arka plana değil, yalnızca kırmızıya ayarlayabilir.
- İsterseniz, kırmızı rengi yazdırmak için ANSI kaçış kodlarını kullanabilirsiniz.
\x1b[31m
çalışacaktır. - Programınız / işleviniz, kabuğunuz bittikten sonra metin rengini değiştirmeyebilir.
- Programınız / işleviniz normal şekilde sona ermelidir.
- Programınız / işleviniz yalnızca standart çıktıya yazdırmalıdır.
- Programınız / işleviniz kabuk / terminal / IDE'nizin varsayılan arka plan rengini kullanmalıdır. (Grafiksel çıktı almayı seçerseniz, kırmızı hariç istediğiniz rengi seçebilirsiniz.)
- Eğer T ≤ 200, mektupları
NO
senin Kabuk / terminal / IDE varsayılan ön plan rengi basılmış olmalıdır. (Grafiksel çıktı almayı seçerseniz, istediğiniz rengi bir kez daha seçebilirsiniz) - Herhangi bir nedenle kabuğunuzun / terminalinizin / IDE'nizin varsayılan ön plan / arka plan rengi kırmızı ise, siyah bir arka plan ve varsayılan bir beyaz ön plan ile yazdırmalısınız.
- Grafiksel çıktı kullanmayı seçerseniz, kırmızı yalnızca programda belirtildiğinde kullanılabilir (örn. Arka plan renginiz veya varsayılan metin renginiz kırmızı olmayabilir).
Kazanan
Her zaman olduğu gibi kod golfü ile en kısa program kazanıyor! Grafik çıktısı için Brownie noktaları.
Bir hafta içinde en kısa cevabı kabul edeceğim. Mutlu golf!
Liderler Sıralaması
var QUESTION_ID=123146,OVERRIDE_USER=61563;function answersUrl(e){return"https://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"https://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>