각 단계의 테스트에서 잘못된 결과가 나올 때 이진 검색을 수행하는 알고리즘이 필요합니다.
배경 :
학생들을 12 가지 난이도 수준 중 가장 적절한 곳에 배치해야합니다. 현재의 접근 방식은 무차별 적이며 난이도 증가, 세 가지 잘못 후 중단 floor((score - 1) / 5) + 1
, 최소 1의 수준으로 학생을 배치하는 60 가지의 4 가지 객관식 질문을 합니다.
고객이 실제로 프로그램을 사용하기 전에 최대 60 개의 질문으로 테스트를받을 때 고객이 종료되는 것이 우려되므로 테스트에서 묻는 질문 수를 최소화하고 싶습니다. 또한 고객이 배치 테스트를 건너 뛰고 (길게 보이기 때문에) 너무 쉬워 프로그램을 포기하는 것이 우려됩니다.
평균 배치는 실제로 레벨 2에 있으므로 학생의 50 + % 이상이 <11 점을받습니다 (즉, <14 개의 질문에 답). 일화 적으로, 이것은 심심하고 질문을 진지하게 받아들이지 않기 때문일 수 있습니다 (어린 아이들).
제안 된 해결 방법 : 난이도 6/7의 질문으로 시작하여 질문이 옳은지 아닌지에 따라 진행하는 12 개의 항목에 대한 이진 검색으로 테스트를 구현하십시오. 이론적으로 이것은 3-4 질문에서 그들에게 적절한 난이도를 찾을 수 있습니다.
문제 : 기존의 시험에서 세 가지 오답 후에 끝나고 60 개의 질문을 사용하여 12 가지 레벨 중에서 선택하는 것으로 추측 할 수 있듯이, 학생들은 정답 (시간의 25 %를 수행해야 함)을 우연히 말리거나 실수로 우연히 허용하려고합니다. 오답 (뚱뚱한 손가락, 오해 질문 등). 첫 번째 질문에 정답을 쓰면 다른 모든 질문에 잘못이 있어도 난이도의 상위 절반에 도달 할 수 있기 때문에 이진 검색에서는 훨씬 더 중요합니다.
개별 테스트가 정확하다는 것을 보장 할 수없는 이진 검색 알고리즘이 있습니까?
순진하게 각 단계에서 3 ~ 5 개의 질문을 시도 할 수 있으며, 초기 질문은 이후 질문보다 최종 결과에 더 큰 영향을 미치므로 이러한 추가 질문은 이후 단계가 아닌 초기 단계에만 추가 할 수 있습니다. 그것보다 더 있습니까?