“ YMCA”是乡村人民流行的迪斯科歌曲,有着著名的舞蹈。编写最短的程序,以输出与歌曲的合唱同步的大写字母“ Y”,“ M”,“ C”和“ A”。
通常,发送到标准输出的每一行都有一个字母。这主要是为了简化受C标准库的输出缓冲限制的程序(打印换行符会刷新输出缓冲区),因此,如果省略这些换行符会使您的程序更短,则可以省略其中的任何或所有换行符。
您的程序(与音乐同时启动)必须在启动后每隔0.125 s内输出字母“ Y”(以秒为单位;这是我从YouTube上发布的音乐视频中确定的)。
45.766 49.611 60.889
64.661 109.816 113.591
124.810 128.687 173.830
177.620 188.950 192.724
204.013 207.739 219.057
字母“ M”,“ C”和“ A”分别在每个“ Y”之后分别为0.930 s,1.395 s和1.628 s。出于测试目的,通过将这些相对时间加到前面的“ Y”时间中,可以将它们转换为绝对时间。
我已经用C语言编写了一个测试程序和相应的示例程序,假定每个字母后都有一个换行符(尽管这不是竞争规则)。它是为Linux编写的,如果不使用Cygwin,将无法在Windows上运行。如果您无法使用测试程序测试提交的内容,请至少根据YouTube视频来检查提交的内容。
如果您的提交要求使用特殊的命令行选项才能正常运行,则该命令行选项将在计算分数时计算在内。但是,任何解释器的启动时间都不会影响您,可以根据需要修改测试程序以适应该要求。
尽管我怀疑存在,但我必须说禁止使用专门为此任务设计的编程语言功能或库。