Jika komunitas akan menjadi seseorang

17

Yah komunitasnya hanya bot. Tetapi bagaimana jika itu adalah seseorang?

Tugas Anda adalah untuk menemukan apa reputasi komunitas mungkin jika itu akan diberikan reputasi untuk suntingan yang dibuatnya. (Cukup 2 * suntingan)

Ini harus berfungsi untuk situs mana pun, tetapi kami akan mempertimbangkan PP&CG untuk pertanyaan ini.

Gunakan bahasa apa pun, bahkan data.stackexchange akan berfungsi.

Karena ini adalah kode golf, kode terkecil memenangkan reputasi sebanyak yang saya dapatkan +15 (melalui karunia, saya akan meninggalkan 101 untuk diri saya sendiri: P).

EDIT: pertimbangkan semua jenis suntingan yang meningkatkan reputasi.

Pengguna Terdaftar
sumber
3
Bagaimana jika Anda memiliki downvotes? Apakah Anda akan memberi kami reputasi negatif juga?
user12205
2
Haruskah kita menghitung hanya pengeditan yang disarankan atau pengeditan normal (yang TIDAK meningkatkan rep) juga? Bagaimana dengan pengeditan tag wiki?
Gagang Pintu
Mengapa Anda menautkan ke riwayat beta?
TheDoctor
@thedoctor kesalahan saya. Harap ubah ke tautan PPCG. Saat ini saya tidak memiliki akses ke komputer saya.
Pengguna Terdaftar
1
Apakah kita harus mempertimbangkan cutoff? Ada reputasi maksimal yang bisa diperoleh dengan cara ini. Dugaan saya adalah bahwa di banyak situs, komunitas akan mencapai batas maksimum ini.
Tim Seguine

Jawaban:

4

Saya tahu penyingkat URL curang, tetapi karena semua orang menggunakannya, saya mungkin harus.

Bash, with bcdan pemendek URL:67 62 60 58 54

bc<<<`wget x.co/4Ccg3 -qO-|grep -oP "(?<='>)[0-9]+"`*2

Unduh halaman yang relevan ke STDOUT, lalu cari '>diikuti oleh urutan angka - ini menyalahgunakan fakta bahwa dalam kode sumber halaman, tanda kutip tunggal jarang digunakan; sebenarnya urutan '>terjadi dua kali, dan hanya sekali diikuti oleh angka, yang merupakan jumlah suntingan. Menggunakan tampilan gaya Perl di belakang, '>sebenarnya tidak termasuk dalam pertandingan.

The -opilihan membuat grepkeluaran hanya string cocok daripada seluruh baris yang berisi itu (ada h1di baris yang sama dan aku tidak ingin itu).

Jumlah pengeditan yang dihasilkan digabungkan dengan *2dan dikirim ke bc.

@ 11684 menunjukkan bahwa Anda mulai dengan 1 reputasi, tetapi penanya jelas lupa bahwa itu tidak disebutkan dalam pertanyaan (itu akan memecahkan jawaban yang ada jika itu). Jika Anda ingin menambahkan itu cukup masukkan di +1akhir kode, tambahkan 2 karakter.

SHELF , 36 - tidak dihitung karena bahasa itu dibuat setelah pertanyaan

, `W x.co/4Ccg3|t "(?<='>)[0-9]+"`*2

SHELF adalah versi golf dari Bash, seperti PYG untuk Python.


sumber
Saya akan mencuri tautan singkat Anda, karena x.colebih pendek dari goo.gl. :)
11684
@ 11684 saya tidak keberatan, saya sudah memberikannya ke Synthetica
Pemendek URL, pandai;)
2

Python ( 191 181 170 126 117)

@ Henrik: Ide bagus untuk menggunakan penyingkat url. Tidak masalah jika saya hanya meminjam milik Anda, bukan? Hanya untuk memulai, ini mungkin akan dipukuli dengan sangat, sangat cepat;)

i=__import__("urllib2").urlopen("http://x.co/4Ccg3").read();j=i[i.index("<span class='count")+20:];print 2*int(j[:2])

Pencarian untuk <span class='count'>yang berisi jumlah reputasi yang dimiliki bot.

ɐɔıʇǝɥʇu
sumber
Anda harus dapat menghapus communitydari url.
Geobits
1
Eh, ini tidak berhasil. Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: invalid literal for int() with base 10: ''
user80551
@ace Ada yang mengganggu di suatu tempat, tidak yakin mengapa. Bagaimanapun: itu bekerja sekarang.
ɐɔıʇǝɥʇuʎ
lebih pendek: x.co/4Ccg3
2

JavaScript (EcmaScript 6 + jQuery) - 80 Karakter

$.get('/users/-1/?tab=activity&sort=revisions',r=>alert($('.count',r).text()*2))

Jalankan di konsol JavaScript di setiap halaman StackExchange (meskipun fungsi panah ECMAScript 6 hanya didukung di FireFox saat ini sehingga harus dilakukan di browser itu sampai yang lain menyusul) dan akan mendapatkan reputasi Komunitas di domain itu. Jadi menjalankannya http://codegolf.stackexchange.comakan mendapatkan reputasi Komunitas Golf Code (saat ini 118) dan menjalankannya http://academia.stackexchange.com/akan mendapatkan reputasi dari situs itu (saat ini 162).

Yang diharapkan menjawab

Ini harus berfungsi untuk situs mana pun

sedikit pertanyaan.

MT0
sumber
3
Saya merasa seperti menggunakan jQuery harus menambah 83532 pada skor akhir
JoshWillik
1

JavaScript (dengan jQuery) - 141

$.get('http://codegolf.stackexchange.com/users/-1/?tab=activity&sort=revisions',function(o){alert($('<a>').html(o).find('.count').html()*2)})

EDIT : hanya berfungsi jika dijalankan dari halaman StackExchange mana pun ... atau jika kebijakan asal yang sama dilumpuhkan .

Jika kebijakan asal yang sama dinonaktifkan, dapat disingkat menjadi 96 karakter:

$.get('http://tinyurl.com/pfmsq8w',function(o){alert($('<a>').html(o).find('.count').html()*2)})
Michael M.
sumber
1

Saya telah memasukkan 1 reputasi yang Anda mulai!

jQuery, 76

$a=$("body");$a.load("//x.co/4Ccg3 .count",function(){$a.text($a.text()*2+1)

pada halaman apa pun dengan jQuery dan diminta oleh http.

jQuery, hanya berfungsi di halaman yang relevan - 23

$(".count").text()*2+1;

Halaman yang digunakannya adalah http://goo.gl/JOqzpF .

11684
sumber
1

StackExchange Data 78 karakter

Klik di sini untuk menjalankan kueri

SELECT COUNT(*)*2FROM PostHistory WHERE UserId=-1AND PostHistoryTypeId IN(4,5)
Aidiakapi
sumber
0

PowerShell (143)

Skrip PowerShell pertama saya! Menghitung jumlah revisi dan dikalikan dua (sangat terinspirasi oleh jawaban Python @ Synthetica).

$s=(New-Object Net.WebClient).DownloadString("http://tinyurl.com/pfmsq8w");(0+($s.Substring($s.IndexOf("s='cou")+10,8) -replace "[^\d]",""))*2
Henrik
sumber