Latar Belakang
Manufactoria telah dipasarkan sebagai permainan, tetapi pegolf-kode kami dapat melihatnya seperti apa adanya: bahasa pemrograman dua dimensi. Bahasa pemrograman Manufactoria didasarkan pada satu antrian tunggal , yang berisi serangkaian penanda berwarna. Penunjuk instruksi bergerak di sekitar papan permainan menggunakan sabuk konveyor, dan ia bertemu serangkaian penulis dan cabang yang membaca dari dan menulis ke antrian.
Bahasa ini sangat mudah dimengerti, jadi cara tercepat untuk mempelajarinya adalah dengan memainkan beberapa level pertama permainan (tertaut di atas).
Tantangan
Tantangan Anda adalah membuat program yang dapat membagi satu nomor dengan nomor lainnya dalam waktu yang paling singkat.
Input untuk program ini akan menjadi string penanda biru X diikuti oleh penanda merah Y. Output yang dibutuhkan adalah string penanda merah dengan panjang X / Y.
Papan permainan yang akan digunakan ditemukan di tingkat kontes resmi ini:
Ukurannya 13x13 (ukuran maksimum) dan sudah dilengkapi dengan tes yang benar (lihat bagian penilaian).
Mencetak gol
Skor dari program Anda adalah jumlah total waktu yang diperlukan untuk program untuk lulus semua tes di tingkat kontes resmi. Total waktu diberikan pada layar level-selesai.
Saat menjalankan tes, Anda kemungkinan besar harus menggunakan slider akselerasi 50x di kiri bawah untuk menerima hasil dengan cepat (akselerasi waktu tidak mempengaruhi skor).
Berikut adalah daftar masalah pembagian yang terlibat dalam tes:
6/2 = 3
3/3 = 1
4/1 = 4
0/1 = 0
12/4 = 3
12/3 = 4
9/3 = 3
10/2 = 5
Contoh I / O
12/3=4
in: BBBBBBBBBBBBRRR
out: RRRR
10/2=5
in: BBBBBBBBBBRR
out: RRRRR
9/3=3
in: BBBBBBBBBRRR
out: RRR
0/1=0
in: R
out: