Допустим каждый тест имеет разную стоимость в баллах.
Можно ли как то оценивать чекером каждый тест в процентном отношении от стоимости(например, 50%) при условии целочисленного результата?
Подсчет количества баллов
Re: Подсчет количества баллов
Вопрос непонятен.
Re: Подсчет количества баллов
Например:
У меня есть задача с 5 тестами с такими баллами за каждый тест
2 4 6 8 10
Решение участника может получить на каждом тесте или полный балл за тест или половину баллов за тест
Например:
В тестах 1,3,5 решение участника решило задачу на 50%, а остальные - на полный балл (100%), тогда сумма баллов решения:
2*(50/100) + 4*(100/100) + 6*(50/100) + 8*(100/100) + 10*(50/100) = 21
У меня есть задача с 5 тестами с такими баллами за каждый тест
2 4 6 8 10
Решение участника может получить на каждом тесте или полный балл за тест или половину баллов за тест
Например:
В тестах 1,3,5 решение участника решило задачу на 50%, а остальные - на полный балл (100%), тогда сумма баллов решения:
2*(50/100) + 4*(100/100) + 6*(50/100) + 8*(100/100) + 10*(50/100) = 21
Re: Подсчет количества баллов
Я хотел решил проблему сочетанием чекера и оценивающей программы, но странный вещи происходят:
На всех тестах результат у чекера был 1 балл (с вердиктом WA)
Я в оценивающей программе всегда вывожу полный балл независимо от результата проверки.
Но все равно результат 0.
Может я что то делаю не так?
На всех тестах результат у чекера был 1 балл (с вердиктом WA)
Я в оценивающей программе всегда вывожу полный балл независимо от результата проверки.
Но все равно результат 0.
Может я что то делаю не так?
Re: Подсчет количества баллов
Опишите ситуацию подробнее.
Re: Подсчет количества баллов
Не уверен что это проблема, возможно я не так прочитал документацию.
Задача состоит из вывода количества чисел и самих чисел.
Если в каком то тесте верно количество, но не верны сами числа (или их нет), то решение участника должно получать за него 50% баллов за тест.
В настройках отмечен параметр scoring_checker.
Чекер убогий, но работает:
Если решение участника полностью не верное - 0 баллов,частично - 1 балл, полное - 2 балла.
Не менее убогая оценивающая программа:
Так вот самое интересное в том (а может и нормальное), что в таком варианте оцен. программа всегда выводит полный балл и все равно балл за задачу 0.
Я правильно понимаю, что если при установленном параметре scoring_checker при вердикте WA балл дает чекер, а не выставляется 0?
Задача состоит из вывода количества чисел и самих чисел.
Если в каком то тесте верно количество, но не верны сами числа (или их нет), то решение участника должно получать за него 50% баллов за тест.
В настройках отмечен параметр scoring_checker.
Чекер убогий, но работает:
Code: Select all
#define EJUDGE
#include "testlib.h"
int main(int argc, char * argv[])
{
setName("Checker for Problem Formula 7");
registerTestlibCmd(argc, argv);
int ja=ans.readInt(), jp=ouf.readInt();
if (ja!=jp){
printf ("0\n");
return 1;
}
if (ouf.seekEof()){
printf ("1\n");
return 1;
}
for (int N=ja;N--;)
{
ja=ans.readInt(), jp=ouf.readInt();
if (ja!=jp){
printf ("1\n");
return 1;
}
}
printf ("2\n");
return 0;
}
Не менее убогая оценивающая программа:
Code: Select all
#include <iostream>
using namespace std;
int get_score (int test){
if (test<=2) return 1;
if (test<=42) return 2;
return 3;
}
int main (){
int n, i;
int s = 0;
int st, score, time;
/* cin>>n;
for (i = 1; i<=n; i++){
cin>>st>>score>>time;
if (st == 0) s += get_score(i)*2;
if (st == 1) s += get_score(i)*score;
}
cout<<s/2<<endl;*/
cout<<100<<endl;
return 0;
}
Я правильно понимаю, что если при установленном параметре scoring_checker при вердикте WA балл дает чекер, а не выставляется 0?
Re: Подсчет количества баллов
Каждый тест правильно оценивается?
Если задача оценивается 0, 1 или 2, то почему выводится 100?
Какие параметры у задачи установлены? Приведите фрагмент serve.cfg.
Если задача оценивается 0, 1 или 2, то почему выводится 100?
Какие параметры у задачи установлены? Приведите фрагмент serve.cfg.
Re: Подсчет количества баллов
Извините за беспокойство, не доглядел. Удалите пожалуйста тему.