public int worstRank(int[] strength) {
		if (strength.length == 3)
			return 1;
		int myScore = strength[0] + strength[1] + strength[2];
		int min = Math.min(Math.min(strength[0], strength[1]), strength[2]);
		myScore -= min;

		int[] s = new int[strength.length - 3];
		for (int i = 3; i < s.length + 3; i++) {
			s[i - 3] = strength[i];
		}
		Arrays.sort(s);

		int[] p = new int[s.length * 2 / 3];
		for (int i = 0; i < p.length; i++) {
			p[i] = s[s.length - i - 1];
		}

		int ret = 1;
		int high = 0;
		int low = p.length - 1;

		while (high < low) {
			if (p[high] + p[low] > myScore) {
				ret++;
				high++;

			}
			low--;
		}
		return ret;
	}