首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我们来找个词吧!

我们来找个词吧!
EN

Code Golf用户
提问于 2015-09-08 19:25:26
回答 40查看 5.4K关注 0票数 38

在这个挑战中,我们将一起创建一个包含不同语言程序的单词搜索。

我从一个60乘25空白(·)的网格开始,其中一些被Ruby程序的字符所取代。

要回答,请选择一种尚未使用的语言。使用您选择的语言,编写一个从控制台读取字符、标记、行或所有输入的程序,并打印出来。然后,将你的程序插入单词搜索中。

例如,假设您选择Python3作为回答,并编写程序print(input())。现在你必须把这个程序插入到网格中。

如果答案之前的网格如下所示:

代码语言:javascript
复制
···a·24··········
··z····t·········

然后,您只需将程序放在第二行,与现有的t重叠:

代码语言:javascript
复制
···a·24··········
··zprint(input())

请注意,您可以将程序放置在任意方向:向前、向后、向上、向下或对角线,只要它处于直线上。

但是,如果现有的网格看起来像这样呢:

代码语言:javascript
复制
···a·24··········
··z····q·········

如果不更改现有字符,就无法在这里安装print(input()),这是禁止的。相反,您可以更改程序:

代码语言:javascript
复制
print(
 input())

这个两行程序非常适合:

代码语言:javascript
复制
···a·24·print(···
··z····q input())

在这里,用空格()替换空白(·)。但是,一个空格就像任何其他字符一样,不能在将来的程序中被覆盖。

就像一条直线,一个多行程序可以放置在任何方向.例如,在较大的网格中,您可以通过顺时针旋转程序135°来完成以下操作。

代码语言:javascript
复制
··········
········ ·
·······i·p
······n·r·
·····p·i··
····u·n···
···t·t····
··(·(·····
·)········
)·········

评分

每个答案的分数是30除以添加的字符数。不要计算网格中已经存在的字符,即使您自己使用它们。

你的总分是你所有答案的分数之和,乘以答案的数量。最高分获胜。

规则

  • 每一个答案都必须用不同的语言写。只有版本号不同的语言(例如Python 2和Python 3)被认为是相同的。
  • 每一个答案都必须建立在最近有效答案的基础上。也就是说,以最近这样的答案的网格为例,并将您的程序插入其中。
  • 若要插入程序,请将至少一个空白(·)替换为您选择的字符。您可以在回答中使用来自网格的现有字符,但不得更改或移动其中任何字符。
  • 您不能在所有答案中总共插入超过500个字符。
  • 您插入的所有字符都必须是程序的一部分。
  • 您的程序可能只包含可打印的ASCII和换行符,但可能没有两个或多个连续的背对背换行符。
  • 新线不算你的分数。
  • 需要完整的程序,而不仅仅是函数或片段。
  • 同一个用户可能不会写出两个连续的答案。
  • 如果某人的回答违反了规则,请留下评论。如果错误未在30分钟内修复,则应予以删除。

使用的语言片段

这是一个Stack片段,由ETHproductions、FryAmTheEggman和Mauris制作,可以跟踪用户的分数和使用的语言。它最初是从马丁·布特纳的惊人模板复制的。

原主板:

代码语言:javascript
复制
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;
代码语言:javascript
复制
body{text-align:left!important}#author-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
代码语言:javascript
复制
<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>

新的(实验)版本,使用修改后的公式:

代码语言:javascript
复制
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;
代码语言:javascript
复制
body{text-align:left!important}#author-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
代码语言:javascript
复制
<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>

为了确保您的提交被代码段识别,请使用以下头模板:

代码语言:javascript
复制
# Language, X characters added
EN

回答 40

Code Golf用户

发布于 2015-09-08 20:43:32

Java,124个字符添加了

趁还有地方的时候!

代码语言:javascript
复制
class C{public static void main(String[]a) throws Throwable{
System.out.println(new java.util.Scanner(System.in).next());
}}

网格现在

代码语言:javascript
复制
····························································
···········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声明代码可以向后移动。然后把它修改到下一个答案中

票数 12
EN

Code Golf用户

发布于 2015-09-08 20:55:39

腮腺炎,23个字符添加了

再次为错过问题中的一项要求而感到抱歉。

这是我的新意见书:

代码语言:javascript
复制
s t=" " r t#50:20 w !,t,!

这将t变量设置为空格,然后从标准输入中读取最多50个字符,用20秒超时写入换行符、变量,然后再写入另一个换行符。(如果你不这样做的话,很多腮腺炎终端机会变得有点混乱.)

网格现在是:

代码语言:javascript
复制
····························································
···········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书让这件事更难写了.:-)

票数 11
EN

Code Golf用户

发布于 2015-09-08 22:52:06

巴特尼克,29个字符添加了

代码语言:javascript
复制
Get a chr!
Outputs it
and 'BZam.

(请解释:)

在5 chr!# score 8下得到一个#忽略的拼字值,输入一个字符并推送它的value输出# score 9,弹出一个数字并输出它的character it,#忽略它的分数低于5 'BZam。# score 17终止程序

新电网

代码语言:javascript
复制
·········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···=························
··································<·························
·································>··························
票数 10
EN
页面原文内容由Code Golf提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codegolf.stackexchange.com/questions/57327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档