Sekcja gliniarzy
Dział rabusiów można znaleźć tutaj .
Dzięki FryAmTheEggman , Peter Taylor , Nathan Merrill , Xnor , Dennis , Laikoni i Mego za ich wkład.
Wyzwanie
Twoim zadaniem jest napisanie 2 różnych programów ( pełne programy / funkcje / itp. ) W tym samym języku i tej samej wersji (np. Python 3.5 ≠ Python 3.4, więc nie jest to dozwolone), a gdy podano n (używając argumentów STDIN / function / etc. ), oblicz a (n) gdzie a jest sekwencją OEIS twojego wyboru. Jeden z tych programów jest krótszy od drugiego. Musisz tylko przesłać dłuższy program z tych dwóch. Drugi należy zapisać na wypadek, gdyby nie został złamany po 7 dniach. Twoje zgłoszenie jest łamane, gdy Twój program został rozłupany (o 1 bajt lub więcej).
Na przykład, jeśli wybranym zadaniem było wykonanie 2 × n , może to być prawidłowe przesłanie (w Pythonie 2):
Python 2, 16 bajtów, wynik = 15/16 = 0,9375
print(2*input())Oblicza A005843 , (przesunięcie = 0).
Jeśli Twoje zgłoszenie zostało złamane, musisz to zaznaczyć w nagłówku w następujący sposób:
Python 2, 16 bajtów, wynik = 15/16 = 0,9375, [pęknięty] + link
print(2*input())Oblicza A005843 , (przesunięcie = 0).
Offsetowy
Można to znaleźć na każdej stronie OEIS. Na przykład dla A005843 przesunięcie wynosi 0,2. Musimy użyć tylko pierwszego, którym jest 0. Oznacza to, że funkcja jest zdefiniowana dla wszystkich liczb ≥ 0.
Innymi słowy, funkcja OEIS (n) zaczyna się od n = 0 . Twój program musi działać we wszystkich przypadkach podanych przez OEIS.
Więcej informacji można znaleźć tutaj .
Punktacja
Wynik uzyskany za zgłoszenie jest równy następującej formule:
Wynik = długość (w bajtach) tajnego kodu ÷ długość (w bajtach) kodu publicznego
Powyższy przykład ma wynik 15 ÷ 16 = 0,9375.
Zgłoszenie o najniższym wyniku wygrywa. Tylko zgłoszenia, które opublikowały swoje rozwiązanie, będą mogły wygrać.
Zasady
- Zadaniem, które musisz wykonać, jest wybór sekwencji OEIS.
- Biorąc pod uwagę n , wyjściowy OEIS (n) . Odchylenie nie wolno, więc trzeba wytwarzać dokładnie takiej samej sekwencji (gdy podano N, trzeba wyjściu OEIS (n)).
- Zgłoszenia, które nie zostaną złamane w ciągu 7 dni, są uważane za bezpieczne po opublikowaniu rozwiązania (zgłoszenia starsze niż 7 dni, dla których nie opublikowano rozwiązania, nadal są podatne na złamanie).
- W swoim zgłoszeniu musisz opublikować następujące rzeczy: nazwę języka , liczbę bajtów , pełny kod , więc żadne linki do pastebinów itp. (Aby zapobiec odpowiedziom typu Unary), sekwencję OEIS , wynik z długościami obu programów i dodatkowo kodowanie, które Jest używane.
- Uwaga: tej samej sekwencji nie można opublikować dwukrotnie w tym samym języku. (Na przykład, jeśli sekwencja A005843 została wykonana w Pyth, nie można ponownie użyć Pyth dla tej samej sekwencji).
- Wejścia i wyjścia są w systemie dziesiętnym (podstawa 10)
Tabela liderów
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><style>table th,table td{padding: 5px;}th{text-align: left;}.score{text-align: right;}table a{display: block;}.main{float: left;margin-right: 30px;}.main h3,.main div{margin: 5px;}.message{font-style: italic;}#api_error{color: red;font-weight: bold;margin: 5px;}</style> <script>QUESTION_ID=88979;var safe_list=[];var uncracked_list=[];var n=0;var bycreation=function(x,y){return (x[0][0]<y[0][0])-(x[0][0]>y[0][0]);};var byscore=function(x,y){return (x[0][1]>y[0][1])-(x[0][1]<y[0][1]);};function u(l,o){jQuery(l[1]).empty();l[0].sort(o);for(var i=0;i<l[0].length;i++) l[0][i][1].appendTo(l[1]);if(l[0].length==0) jQuery('<tr><td colspan="3" class="message">none yet.</td></tr>').appendTo(l[1]);}function m(s){if('error_message' in s) jQuery('#api_error').text('API Error: '+s.error_message);}function g(p){jQuery.getJSON('//api.stackexchange.com/2.2/questions/' + QUESTION_ID + '/answers?page=' + p + '&pagesize=100&order=desc&sort=creation&site=codegolf&filter=!.Fjs-H6J36w0DtV5A_ZMzR7bRqt1e', function(s){m(s);s.items.map(function(a){var he = jQuery('<div/>').html(a.body).children().first();he.find('strike').text('');var h = he.text();if (!/cracked/i.test(h) && (typeof a.comments == 'undefined' || a.comments.filter(function(b){var c = jQuery('<div/>').html(b.body);return /^cracked/i.test(c.text()) || c.find('a').filter(function(){return /cracked/i.test(jQuery(this).text())}).length > 0}).length == 0)){var m = /^\s*((?:[^,;(\s]|\s+[^-,;(\s])+).*(0.\d+)/.exec(h);var e = [[n++, m ? m[2]-0 : null], jQuery('<tr/>').append( jQuery('<td/>').append( jQuery('<a/>').text(m ? m[1] : h).attr('href', a.link)), jQuery('<td class="score"/>').text(m ? m[2] : '?'), jQuery('<td/>').append( jQuery('<a/>').text(a.owner.display_name).attr('href', a.owner.link)) )];if(/safe/i.test(h)) safe_list.push(e);else uncracked_list.push(e);}});if (s.items.length == 100) g(p + 1);else{var s=[[uncracked_list, '#uncracked'], [safe_list, '#safe']];for(var i=0;i<2;i++) u(s[i],byscore);jQuery('#uncracked_by_score').bind('click',function(){u(s[0],byscore);return false});jQuery('#uncracked_by_creation').bind('click',function(){u(s[0],bycreation);return false});}}).error(function(e){m(e.responseJSON);});}g(1);</script><link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/Sites/codegolf/all.css?v=7509797c03ea"><div id="api_error"></div><div class="main"><h3>Uncracked submissions</h3><table> <tr> <th>Language</th> <th class="score">Score</th> <th>User</th> </tr> <tbody id="uncracked"></tbody></table><div>Sort by: <a href="#" id="uncracked_by_score">score</a> <a href="#" id="uncracked_by_creation">creation</a></div></div><div class="main"><h3>Safe submissions</h3><table> <tr> <th>Language</th> <th class="score">Score</th> <th>User</th> </tr> <tbody id="safe"></tbody></table></div>
Uwaga
To wyzwanie jest zakończone. Ostatecznym zwycięzcą jest feersum z jego odpowiedzią na Seed . Gratulacje! :)
Nadal możesz przesyłać nowych gliniarzy, ale pamiętaj, że już nie konkurują.
