前言 & 注意事项
所有数据均为官方输入+我的 AC 输出。
由于第一单元输出的浮点数采用误差比较,所以您的答案和我不同也可能是正确的。
您可以考虑自行写一个评测机进行误差比较。
数据可能不全。通过所有测试点也并不代表您的程序没有问题。
本网站没有设置任何自动化评测。
推荐大家同时熟悉 Git 的使用。
请养成良好的代码风格。这是有分的!
作业框架 & 题面导航
作业分为四个单元,第零单元,第一单元,第二单元,第三单元,其中第一和第二单元均有三次练习,为迭代开发。
第零单元 | 作业 0 | hw0 |
---|---|---|
第一单元 | 作业 1 | hw1 |
作业 2 | hw2 | |
作业 3 | hw3 | |
第二单元 | 作业 4 | hw4 |
作业 5 | hw5 | |
作业 6 | hw6 | |
第三单元 | 作业 7 | hw7 |
Tips
IDEA
打不开,提示Internet Error
,试试管理员模式运行这个:net stop winnat net start winnat
关于课程资料:下载链接
这里有一个简单的
Python
评测机供参考:def check(src1: list[str], src2: list[str]): ''' function check - this function is to check whether src2 is the same as src1 within acceptable error. param src1 - standard answer split by '\\n' param src2 - your answer split by '\\n' ''' while src1[-1] == '': src1 = src1[:-1] while src2[-1] == '': src2 = src2[:-1] if len(src1) != len(src2): return 'Your answer is too long/short.' for i, (l1, l2) in enumerate(zip(src1, src2)): l1 = l1.split() l2 = l2.split() if len(l1) != len(l2): return f'Your answer is too long/short on line {i+1}.' for e1, e2 in zip(l1, l2): if e1[-1] == ',' or e1[-1] == '.': if e1[-1] != e2[-1]: return f'Your answer differs from the standard answer on line {i+1}.' e1 = e1[:-1] e2 = e2[:-1] if e1 == e2: continue try: n1 = float(e1) n2 = float(e2) if abs(n1 - n2) / max(1, n1) <= 1e-5: continue except ValueError: pass return f'Your answer differs from the standard answer on line {i+1}.' return 'Your answer is correct!'
–e4302d7fb77329bed14802a36ce3b008–