import java.util.Arrays;
public class WeightedAverage
{
public static double mean(List<Integer> numbers, List<Integer> weights)
{
int total = 0;
int totalWeights = 0;
for (int i = 0; i < numbers.size(); i++)
{
total += numbers.get(i) * weights.get(i);
totalWeights += weights.get(i);
}
return total / totalWeights;
}
public static void main(String[] args)
{
List<Integer> a = Arrays.asList(new Integer[] { 3, 6 });
List<Integer> b = Arrays.asList(new Integer[] { 4, 2 });
System.out
.println
(WeightedAverage
.mean
(a
, b
)); }
}
aW1wb3J0IGphdmEudXRpbC5MaXN0OwppbXBvcnQgamF2YS51dGlsLkFycmF5czsKCnB1YmxpYyBjbGFzcyBXZWlnaHRlZEF2ZXJhZ2UKewogICAgcHVibGljIHN0YXRpYyBkb3VibGUgbWVhbihMaXN0PEludGVnZXI+IG51bWJlcnMsIExpc3Q8SW50ZWdlcj4gd2VpZ2h0cykKICAgIHsKICAgICAgICBpbnQgdG90YWwgPSAwOwogICAgICAgIGludCB0b3RhbFdlaWdodHMgPSAwOwogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnVtYmVycy5zaXplKCk7IGkrKykKICAgICAgICB7CiAgICAgICAgICAgIHRvdGFsICs9IG51bWJlcnMuZ2V0KGkpICogd2VpZ2h0cy5nZXQoaSk7CiAgICAgICAgICAgIHRvdGFsV2VpZ2h0cyArPSB3ZWlnaHRzLmdldChpKTsKICAgICAgICB9CgogICAgICAgIHJldHVybiB0b3RhbCAvIHRvdGFsV2VpZ2h0czsKICAgIH0KCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKQogICAgewogICAgICAgIExpc3Q8SW50ZWdlcj4gYSA9IEFycmF5cy5hc0xpc3QobmV3IEludGVnZXJbXSB7IDMsIDYgfSk7CiAgICAgICAgTGlzdDxJbnRlZ2VyPiBiID0gQXJyYXlzLmFzTGlzdChuZXcgSW50ZWdlcltdIHsgNCwgMiB9KTsKCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKFdlaWdodGVkQXZlcmFnZS5tZWFuKGEsIGIpKTsKICAgIH0KfQ==