Mari kita coba ini lagi.
Objek dari kontes ini adalah membuat dua bagian kode yang merupakan anagram satu sama lain (keduanya harus berisi byte yang sama dalam urutan yang berbeda), dan mereka akan melakukan tugas-tugas berikut:
Seseorang harus menguji apakah nomor yang dimasukkan bahagia atau prima , dan mengeluarkan jika nomornya baik (misalnya,
7
harus keluarhappy prime
dan4
harus keluarsad non-prime
).Yang lain harus menampilkan ukuran kode dalam byte sebagai kata (program 60-byte akan menghasilkan
sixty
, program 39-byte akan menampilkanthirty-nine
).
Jika ada klarifikasi yang diperlukan pada peraturan, jangan ragu untuk memberi tahu saya.
Ini adalah kompetisi kode golf, jadi program terpendek menang!
code-golf
math
primes
source-layout
Josiah Winslow
sumber
sumber
/*program1*/program2
dan kemudianprogram1/*program2*/
? Saya pikir Anda harus melarang komentar.Jawaban:
CJam,
804948 karakterUPDATE : Terinspirasi oleh implementasi Dennis untuk menghitung jumlah kuadrat angka, ini adalah versi yang lebih pendek
Happy / Sad Prime / Non-prime:
Bagaimana itu bekerja:
empat puluh delapan
Bagaimana ini bekerja:
Cobalah online
Program pertama membaca nomor dari STDIN
Solusi 80 karakter asli saya
Happy / Sad Prime / Non-prime:
eigHTY
sumber
CJam,
5049 byteTes kebahagiaan dan keutamaan
Membaca angka dari STDIN. Kedua tes hanya berfungsi untuk bilangan bulat 64-bit.
Cobalah online.
Panjang sendiri
Mencetak untukTy-sembilan .
sumber
Golfscript - 81
Program ini menguji apakah suatu angka senang dan / atau prima.
Program ini, sebuah anagram yang terakhir, menampilkan "delapan puluh satu" (bytesize sebagai kata).
Ini harus menjadi contoh.
sumber
J - 87 char
Upaya naif ini di J. Tidak menggunakan perpustakaan standar, meskipun saya ragu itu akan menjadi lebih pendek dengan menggunakan itu.
Baris di atas adalah kata kerja yang mengambil bilangan bulat dan mendiagnosis kebahagiaan dan keutamaannya sebagai string keluaran. Baris kedua adalah ekspresi yang mengembalikan string
eighty-seven
, sedangkan yang ketiga adalah fungsi konstan melakukan hal yang sama. Saya memasukkan keduanya karena keduanya mungkin dan karena saya tidak tahu apa putusannya pada jawaban fungsi yang berlawanan dengan jawaban program, dan J tidak memiliki fungsi tanpa argumen — Anda hanya memberi fungsi a argumen bodoh.Kita kehilangan sebagian besar karakter untuk memeriksa kebahagiaan.
(,[:+/@:*:,.&.":@{:)
adalah badan utama yang menjumlahkan kuadrat dari angka, dan(1-{:e.}:)
merupakan ujian apakah angka itu telah terjadi.sad`happy{~1 e.
mengubah ini menjadi hasil kata, dan kami lampirkan itu di bagian depan stringnon-prime
, berpotensi memotong empat karakter jika angka itu sebenarnya primaDalam anagram kita hanya menyembunyikan semua bit yang tidak ada
'eighty-seven'
dalam string yang kita abaikan. Saya bisa melakukan lebih baik jika J memiliki lebih banyak surat untuk digunakan kembali, tetapi tidak, jadi oh well.sumber