var QUESTION_ID=83814,OVERRIDE_USER=20260;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/83814/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>
Antworten:
Gelee , 9 Bytes
Probieren Sie es online! oder überprüfen Sie alle Testfälle .
Wie es funktioniert
quelle
[bytes](link-to-byes) (not UTF-8)
.PARI / GP, 12 Bytes
core
gibtn
standardmäßig den quadratfreien Teil von zurück, aber wenn Sie das zweite Argument-Flag auf 1 setzen, werden beide Teile zurückgegeben. Ausgabereihenfolge ist(b, a)
z(n->core(n,1))(12) -> [3, 2]
.quelle
Python 2, 43 Bytes
Teste es auf Ideone .
quelle
MATL , 12 Bytes
Probieren Sie es online!
Erläuterung
quelle
Julia, 32 Bytes
Probieren Sie es online!
quelle
Mathematica 34 Bytes
Dies besagt, dass alle Eingaben (
#
) gemäß den folgenden Regeln ersetzt werden sollen: (1) eine Zahl, a , mal die Quadratwurzel von b ,{a, b}
und eine Funktion b nach der Potenz dessen, was durch {1, b ersetzt werden soll }. Beachten Sie, dass die Funktion davon ausgeht, dass die Eingabe von der Form sein wird,Sqrt[n]
. Bei anderen Eingaben funktioniert dies nicht.Diese unbenannte Funktion ist für Mathematica ungewöhnlich kryptisch. Es kann etwas klarer dargestellt werden, indem seine vollständige Form gezeigt wird, gefolgt von Ersetzungen der ursprünglichen kürzeren Formen.
das ist das gleiche wie
und
und
und
und
quelle
Pyth, 15 Bytes
Testsuite.
quelle
Matlab, 51 Bytes
Erläuterung
quelle
JavaScript (ECMAScript 2016), 40 Byte
Grundsätzlich eine JavaScript-Portierung von Dennis 'Python 2-Antwort .
Probieren Sie es auf JSBin .
Hinweis: Es funktioniert nicht im strikten Modus, da
k
es nirgendwo initialisiert wird. Damit es im strengen Modus funktioniert, solltek=n
in der Schleife auf geändert werdenlet k=n
.quelle
Haskell,
43>42 BytesBrute-Force-Lösung.
Dank Xnor 1 Byte gespeichert
quelle
mod
oderdiv
. Ich denke, Sie könneny<-[1..]
aufgrund der Faulheit tun .last[(x,y)|x<-[1..n],y<-[1..n],x*x*y==n]
aber jetzt wird es funktionieren. Vielen Dank. Haben Sie eine eigene Lösung in Haskell?05AB1E, 14 Bytes
Erklärt
Probieren Sie es online aus
quelle
Python, 74 Bytes
Einfach genug.
quelle
Python 2.7 (ungolfed) - 181 Bytes
Ausführen als: e (Nummer) zB. e (24)
Beispielausgabe:
quelle
APL, 25 Zeichen
Auf Englisch:
0⍳⍨⌽⍵|⍨×⍨⍳⍵
: Index des größten der Quadrate bis n, der vollständig n teilt;1+⍵-
: Der Index befindet sich im umgekehrten Array. Passen Sie den Index an(⊢,⍵÷×⍨)
: Erzeugt das Ergebnis: den Index selbst (a) und den Quotienten b (dh n n a * a)Prüfung:
quelle
JavaScript (ECMAScript 6), 35 Byte
JavaScript 1+, 37 B
quelle
J , 19 Bytes
Probieren Sie es online!
Gleich wie die Jelly-Lösung .
quelle