Mirip dengan pertanyaan ini , tetapi ini adalah variasi teka-teki silang!
Alih-alih hanya satu huruf per kotak persegi, Anda dapat memiliki satu atau dua .
Memasukkan:
- Array 2d, atau apa pun yang berfungsi dalam bahasa Anda.
- Anda dapat menerima input yang valid
- Ukuran array apa pun harus berfungsi
Keluaran:
- Array semua kata
- Di seberang dan di bawah
- Semua kata harus digabungkan, yaitu ditautkan dalam rantai kata yang tidak terputus (jika tidak dikembalikan salah)
- Kata-kata harus paling tidak dua kotak kotak , bukan huruf
Contoh:
[["", "wo", "r", "k"],
[ "", "r", "", ""],
[ "he", "l", "lo", ""],
[ "", "d", "ad", ""]]
Pengembalian:
["work", "world", "hello", "load", "dad"]
Contoh:
[["he", "ll", "o"],
[ "", "", ""],
[ "wo", "r", "ld"]]
Pengembalian:
false
Ini adalah kode tercepat , jadi saya akan menjalankan ini pada windows 7 dengan 2.5ghz dan 16gb ram. Jika kode Anda benar-benar esoteris, berikan tautan ke kompiler agar saya benar-benar dapat menjalankannya.
string
fastest-code
crossword
epicbob57
sumber
sumber
Jawaban:
Python 3
Pemakaian:
Function mengambil array dari array string sebagai input:
crosswords( [["", "wo", "r", "k"], [ "", "r", "", ""], [ "he", "l", "lo", ""], [ "", "d", "ad", ""]])
Mengembalikan string
false
ketika konektivitas mengembalikan banyak label. Mengembalikan array kata yang valid jika tidak.Saya mengatur waktunya dengan
timeit
,time.time()
dan menggunakan perintah konsoltime
dan tapi saya tidak tahu yang mana yang akan digunakan atau yang mana untuk posting di sini.sumber