source: java/ecj/cecj/app/numbers_game/MultiDimensionalNumbersGame2.java @ 521

Last change on this file since 521 was 193, checked in by Maciej Komosinski, 11 years ago

Set svn:eol-style native for all textual files

  • Property svn:eol-style set to native
File size: 1.1 KB
RevLine 
[44]1package cecj.app.numbers_game;
2
3import java.math.BigInteger;
4import java.util.List;
5
6import cecj.interaction.InteractionResult;
7import cecj.interaction.RealValuedResult;
8import cecj.utils.Pair;
9
10
11public class MultiDimensionalNumbersGame2 extends MultiDimensionalNumbersGame {
12
13        @Override
14        protected Pair<? extends InteractionResult> compareDimensionsVectors(
15                        List<BigInteger> candidateVector, List<BigInteger> testVector) {
16
17                int comparisonDimension = 0;
18                BigInteger minDiffOnDimension = candidateVector.get(0).subtract(testVector.get(0)).abs();
19                for (int dim = 1; dim < candidateVector.size(); dim++) {
20                        BigInteger diff = candidateVector.get(dim).subtract(testVector.get(dim)).abs();
21                        if (diff.compareTo(minDiffOnDimension) < 0) {
22                                minDiffOnDimension = diff;
23                                comparisonDimension = dim;
24                        }
25                }
26
27                if (candidateVector.get(comparisonDimension).compareTo(testVector.get(comparisonDimension)) > 0) {
28                        return new Pair<RealValuedResult>(new RealValuedResult(1), new RealValuedResult(0));
29                } else {
30                        return new Pair<RealValuedResult>(new RealValuedResult(0), new RealValuedResult(1));
31                }
32        }
33}
Note: See TracBrowser for help on using the repository browser.