Giriş
Not: Bu, hile yapmayı teşvik etmek için bir tür yöntem değildir. As Cᴏɴᴏʀ O'Bʀɪᴇɴ 3: Zaten okuyan bir sınavını geçtiği için en iyi çözüm olduğunu söyledi.
Çoktan seçmeli test için aşağıdaki cevapları göz önünde bulundurun:
ABCBCAAB
İşte cevapların eşleşip eşleşmediğini gösteren bir tablo:
A B C B C A A B
A 1 0 0 0 0 1 1 0
B 0 1 0 1 0 0 0 1
C 0 0 1 0 1 0 0 0
Bu bize aşağıdaki sayıları verir:
10000110, 01010001, 00101000
Zor olan bu ikili sayıları yazdırmaktır. Ancak , çoktan seçmeli testte hangi harflerin kullanıldığını görmek önemlidir . Örneğin:
ABCDCDBCDABC
Bu en yüksek mektup olduğu Dolan alfabesinde 4 mektup . Bu nedenle 4 farklı ikili sayı çıkarmamız gerekiyor . Yani:
100000000100, 010000100010, 001010010001, 000101001000
En yüksek harfe bakmanız gerektiğini unutmayın . Aşağıdaki örneği düşünün:
AACCACAC
Her ne kadar Bkullanılmasa da, için ikili sonuç çıkarmamız gerekir B. Bunun anlamı, cevap:
11001010, 00000000, 00110101
Görev
Çoktan seçmeli bir testin cevapları göz önüne alındığında, ikili sayıların çıktısını alın. Girişin boş olmayacağını ve yalnızca harfleri içerdiğini varsayabilirsiniz[A-Z]
. Sıfırlar ve sıfırlar yerine doğru ve yanlış kullanabilirsiniz.
Test senaryoları:
Input: ABBBABABA
Output: 100010101, 011101010
Input: AAAAAAAAA
Output: 111111111
Input: AFGHEEHFD
Output: 100000000 000000000 000000000 000000001 000011000 010000010 001000000 000100100
Input: Z
Output: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1
Input: ABCDCDBCDABC
Output: 100000000100, 010000100010, 001010010001, 000101001000
Bu kod golf , yani en az bayt ile gönderme kazanır!



[a-z]Bunun yerine kullanabilir miyiz ?