Exemple #1
0
 protected BoardViewModel(int cid, IRankingStrategy rule, ProblemCollection problems, IContestTime time)
 {
     ContestId       = cid;
     RankingStrategy = (rule as IRankingStrategyV2) ?? NullRank.Instance;
     Problems        = problems;
     ContestTime     = time;
 }
Exemple #2
0
 public ScoreboardModel(
     int cid,
     IReadOnlyDictionary <int, IScoreboardRow> data,
     IReadOnlyDictionary <int, Category> categories,
     IReadOnlyDictionary <int, Affiliation> affiliations,
     ProblemCollection problems,
     IContestTime time,
     IRankingStrategy rankingStrategy)
     : this(
         cid,
         rankingStrategy,
         time,
         data,
         categories,
         affiliations,
         problems,
         new SortOrderLookup(categories, data, true, rankingStrategy),
         new SortOrderLookup(categories, data, false, rankingStrategy))
 {
 }
Exemple #3
0
        private void createRankingStrategyInstance()
        {
            switch (strategy)
            {
            case EStrategy.Dstar:
                rankingStrategy = new Dstar();
                break;

            case EStrategy.Dstar2:
                rankingStrategy = new Dstar(2);
                break;

            case EStrategy.Dstar3:
                rankingStrategy = new Dstar(3);
                break;

            case EStrategy.Dstar4:
                rankingStrategy = new Dstar(4);
                break;

            case EStrategy.Dstar5:
                rankingStrategy = new Dstar(5);
                break;

            case EStrategy.Jaccard:
                rankingStrategy = new Jaccard();
                break;

            //case EStrategy.Hamming:
            //    rankingStrategy = new Hamming();
            //    break;
            case EStrategy.Ochiai:
                rankingStrategy = new Ochiai();
                break;

            case EStrategy.Tarantula:
                rankingStrategy = new Tarantula();
                break;
            }
        }
Exemple #4
0
 public ScoreboardModel(
     int cid,
     IRankingStrategy rule,
     IContestTime time,
     IReadOnlyDictionary <int, IScoreboardRow> data,
     IReadOnlyDictionary <int, Category> categories,
     IReadOnlyDictionary <int, Affiliation> affiliations,
     ProblemCollection problems,
     SortOrderLookup @public,
     SortOrderLookup restricted)
 {
     ContestId       = cid;
     RankingStrategy = rule;
     Data            = data;
     RefreshTime     = DateTimeOffset.Now;
     Categories      = categories;
     Affiliations    = affiliations;
     Public          = @public;
     Restricted      = restricted;
     Problems        = problems;
     ContestTime     = time;
 }
Exemple #5
0
 public Ranker(IRankingStrategy strategy)
 {
     this.strategy = strategy;
 }