在这个挑战中,我们将一起创建一个包含不同语言程序的单词搜索。
我从一个60乘25空白(·)的网格开始,其中一些被Ruby程序的字符所取代。
要回答,请选择一种尚未使用的语言。使用您选择的语言,编写一个从控制台读取字符、标记、行或所有输入的程序,并打印出来。然后,将你的程序插入单词搜索中。
例如,假设您选择Python3作为回答,并编写程序print(input())。现在你必须把这个程序插入到网格中。
如果答案之前的网格如下所示:
···a·24··········
··z····t·········然后,您只需将程序放在第二行,与现有的t重叠:
···a·24··········
··zprint(input())请注意,您可以将程序放置在任意方向:向前、向后、向上、向下或对角线,只要它处于直线上。
但是,如果现有的网格看起来像这样呢:
···a·24··········
··z····q·········如果不更改现有字符,就无法在这里安装print(input()),这是禁止的。相反,您可以更改程序:
print(
input())这个两行程序非常适合:
···a·24·print(···
··z····q input())在这里,用空格()替换空白(·)。但是,一个空格就像任何其他字符一样,不能在将来的程序中被覆盖。
就像一条直线,一个多行程序可以放置在任何方向.例如,在较大的网格中,您可以通过顺时针旋转程序135°来完成以下操作。
··········
········ ·
·······i·p
······n·r·
·····p·i··
····u·n···
···t·t····
··(·(·····
·)········
)·········每个答案的分数是30除以添加的字符数。不要计算网格中已经存在的字符,即使您自己使用它们。
你的总分是你所有答案的分数之和,乘以答案的数量。最高分获胜。
·)替换为您选择的字符。您可以在回答中使用来自网格的现有字符,但不得更改或移动其中任何字符。这是一个Stack片段,由ETHproductions、FryAmTheEggman和Mauris制作,可以跟踪用户的分数和使用的语言。它最初是从马丁·布特纳的惊人模板复制的。
原主板:
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,r){return"http://api.stackexchange.com/2.2/answers/"+r.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 r=+e.share_link.match(/\d+/);answer_ids.push(r),answers_hash[r]=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=[],r={},x={};answers.forEach(function(s){var a=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(a="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var n=a.match(SCORE_REG);if(n){var t=getAuthorName(s);e.push({user:getAuthorName(s),size:+n[2],language:n[1],link:s.share_link}),r[t]=r[t]||0,r[t]+=30/+n[2],x[t]=x[t]||0,x[t]++}});Object.keys(r).forEach(function(e){r[e]*=x[e]});var s=Object.keys(r).sort(function(e,s){return r[s]-r[e]});e.sort(function(e,r){var s=e.size,a=r.size;return s-a});var a={},t=null;e.forEach(function(e){t=e.size;var r=e.language;/<a/.test(r)&&(r=jQuery(r).text()),a[r]=a[r]||{lang:e.language,user:e.user,size:e.size,link:e.link}});for(var c=0,o=1;c<s.length;c++){var i=jQuery("#author-template").html();r[s[c]]!==r[s[c-1]]&&(o=c+1);i=i.replace("{{PLACE}}",o+'.').replace("{{NAME}}",s[c]).replace("{{SCORE}}",r[s[c]].toFixed(2)),jQuery("#authors").append(jQuery(i))}var u=[];for(var m in a)a.hasOwnProperty(m)&&u.push(a[m]);u.sort(function(e,r){var s=e.lang.replace(/<.*?>/g,"").toLowerCase(),a=r.lang.replace(/<.*?>/g,"").toLowerCase();return s>a?1:a>s?-1:0});for(var l=0;l<u.length;++l){var h=jQuery("#language-template").html(),m=u[l];h=h.replace("{{LANGUAGE}}",m.lang).replace("{{NAME}}",m.user).replace("{{SIZE}}",m.size).replace("{{LINK}}",m.link),h=jQuery(h),jQuery("#languages").append(h)}}var QUESTION_ID=57327,ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",OVERRIDE_USER=16294,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}#author-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="author-list"> <h2>Leaderboard</h2> <table class="author-list"> <thead> <tr><td></td><td>Author</td><td>Score</td></tr></thead> <tbody id="authors"> </tbody> </table> </div><div id="language-list"> <h2>Languages</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="author-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{SCORE}}</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>新的(实验)版本,使用修改后的公式:
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,r){return"http://api.stackexchange.com/2.2/answers/"+r.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 r=+e.share_link.match(/\d+/);answer_ids.push(r),answers_hash[r]=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=[],r={},x={};answers.forEach(function(s){var a=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(a="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var n=a.match(SCORE_REG);if(n){var t=getAuthorName(s);e.push({user:getAuthorName(s),size:+n[2],language:n[1],link:s.share_link}),r[t]=r[t]||0,r[t]+=30/+n[2]+20,x[t]=x[t]||0,x[t]++}});var s=Object.keys(r).sort(function(e,s){return r[s]-r[e]});e.sort(function(e,r){var s=e.size,a=r.size;return s-a});var a={},t=null;e.forEach(function(e){t=e.size;var r=e.language;/<a/.test(r)&&(r=jQuery(r).text()),a[r]=a[r]||{lang:e.language,user:e.user,size:e.size,link:e.link}});for(var c=0,o=1;c<s.length;c++){var i=jQuery("#author-template").html();r[s[c]]!==r[s[c-1]]&&(o=c+1);i=i.replace("{{PLACE}}",o+'.').replace("{{NAME}}",s[c]).replace("{{SCORE}}",r[s[c]].toFixed(2)),jQuery("#authors").append(jQuery(i))}var u=[];for(var m in a)a.hasOwnProperty(m)&&u.push(a[m]);u.sort(function(e,r){var s=e.lang.replace(/<.*?>/g,"").toLowerCase(),a=r.lang.replace(/<.*?>/g,"").toLowerCase();return s>a?1:a>s?-1:0});for(var l=0;l<u.length;++l){var h=jQuery("#language-template").html(),m=u[l];h=h.replace("{{LANGUAGE}}",m.lang).replace("{{NAME}}",m.user).replace("{{SIZE}}",m.size).replace("{{LINK}}",m.link),h=jQuery(h),jQuery("#languages").append(h)}}var QUESTION_ID=57327,ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",OVERRIDE_USER=16294,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}#author-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="author-list"> <h2>Leaderboard</h2> <table class="author-list"> <thead> <tr><td></td><td>Author</td><td>Score</td></tr></thead> <tbody id="authors"> </tbody> </table> </div><div id="language-list"> <h2>Languages</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="author-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{SCORE}}</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>为了确保您的提交被代码段识别,请使用以下头模板:
# Language, X characters added发布于 2015-09-08 20:43:32
趁还有地方的时候!
class C{public static void main(String[]a) throws Throwable{
System.out.println(new java.util.Scanner(System.in).next());
}}网格现在
····························································
···········i········a·······································
··········?pio;·····l·······································
··········,u········e·······································
··········.t········r·······································
··········@s········t·······································
··········· ··printf(·······································
···········g·· input('','s'))····························
···········e·····n··r·······································
········write(read-host)····································
·········E·s········m·······································
········C·E·········p·······································
·······H·T··········t·····················r·················
······O· ···········(·······································
····· ·/············)·······································
····%·P·············)·······································
···A· ······················································
··%·A·······················································
···=························································
{elbaworhT sworht )a][gnirtS(niam diov citats cilbup{C ssalc
;))(txen.)ni.metsyS(rennacS.litu.avaj wen(nltnirp.tuo.metsyS
··························································}}
····························································
····························································
····························································进行忍者编辑,并在网格中反转代码,因为OP声明代码可以向后移动。然后把它修改到下一个答案中
发布于 2015-09-08 20:55:39
再次为错过问题中的一项要求而感到抱歉。
这是我的新意见书:
s t=" " r t#50:20 w !,t,!这将t变量设置为空格,然后从标准输入中读取最多50个字符,用20秒超时写入换行符、变量,然后再写入另一个换行符。(如果你不这样做的话,很多腮腺炎终端机会变得有点混乱.)
网格现在是:
····························································
···········i········a·······································
··········?pio;·····l·······································
··········,u········e·······c·······························
··········.t········r·······a·······························
··········@s······s t=" " r t#50:20 w !,t,!·················
··········· ··printf(·······(·······························
···········g·· input('','s'))····························
···········e·····n··r·······c·······························
········write(read-host)····a·······························
·········E·s········m·······n·······························
········C·E·········p·······(·······························
·······H·T··········t·······,·············r·················
······O· ···········(·······'·······························
····· ·/············)·······'·······························
····%·P·············)·······)·······························
···A· ······················)·······························
··%·A·······················································
···=························································
{elbaworhT sworht )a][gnirtS(niam diov citats cilbup{C ssalc
;))(txen.)ni.metsyS(rennacS.litu.avaj wen(nltnirp.tuo.metsyS
··························································}}
····························································
····························································
····························································那份该死的R书让这件事更难写了.:-)
发布于 2015-09-08 22:52:06
Get a chr!
Outputs it
and 'BZam.(请解释:)
在5 chr!# score 8下得到一个#忽略的拼字值,输入一个字符并推送它的value输出# score 9,弹出一个数字并输出它的character it,#忽略它的分数低于5 'BZam。# score 17终止程序
新电网
·········v---H\·············································
·········>qir@uH····a·······································
Get a chr!?pio;·····l·······································
Outputs it,u········e·······c·······························
and 'BZam..t········r·······a·······························
··········@s······s t=" " r t#50:20 w !,t,!·················
··········· ··printf(·······(·······························
···········g·· input('','s'))····························
···········e·····n··r·······c·······························
········write(read-host)····a·······························
·········E·s········m·······n·······························
········C·E·········p·······(·······························
·······H·T··········t·······,·············r·················
······O· ···········(·······'·······························
····· ·/············)·······'·······························
····%·P·············)·······)·········1·····················
···A· ······················)········n······················
··%·A·······························-·······················
···=······························· ···$·d··················
{elbaworhT sworht )a][gnirtS(niam diov citats cilbup{C ssalc
;))(txen.)ni.metsyS(rennacS.litu.avaj wen(nltnirp.tuo.metsyS
································e···a·····················}}
·······························h···=························
··································<·························
·································>··························https://codegolf.stackexchange.com/questions/57327
复制相似问题