john9823   13일 전

안녕하세요. 정렬 로직이 잘못 작성된 코드가 현재 채점 데이터를 모두 통과하는 허점이 있어 제보드립니다.

종료 시간이 같을 때 시작 시간을 기준으로 비교하는 로직에 명백한 오류(정렬 기준 모순)가 있음에도 현재 테스트 케이스에서는 예외 없이 정답 처리가 되고 있습니다.

이를 입증하기 위해, 무작위 난수로 테스트 케이스를 생성하여 정상 코드와 버그 코드를 비교 대조하는 검증기 코드(Main.java)를 첨부합니다.

해당 코드를 통해 테스트해 본 결과, Java 환경에서 내부 정렬 알고리즘 모순으로 인해 런타임 에러(IllegalArgumentException)가 발생하거나, 다른 결과가 도출되는 엣지 케이스들을 다수 확보할 수 있었습니다.

첨부된 테스트 코드와 도출된 반례들을 확인해 보시고, 문제의 테스트 케이스(데이터) 추가를 검토해 주시면 감사하겠습니다!

milun_i   12일 전

안녕하세요.

첨부해주신 코드의 정렬 부분을 검증기의 올바른 정렬 로직(기존 코드와 동일), 버그 정렬 로직 두 가지로 교체하여 testcase.ac에 제출해보았을 때 반례를 찾을 수 없었습니다.

혹시 실제 반례나 런타임 에러가 나는 입력을 구체적으로 제시해주실 수 있을까요?

john9823   12일 전

65
12 19
0 4
44 53
36 41
0 9
47 56
13 15
47 50
37 40
38 46
14 17
15 15
13 13
39 45
39 43
45 50
26 31
37 44
2 4
23 28
3 7
17 17
11 18
28 34
25 31
8 14
31 37
4 8
9 9
22 28
43 44
5 13
37 39
22 29
34 34
43 50
38 45
48 48
22 24
31 34
35 44
22 30
31 36
35 40
37 38
5 13
15 22
27 35
11 19
45 46
17 23
32 41
31 31
44 48
16 20
12 12
21 28
48 57
40 41
41 47
48 50
35 40
5 9
48 57
4 13

==============================

94
48 57
36 43
40 42
26 29
22 26
8 8
37 37
45 53
29 31
2 8
42 46
6 8
18 24
39 40
28 36
10 19
31 31
43 47
6 10
25 25
45 47
19 27
18 25
27 36
44 44
9 10
0 0
48 50
39 39
30 37
34 43
4 4
12 15
41 48
20 28
1 7
9 15
27 29
12 18
35 41
36 40
39 39
34 35
0 9
26 33
1 1
12 13
46 51
40 41
15 16
49 53
7 12
43 48
3 6
7 16
12 18
43 44
27 34
32 39
7 13
28 36
41 46
42 44
14 17
10 10
13 17
15 23
48 54
33 39
25 30
32 41
33 35
44 50
15 22
26 35
17 19
48 53
5 8
21 28
31 33
20 26
31 33
24 25
22 26
0 2
4 6
23 31
1 10
0 1
27 34
42 46
4 11
36 38
42 50
======================

안녕하세요! 앞서 말씀드렸던 문제점을 직접 확인할 수 있는 구체적인 테스트 케이스를 추출하여 공유해 드립니다.

하나는 런타임 에러를 뿜고 강제 종료되는 케이스이고, 다른 하나는 실제 결과와 다른 정답을 도출해 내는 반례 케이스입니다.

이 데이터들은 다른 유저분들도 쉽게 테스트해 보실 수 있도록 testcase.ac 에도 등록해 두었습니다. 관리자님께서 채점 데이터 보강을 검토하실 때 유용하게 활용해 주시면 감사하겠습니다. 확인 부탁드립니다!

댓글을 작성하려면 로그인해야 합니다.