public class Main {
public static int findUpperBound(int[] arr, int target) {
for (int i = 0; i < arr.length; i++) {
if (arr[i] > target) {
return i;
}
}
return arr.length;
}
public static void main
(String[] args
) { int[] arr = {1, 3, 5, 6, 6, 7, 7, 9};
int target = 6;
int upperBoundIndex = findUpperBound(arr, target);
if (upperBoundIndex < arr.length) {
System.
out.
println("Upper bound of " + target
+ " is at index " + upperBoundIndex
); } else {
System.
out.
println("Upper bound of " + target
+ " is not found in the array."); }
}
}
cHVibGljIGNsYXNzIE1haW4gewogICAgcHVibGljIHN0YXRpYyBpbnQgZmluZFVwcGVyQm91bmQoaW50W10gYXJyLCBpbnQgdGFyZ2V0KSB7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBhcnIubGVuZ3RoOyBpKyspIHsKICAgICAgICAgICAgaWYgKGFycltpXSA+IHRhcmdldCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIGFyci5sZW5ndGg7CiAgICB9CgogICAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgICAgIGludFtdIGFyciA9IHsxLCAzLCA1LCA2LCA2LCA3LCA3LCA5fTsKICAgICAgICBpbnQgdGFyZ2V0ID0gNjsKICAgICAgICBpbnQgdXBwZXJCb3VuZEluZGV4ID0gZmluZFVwcGVyQm91bmQoYXJyLCB0YXJnZXQpOwoKICAgICAgICBpZiAodXBwZXJCb3VuZEluZGV4IDwgYXJyLmxlbmd0aCkgewogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlVwcGVyIGJvdW5kIG9mICIgKyB0YXJnZXQgKyAiIGlzIGF0IGluZGV4ICIgKyB1cHBlckJvdW5kSW5kZXgpOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiVXBwZXIgYm91bmQgb2YgIiArIHRhcmdldCArICIgaXMgbm90IGZvdW5kIGluIHRoZSBhcnJheS4iKTsKICAgICAgICB9CiAgICB9Cn0K