Tạo triển khai FizzBuzz khó hiểu nhất có thể.
Để được coi là bị xáo trộn, nó cần đáp ứng ít nhất một trong những điều sau đây:
- Không chứa bất kỳ từ nào "Fizz", "Buzz" hoặc "FizzBuzz"
- Không chứa các số 3, 5 hoặc 15.
- Sử dụng bất kỳ điều nào ở trên một cách sai lệch.
Hãy nhớ rằng: Mục tiêu là ngắn và khó theo dõi.
Mẫu mã đã truyền cảm hứng cho câu hỏi này như sau:
public class Default
{
enum FizzBuzz
{
Buzz = 1,
Fizz,
FizzBuzz
}
public static void Main(string[] args)
{
byte[] foo =
Convert.FromBase64String("IAmGMEiCIQySYAiDJBjCIAmGMEiCIQySYA==");
MemoryStream ms = new MemoryStream(foo);
byte[] myByte = new byte[1];
do
{
FizzBuzz fb;
ms.Read(myByte, 0, 1);
for (int i = 0; i < 4; i++)
{
fb = (FizzBuzz)(myByte[0] >> (2 * i)
& (int)FizzBuzz.FizzBuzz);
Console.Out.WriteLine( (((int)fb > 0) ? "" + fb : ""
+ ((ms.Position - 1) * 4 + i + 1)));
}
} while (ms.Position < ms.Length);
}
}