Terkadang ketika Anda menekan tombol pada keyboard, huruf tidak selalu ditampilkan di layar. Apakah ini karena koneksi yang cerdik atau sebaliknya, Anda telah memutuskan untuk menulis skrip untuk mengontrol kemungkinan surat ditampilkan di layar ketika tombol yang sesuai ditekan.
Suatu hari, Anda memutuskan untuk membeli monyet dan duduk di keyboard. Menjadi penasaran, Anda memutuskan untuk mencari tahu apa probabilitas utama untuk membantu monyet menulis Hamlet secara keseluruhan.
Tantangan Anda adalah menghitung probabilitas untuk setiap karakter sehingga bagian tersebut diketik dalam jumlah karakter paling sedikit.
Berikut daftar semua karakter yang harus Anda konsolidasi:
qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890!"':;.()?,
Baris baru dan spasi termasuk dalam daftar di atas. Anda hanya harus menggunakan karakter dalam daftar, mendiskon semua karakter lain (menghapusnya dari bagian).
Program harus merupakan program dengan bagian yang disediakan melalui STDIN. Outputnya harus STDOUT.
Karena ini adalah tantangan Rosetta Stone, Anda harus menulis sebanyak mungkin program dalam berbagai bahasa.
Untuk menang, Anda harus memiliki kode terpendek dalam jumlah bahasa terbanyak.
Test case 1
Haruskah aku membandingkanmu dengan hari musim panas?
Engkau lebih cantik dan lebih beriklim:
Angin kencang mengguncang tunas-tunas kesayangan Mei,
Dan sewa musim panas terlalu singkat untuk kencan
Menjawab:
{
'\n': 0.017543859649122806,
' ': 0.16959064327485379,
'!': 0.0,
'"': 0.0,
"'": 0.011695906432748537,
'(': 0.0,
')': 0.0,
',': 0.0058479532163742687,
'.': 0.0,
'0': 0.0,
'1': 0.0,
'2': 0.0,
'3': 0.0,
'4': 0.0,
'5': 0.0,
'6': 0.0,
'7': 0.0,
'8': 0.0,
'9': 0.0,
':': 0.0058479532163742687,
';': 0.0,
'?': 0.0058479532163742687,
'A': 0.0058479532163742687,
'B': 0.0,
'C': 0.0,
'D': 0.0,
'E': 0.0,
'F': 0.0,
'G': 0.0,
'H': 0.0,
'I': 0.0058479532163742687,
'J': 0.0,
'K': 0.0,
'L': 0.0,
'M': 0.0058479532163742687,
'N': 0.0,
'O': 0.0,
'P': 0.0,
'Q': 0.0,
'R': 0.0058479532163742687,
'S': 0.0058479532163742687,
'T': 0.0058479532163742687,
'U': 0.0,
'V': 0.0,
'W': 0.0,
'X': 0.0,
'Y': 0.0,
'Z': 0.0,
'a': 0.08771929824561403,
'b': 0.0058479532163742687,
'c': 0.0058479532163742687,
'd': 0.046783625730994149,
'e': 0.093567251461988299,
'f': 0.0058479532163742687,
'g': 0.011695906432748537,
'h': 0.052631578947368418,
'i': 0.011695906432748537,
'j': 0.0,
'k': 0.0058479532163742687,
'l': 0.046783625730994149,
'm': 0.046783625730994149,
'n': 0.023391812865497075,
'o': 0.070175438596491224,
'p': 0.011695906432748537,
'q': 0.0,
'r': 0.052631578947368418,
's': 0.052631578947368418,
't': 0.058479532163742687,
'u': 0.029239766081871343,
'v': 0.0058479532163742687,
'w': 0.0058479532163742687,
'x': 0.0,
'y': 0.017543859649122806,
'z': 0.0
}
Uji kasus 2
Empat skor dan tujuh tahun yang lalu ayah kita melahirkan di benua baru ini sebuah negara baru, diciptakan dalam kebebasan, dan didedikasikan untuk proposisi bahwa semua manusia diciptakan sama.
Sekarang kita terlibat dalam perang saudara yang hebat, menguji apakah negara itu, atau negara mana pun yang dikandung dan dipersembahkan, dapat bertahan lama. Kami bertemu di medan perang besar dari perang itu. Kami datang untuk mendedikasikan sebagian dari ladang itu, sebagai tempat peristirahatan terakhir bagi mereka yang di sini memberikan hidup mereka agar bangsa itu dapat hidup. Sangat tepat dan patut kita melakukan ini.
Menjawab:
{
'\n': 0.0036036036036036037,
' ': 0.18018018018018017,
'!': 0.0,
'"': 0.0,
"'": 0.0,
'(': 0.0,
')': 0.0,
',': 0.010810810810810811,
'.': 0.0090090090090090089,
'0': 0.0,
'1': 0.0,
'2': 0.0,
'3': 0.0,
'4': 0.0,
'5': 0.0,
'6': 0.0,
'7': 0.0,
'8': 0.0,
'9': 0.0,
':': 0.0,
';': 0.0,
'?': 0.0,
'A': 0.0,
'B': 0.0,
'C': 0.0,
'D': 0.0,
'E': 0.0,
'F': 0.0018018018018018018,
'G': 0.0,
'H': 0.0,
'I': 0.0018018018018018018,
'J': 0.0,
'K': 0.0,
'L': 0.0,
'M': 0.0,
'N': 0.0018018018018018018,
'O': 0.0,
'P': 0.0,
'Q': 0.0,
'R': 0.0,
'S': 0.0,
'T': 0.0,
'U': 0.0,
'V': 0.0,
'W': 0.0036036036036036037,
'X': 0.0,
'Y': 0.0,
'Z': 0.0,
'a': 0.082882882882882883,
'b': 0.0054054054054054057,
'c': 0.025225225225225224,
'd': 0.03783783783783784,
'e': 0.10270270270270271,
'f': 0.016216216216216217,
'g': 0.023423423423423424,
'h': 0.041441441441441441,
'i': 0.057657657657657659,
'j': 0.0,
'k': 0.0,
'l': 0.027027027027027029,
'm': 0.0072072072072072073,
'n': 0.063063063063063057,
'o': 0.066666666666666666,
'p': 0.010810810810810811,
'q': 0.0018018018018018018,
'r': 0.050450450450450449,
's': 0.028828828828828829,
't': 0.093693693693693694,
'u': 0.010810810810810811,
'v': 0.014414414414414415,
'w': 0.014414414414414415,
'x': 0.0,
'y': 0.0054054054054054057,
'z': 0.0
}
Lihat teorinya di sini .
Papan peringkat
C - 371 - Gerwin Dox
Java - 788 - Luminous
!
(33) hingga z
(122) atau ~
(126)? Ketika kita membaginya dengan jumlah karakter, apakah boleh untuk membagi dengan panjang input, atau kita harus mengecualikan karakter yang tidak ada dalam daftar (spasi, dll.)?