/* Configuration */
var QUESTION_ID = 135571; // Obtain this from the url
// It will be like https://XYZ.stackexchange.com/questions/QUESTION_ID/... on any question page
var ANSWER_FILTER = "!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe";
var COMMENT_FILTER = "!)Q2B_A2kjfAiU78X(md6BoYk";
var OVERRIDE_USER = 8478; // This should be the user ID of the challenge author.
/* App */
var answers = [], answers_hash, answer_ids, answer_page = 1, more_answers = true, comment_page;
function answersUrl(index) {
return "https://api.stackexchange.com/2.2/questions/" + QUESTION_ID + "/answers?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + ANSWER_FILTER;
}
function commentUrl(index, answers) {
return "https://api.stackexchange.com/2.2/answers/" + answers.join(';') + "/comments?page=" + index + "&pagesize=100&order=desc&sort=creation&site=codegolf&filter=" + COMMENT_FILTER;
}
function getAnswers() {
jQuery.ajax({
url: answersUrl(answer_page++),
method: "get",
dataType: "jsonp",
crossDomain: true,
success: function (data) {
answers.push.apply(answers, data.items);
answers_hash = [];
answer_ids = [];
data.items.forEach(function(a) {
a.comments = [];
var id = +a.share_link.match(/\d+/);
answer_ids.push(id);
answers_hash[id] = a;
});
if (!data.has_more) more_answers = false;
comment_page = 1;
getComments();
}
});
}
function getComments() {
jQuery.ajax({
url: commentUrl(comment_page++, answer_ids),
method: "get",
dataType: "jsonp",
crossDomain: true,
success: function (data) {
data.items.forEach(function(c) {
if (c.owner.user_id === OVERRIDE_USER)
answers_hash[c.post_id].comments.push(c);
});
if (data.has_more) getComments();
else if (more_answers) getAnswers();
else process();
}
});
}
getAnswers();
var SCORE_REG = (function(){
var headerTag = String.raw `h\d`
var score = String.raw `\-?\d+\.?\d*` // with negative/floating-point support
var normalText = String.raw `[^\n<>]*` // no HTML tag, no newline
var strikethrough = String.raw `<s>${normalText}</s>|<strike>${normalText}</strike>|<del>${normalText}</del>`
var noDigitText = String.raw `[^\n\d<>]*`
var htmlTag = String.raw `<[^\n<>]+>`
return new RegExp(
String.raw `<${headerTag}>`+
String.raw `\s*([^\n,]*[^\s,]),.*?`+
String.raw `(${score})`+
String.raw `(?=`+
String.raw `${noDigitText}`+
String.raw `(?:(?:${strikethrough}|${htmlTag})${noDigitText})*`+
String.raw `</${headerTag}>`+
String.raw `)`
);
})();
var OVERRIDE_REG = /^Override\s*header:\s*/i;
function getAuthorName(a) {
return a.owner.display_name;
}
function process() {
var valid = [];
answers.forEach(function(a) {
var body = a.body;
a.comments.forEach(function(c) {
if(OVERRIDE_REG.test(c.body))
body = '<h1>' + c.body.replace(OVERRIDE_REG, '') + '</h1>';
});
var match = body.match(SCORE_REG);
if (match)
valid.push({
user: getAuthorName(a),
size: +match[2],
language: match[1],
link: a.share_link,
});
});
valid.sort(function (a, b) {
var aB = a.size,
bB = b.size;
return aB - bB
});
var languages = {};
var place = 1;
var lastSize = null;
var lastPlace = 1;
valid.forEach(function (a) {
if (a.size != lastSize)
lastPlace = place;
lastSize = a.size;
++place;
var answer = jQuery("#answer-template").html();
answer = answer.replace("{{PLACE}}", lastPlace + ".")
.replace("{{NAME}}", a.user)
.replace("{{LANGUAGE}}", a.language)
.replace("{{SIZE}}", a.size)
.replace("{{LINK}}", a.link);
answer = jQuery(answer);
jQuery("#answers").append(answer);
var lang = a.language;
lang = jQuery('<i>' + a.language + '</i>').text().toLowerCase();
languages[lang] = languages[lang] || {lang: a.language, user: a.user, size: a.size, link: a.link, uniq: lang};
});
var langs = [];
for (var lang in languages)
if (languages.hasOwnProperty(lang))
langs.push(languages[lang]);
langs.sort(function (a, b) {
if (a.uniq > b.uniq) return 1;
if (a.uniq < b.uniq) return -1;
return 0;
});
for (var i = 0; i < langs.length; ++i)
{
var language = jQuery("#language-template").html();
var lang = langs[i];
language = language.replace("{{LANGUAGE}}", lang.lang)
.replace("{{NAME}}", lang.user)
.replace("{{SIZE}}", lang.size)
.replace("{{LINK}}", lang.link);
language = jQuery(language);
jQuery("#languages").append(language);
}
}
body { text-align: left !important}
#answer-list {
padding: 10px;
float: left;
}
#language-list {
padding: 10px;
float: left;
}
table thead {
font-weight: bold;
}
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="https://cdn.sstatic.net/Sites/codegolf/primary.css?v=f52df912b654">
<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>
<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>
<table style="display: none">
<tbody id="answer-template">
<tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td><a href="{{LINK}}">{{SIZE}}</a></td></tr>
</tbody>
</table>
<table style="display: none">
<tbody id="language-template">
<tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td><a href="{{LINK}}">{{SIZE}}</a></td></tr>
</tbody>
</table>
Jawaban:
Retina , 1 byte, jumlah = 58 (ASCII)
Ini menghitung kecocokan
:
dalam input ( 0 ), sehingga tercetakPoin kode dari
:
,,0
dan LF (linefeed) masing-masing adalah 58 , 48 , dan 10 (dan masing-masing), dan 58 = 48 + 10 .Cobalah online!
sumber
ArnoldC, 316 byte, jumlah 20992 (ASCII)
Cukup menyenangkan.
Saya menggunakan ini dan ini untuk melakukan perhitungan saya. Butuh waktu satu setengah jam. Tapi menyenangkan.
Cobalah secara Online!
Bagaimana itu bekerja
STICK AROUND
adalah loop, yang mengulang2048
kali pada indeksiaV
, tetapi indeks ini langkah demi langkah8
. Jadi ada256
loop, printingH
dan linefeed (72 + 10 = 82, 82 * 256 = 20992).Ini masih SANGAT golfable (dengan menemukan calcs lain) tetapi panjang dan membosankan untuk mengukur jumlah byte Anda setiap kali Anda melakukan modifikasi.
Tolong beritahu saya jika saya salah di mana saja.
sumber
Arang , 1 byte, jumlah = 180 ( Charcoal SBCS )
Cobalah online! Di halaman kode Charcoal,
⁴
memiliki kode0xB4 = 180
, sedangkan outputnya adalah 4-
detik4 * 45 = 180
.sumber
Python 2, 11 byte, jumlah 838 (ASCII)
cetakan
Tidak terlalu pintar tapi berhasil
Cobalah online!
sumber
Jelly, 12 byte, jumlah 948 (SBCS)
Kamu berkata:
maka itu Jelly, 12 byte.
Sangat menyenangkan, karena saya tidak tahu Jelly sama sekali.
Bagaimana itu bekerja
Saya tidak tahu. Tetapi
³
apakah menempatkan 100 dalam tumpukan,,
meletakkan tumpukan dalam array atau sesuatu,:
mungkin menyatukan hal itu sambilD
mendaftar setiap huruf dari angka terakhir (yang tidak ada), dan +++ adalah untuk bersenang-senang. Baris pertama dan terakhir tidak mempengaruhi output :)Cobalah secara Online!
Gunakan ini untuk menghitung.
sumber
³
dan apaD
, tetapi jangan tanya aku apa pun yang dilakukan WTF." - Ini juga akan menjadi tulisan saya jika saya melakukan jawaban Jelly.CJam / Japt / bc, 2 byte, jumlah 97 (ASCII)
A
Cobalah Online (CJam), Cobalah Online (Japt) (terima kasih @shaggy),
Versi bc bekerja pada baris perintah, tetapi tidak pada TIO.
Keluaran
10
Sumber: A+ Space= 65 + 32 = 97
Output: 1+ 0 = 49 + 48 = 97
sumber
bc
program dan kemudian mengetikA
. Haruskah saya menyebutnya bc REPL?Haskell , 9 byte, byte jumlah 743 (ASCII)
Kode:
Keluaran:
Cobalah online!
sumber
Secara kubik , 4 byte, jumlah 141 (ASCII)
Keluaran
3636
. Cobalah online! Dan inilah pemeriksa jumlah ASCII yang saya gunakan.Penjelasan:
%
berarti 'jumlah cetak wajah sebagai bilangan bulat'.4
mencetak jumlah semua nilai pada wajah BACK (36) dua kali.E
adalah no-op, hanya digunakan untuk mendapatkan jumlah yang diperlukan.sumber
Beberapa jawaban ini berisi karakter yang kemungkinan tidak akan terlihat oleh Anda (khususnya ASCII 17), klik tautan TIO untuk melihat penempatannya.
Klein 100/110, 4 byte, jumlah 147
Cobalah online!
Keluaran:
Klein 201, 4 byte, jumlah 147
Cobalah online!
Keluaran:
Klein (topologi apa saja), 5 byte, jumlah 221 (ASCII)
Cobalah online!
Ini mencetak
sumber
Java 7,
8885 byte, jumlah780876177507 (ASCII)Hampir pasti golf. Sangat mudah untuk mengubah karena kami memiliki beberapa variabel cadangan seperti nama kelas dan nama parameter argumen program yang dapat kami ubah secara bebas.
Uji secara online!
Cobalah online!
Java 8, 84 byte, jumlah 7434
Penghargaan untuk Kevin Cruijssen .
Uji secara online!
Cobalah online!
sumber
interface A{static void main(String[]G){for(int A=59;A-->0;)System.out.print("~");}}
untuk golf dengan 4 byte dan turunkan ke 7434 sebagai jumlah. Coba di sini. dan Verifikasi jumlah yang dihasilkan.Python 2 , 11 byte, jumlah byte 854 (ASCII)
Kode (dengan mengikuti baris baru):
Output (dengan mengikuti baris baru):
Cobalah online!
sumber
brainfuck , 3 byte - byte jumlah 255 (ISO-8859-1)
Cobalah online!
Membutuhkan sel 8-bit. Mencetak karakter
ÿ
, yang bernilai 255.¤
adalah no-op untuk mengisi penjumlahan.sumber
V , 2 byte, Jumlah 255 (Latin1)
Cobalah online!
Hexdump:
Karakter pertama adalah ctrl-^, atau titik kode LATIN1 / ASCII
0x1E
. Karakter kedua adalah alt-a, atau karakter LATIN10xE1
. Output program iniÿ
, yaitu0xFF
di LATIN1.Bagaimana cara kerjanya?
Karakter pertama adalah no-op. Itu tidak berpengaruh pada program sama sekali. Karakter kedua adalah perintah menambahkan karakter tunggal . Tapi kami tidak menentukan karakter apa yang akan ditambahkan. Jadi, karena akhiran implisit , ia menambahkan karakter yang digunakan V untuk memberi sinyal program sudah berakhir, yang kebetulan saja demikian
0xFF
.sumber
05AB1E , 5 byte, jumlah 256 (Terjemahan 05AB1E-255)
Cobalah online!
Output ini:
1606938044258990275541962092341162602522202993782792835301376
Yang mana, menggunakan halaman kode 05AB1E menghasilkan:
[1, 6, 0, 6, 9, 3, 8, 0, 4, 4, 2, 5, 8, 9, 9, 0, 2, 7, 5, 5, 4, 1, 9, 6, 2, 0, 9, 2, 3, 4, 1, 1, 6, 2, 6, 0, 2, 5, 2, 2, 2, 0, 2, 9, 9, 3, 7, 8, 2, 7, 9, 2, 8, 3, 5, 3, 0, 1, 3, 7, 6]
Yang mana:
256
Di mana kodenya:
ΔTnon
Dengan poin kode:
[79, 29, 49, 50, 49]
Yang mana:
256
sumber
1
sebagai 49 , bukan 1 .base(char, 255)
, saya berasumsi (tampaknya salah) bahwa mereka akan menjadi satu dan sama.Taksi , 543 bytes, jumlah 47124 (ASCII)
Cobalah online! ( Verifikasi skor )
Outputnya adalah 374 tildes
~
.sumber
Mathematica, 2 byte, jumlah = 101 (ASCII)
E + Space mengembalikan e
Mathematica, 2 byte, jumlah = 105 (ASCII)
itu bekerja untuk saya juga
I + Space mengembalikan i
sumber
Jelly , 3 byte, jumlah = 152 (ASCII)
Cobalah online!
sumber
Brain-Flak (Rain-Flak) , 79 byte
Cobalah online!
Ini mencetak
16
dan baris baru 31 kali.Brain-Flak (BrainHack) , 55 byte
Cobalah online!
Ini mencetak
16
dan spasi 18 kali.Juga 55 byte
Cobalah online!
Cetakan ini
12
diikuti oleh spasi 19 kali.sumber
Vim , 3 byte, jumlah 234 (ASCII)
Keluaran:
Cobalah online!
sumber
Cubix , 20 byte, jumlah titik kode 1505
Berisi karakter yang tidak patut dicetak
DEL
(ascii 127).Q
mendorong"
(konstanta terbesar yang tersedia di cubix), lalu berulang kali mencetak (O
)68
atau102
cukup waktu untuk mencapai68686868686868102102102102102
1505; melalui beberapa trial and error saya menyadari bahwa saya membutuhkan 81 poin lebih banyak daripada.
(a Cubix no-op dan ASCII46
) yang mengakibatkan membutuhkanDEL
, yang masih no-op di Cubix.Cobalah online!
Di sebuah kubus:
sumber
dc, 7 byte, jumlah 720 (ASCII)
(91 + 109 + 121 + 93 + (102 * 3) = 720)
Output:
((109 + 121 + 10) * 3 = 720)
sumber
Wortel , 4 byte, jumlah = 279 (ASCII)
Cobalah online!
Cetakan
]]]
.sumber
^*3
adalah 187, jadi saya mencoba memecahkanx+187=4x
, tetapi itu tidak menghasilkan solusi integer. Jadi saya pergi ke^*2
, yang memiliki saya186+x=3x
yang memberi sayax
sebagai93
, titik kode]
. Hanya itu yang saya lakukan :)¹^*1
juga berhasil. Jika saya melakukan matematika saya dengan benar itu. Meskipun itu adalah nilai unicode bukan utf8.Secara kubik , 3 byte, jumlah = 105 (ASCII)
Byte ketiga adalah DLE , yang memiliki titik kode 16 , sehingga jumlah titik kode dari kode sumber adalah
37 + 52 + 16 = 105 .
Program mencetak
yang jumlah poin kodenya adalah 51 + 54 = 105 .
Cobalah online!
sumber
Cubix , 11 byte, jumlah byte 954 (ASCII)
Kode:
Keluaran:
Diverifikasi di sini!
Cobalah online!
Kubus:
N
menginisialisasi tumpukan dengan 10(!
pengurangan dan uji kebenaran@
pada penghentian nolO^O
output nomor saat ini dialihkan ke permukaan atas dan output lagivw
redirect kembali ke(
decrement untuk memulai loop lagiLihat saja
sumber
Sekam , 4 byte, jumlah 334 ( Sekam SBCS )
Keluaran:
Nilai digit diberikan oleh
0x3?
(di mana?
singkatan digit itu) danu
,p
,[
,]
,,
telah nilai-nilai0x75
,0x70
,0x5b
,0x5d
,0x2c
- sehingga jumlah adalah:Cobalah online!
sumber
JavaScript (ES6), 6 byte, jumlah = 385 (ASCII)
Keluaran
10000000
. Ada jawaban 6 byte lainnya sepertih=>1e8
. Coba penghitung titik kode ini:sumber
cQuents , 5 byte, jumlah 238 (ASCII)
Keluaran
1,2,3
, atau dalam istilah cQuents, mencetak tiga istilah pertama dari urutan1,2,3,4,5,6...
.Sekarang dengarkan. Ini, secara harfiah, program pertama yang saya coba. Alasan saya mencobanya adalah karena ini adalah program yang saya gunakan untuk Output dengan panjang yang sama dengan kode . Dan itu sangat berhasil.
Cobalah online!
sumber
Gaia , 4 byte, jumlah 176 ( SBCS )
Penjelasan
Dalam codepage Gaia, linefeed memiliki titik kode x7F (127 dalam desimal). Karakter ASCII yang dapat dicetak memiliki titik kode yang sama dengan ASCII.
Ini menghitung 6 modulo 5, yaitu 1, dan dicetak
1
dengan linefeed baris tambahan.Nilai byte dari karakter dalam codepage (dalam desimal):
6 5%
: 54 + 32 + 53 + 37 = 1761
: 49 + 127 (linefeed) = 176sumber
Trumpscript, 131 byte, jumlah 10600 (ASCII)
Apakah ini kehidupan nyata?
Periksa dengan ini .
Terima kasih @MagicOctopusUrn karena memberi tahu saya bahwa ada
sumber
Tolong, WarDoq! , 5 byte, jumlah 1052 (Latin1)
Cetakan
Cobalah online!
Tolong, WarDoq! dapat menambahkan dua angka dan menguji bilangan prima, sehingga dianggap sebagai bahasa pemrograman yang valid per posting meta ini .
sumber