在线评测时 AI 异常 TLE 是为什么?
可能是输出了过多调试信息。关于输出调试信息的说明大家可以参看 AI 编写手册 中的相关小节。
评测结果中的 IA 表示什么?
部分选手AI出现IA的结果,这是由于执行了不合法的操作(过多分裂、过短分裂等)导致判负,具体原因可下载回放文件,最后一行会显示错误信息。
人类选手出现IA多为一方玩家发送过多操作导致(连打或者连点)。
评测结果中为什么会出现 EXIT?
可能是你的代码中途退出了。
旧版 C++ ADK 有错误。如果你使用的 C++ ADK 版本较旧,请检查 adk.hpp
中 SnakeGoAI::handle_gameover
函数的实现,如果有 ::exit( 0 );
,请替换为一个死循环。
我的代码看起来没问题,对局详情里用时也没有超,但为什么会被判 TLE?
可能是输出了过多调试信息。平台对输出调试信息的总大小有限制。如果你的 AI 调试信息总长度超出了 64KB(这是 Linux 缓冲区的默认大小),有可能会因为缓冲区被填满,导致你的 AI 被阻塞,而被判为 TLE。