关于数据我想说

从 Trac 迁移的文章

这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。

原文章内容如下:

1. input注意

 input必须严格符合题意,比如规模和数据范围,包括空行 空格个数 换行 TAB!

 最需要注意的是必须要是Linux格式的,关于这一点应该在很多地方提过了。

 同时有好的题目更要有好的数据,对于题意中所有可能的情况,必须有对应的测试数据,input要包含一些边界、特殊的数据,比如题目描述中说0<=n<=1000000,那么n取0和1000000这两组数据一定要有,测试数据应该能卡掉所有典型的不正确算法。这些小数据往往需要人肉。而即使是大数据,往往也不是简单的RANDOM能够生成的,如果你用的一个或多个脚本或工具生成数据,可以把它贴出来。

2. output注意

 output一般由程序跑input生成,一般没有太多问题。不过注意别更新了input忘了output,还有Linux格式……

 对于人肉的部分的output最好检查一下,还有大致看看output有没有明显不合理的地方,这样可以帮助检查solution的正确性

3.
 '''数据量应该合适,一般不要超过1M,但最好有不少随机数据,不是所有题都非要卡到标程跑0.xs才满足,O(1)的题有个1w组数据足够了'''

4.
 '''没有特殊情况,不要将id等出现在题目中,特别是题目背景和这个人毫无针对性的时候,用Alice/Bob等代替'''

1. input注意

input必须严格符合题意,比如规模和数据范围,包括空行 空格个数 换行 TAB!

最需要注意的是必须要是Linux格式的,关于这一点应该在很多地方提过了。

同时有好的题目更要有好的数据,对于题意中所有可能的情况,必须有对应的测试数据,input要包含一些边界、特殊的数据,比如题目描述中说0<=n<=1000000,那么n取0和1000000这两组数据一定要有,测试数据应该能卡掉所有典型的不正确算法。这些小数据往往需要人肉。而即使是大数据,往往也不是简单的RANDOM能够生成的,如果你用的一个或多个脚本或工具生成数据,可以把它贴出来。

2. output注意

output一般由程序跑input生成,一般没有太多问题。不过注意别更新了input忘了output,还有Linux格式……

对于人肉的部分的output最好检查一下,还有大致看看output有没有明显不合理的地方,这样可以帮助检查solution的正确性

3.

数据量应该合适,一般不要超过1M,但最好有不少随机数据,不是所有题都非要卡到标程跑0.xs才满足,O(1)的题有个1w组数据足够了

4.

没有特殊情况,不要将id等出现在题目中,特别是题目背景和这个人毫无针对性的时候,用Alice/Bob等代替