Not: Bu zorluk HTML web sayfalarını indirmeyi ve elemeyi içerir. Diliniz bu sorunu çözemezse, bu zorluğa katılmak istemeyebilirsiniz.
Giriş
Ondokuzuncu Byte Sohbeti'nde sancağa kimin liderlik ettiği hakkında tartışmalar her zaman vardır . Böylece, herkesin sohbet etmesine ve kullanıcı başına toplam yıldız sayısını saymasına yardımcı olalım.
Meydan okuma
N
Sıfırdan büyük bir pozitif tamsayı verildiğinde N
, sohbette son yıldızlı iletilerin sancak liderlerini hesaplayın . Bu mesajlar burada görüntülenebilir . İpucu: her sayfada 50 yıldızlı mesaj bulunur. Çıktı , yıldızlı iletilerin miktarına göre ilk 5 kullanıcının bir listesi olacaktır . Bu kullanıcıların kullanıcı adlarını görüntüleyebiliyorsanız, bayt sayınızda% -15 indirim bonusu verilir, ancak yalnızca kullanıcı kimlik numaralarını görüntülerseniz ceza verilmez. Yıldızlı mesajların bazılarında küfür bulunduğunu lütfen unutmayın. Bu tür bir dile duyarlıysanız, sayfayı dikkatle görüntüleyin.
Örnekler (Görüntü, bu zorluğu yazarken geçerli sancaktır):
- (RED) Giriş:
5
Çıkış (Bonus ile):[Geobits Sp3000 PhiNotPi Seadrus]
- (MAVİ) Giriş:
10
Çıkış (Bonussuz):[51024 17335 24697 116494 129255]
- (YEŞİL) Giriş:
14
Çıkış (Bonus olmadan):[51024 116494 141697 17335 24697]
Ekstra şeyler:
İlk 5'teki bağlar en düşük ila en yüksek kullanıcı kimlik numarasına göre sıralanır . Beşten az kullanıcı varsa, skor tablosunu sonunda boş yuvalarla çıkarmanız yeterlidir . Giriş ve çıkış herhangi bir biçimde olabilir. Çıktının büyük harfle yazılmasına gerek yoktur. Giriş daha büyükse 50
, yine de sayfa 2, sayfa 3, vb. İçindeki mesajları saymanız gerekir. Girişin her zaman altında 2^31
olacağını ve o kadar büyük olmayacağını varsayabilirsiniz. 1) yıldızlı mesajların miktarından daha büyüktür. ve 2) programı çökmeyecek (dizileri büyük yaparak, bellek tükenerek, vb.).
Bu kod golf , bayt kazanır en kısa kod kazanır!
Liderler
İşte hem düzenli bir skor tablosu hem de kazananları dile göre gözden geçirmek için bir Yığın Parçacığı.
Yanıtınızın göründüğünden emin olmak için lütfen aşağıdaki Markdown şablonunu kullanarak yanıtınızı bir başlıkla başlatın:
## Language Name, N bytes
N
gönderiminizin büyüklüğü nerede . Puanınızı artırmak varsa, olabilir onları içinden vurarak, başlığa eski hesapları tutmak. Örneğin:
## Ruby, <s>104</s> <s>101</s> 96 bytes
Başlığınıza birden fazla sayı eklemek istiyorsanız (örneğin, puanınız iki dosyanın toplamı olduğu veya yorumlayıcı bayrak cezalarını ayrı olarak listelemek istediğiniz için), gerçek puanın başlıktaki son sayı olduğundan emin olun :
## Perl, 43 + 2 (-p flag) = 45 bytes
Dil adını, daha sonra skor tablosu snippet'inde görünecek bir bağlantı da yapabilirsiniz:
## [><>](http://esolangs.org/wiki/Fish), 121 bytes
var QUESTION_ID=62182,OVERRIDE_USER=36670;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>