Ini didasarkan pada permainan yang dulu dimainkan guru matematika saya di sekolah menengah. Dia akan menulis 5 angka acak satu digit di papan tulis, dan kemudian angka acak dua digit. Kami akan mencoba membuat persamaan yang menggunakan semua 5 dari angka satu digit untuk menghasilkan angka dua digit. Berikut adalah beberapa contoh dengan solusi untuk menjelaskan ini dengan lebih baik:
Input: Solution:
7 5 4 8 4 34 5*8-7+4/4 = 34
3 1 5 7 6 54 (7+3)*6-5-1 = 54
3 9 2 1 6 87 9*(2+1)*3+6 = 87
2 1 6 9 7 16 (9-7+6*1)*2 = 16
2 4 5 8 6 96 8*(5+6)+2*4 = 96
3 8 4 5 4 49 8*(4+4)-3*5 = 49
Tantangan ini adalah menulis program yang dapat menghasilkan persamaan untuk input yang diberikan. Input dapat diberikan melalui baris perintah atau melalui prompt. 5 nomor satu digit akan selalu dimasukkan terlebih dahulu (tanpa urutan tertentu), diikuti oleh nomor dua digit. Program kemudian akan mencetak persamaan solusi yang ditemukannya; Anda tidak harus menangani situasi di mana tidak ada solusi. Fungsi harus mampu menggunakan operasi berikut dalam persamaan: penjumlahan, pengurangan, perkalian, dan pembagian. Jika Anda ingin mengizinkan operasi dasar tambahan, itu bagus selama mereka tetap dalam semangat tantangan (negasi, eksponensial, dan modulus akan menjadi tambahan yang bagus). Urutan operasi mengikuti aturan matematika standar, sehingga tanda kurung akan diperlukan untuk pengelompokan.
Program akan dinilai berdasarkan panjang kode (termasuk spasi yang dibutuhkan). Catatan: pembagian harus tepat, tidak bulat atau terpotong ke bilangan bulat terdekat.