/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
static int getRotationCount(int[] arr){
if (arr == null)
return 0;
int low = 0;
int high = arr.length-1;
while (arr[low] > arr[high])
{
// find mid.
int mid = (low + high)/2;
// decide which sub-array to continue with.
if (arr[mid] > arr[high])
low = mid + 1;
else
high = mid;
}
return low;
}
{
// your code goes here
int[] A = { 7, 8, 9, 10, 1, 2, 3, 4, 5, 6};
System.
out.
println("The array is rotated " + getRotationCount
(A
) + " times"); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXN0YXRpYyBpbnQgZ2V0Um90YXRpb25Db3VudChpbnRbXSBhcnIpewoJCWlmIChhcnIgPT0gbnVsbCkKCQkJcmV0dXJuIDA7CgkJaW50IGxvdyA9IDA7CgkJaW50IGhpZ2ggPSBhcnIubGVuZ3RoLTE7CgkJd2hpbGUgKGFycltsb3ddID4gYXJyW2hpZ2hdKQogICAgCXsKICAgICAgICAJLy8gZmluZCBtaWQuCiAgICAgICAgCWludCBtaWQgPSAobG93ICsgaGlnaCkvMjsKICAgICAgICAJLy8gZGVjaWRlIHdoaWNoIHN1Yi1hcnJheSB0byBjb250aW51ZSB3aXRoLgogICAgICAgIAlpZiAoYXJyW21pZF0gPiBhcnJbaGlnaF0pCiAgICAgICAgICAgIAlsb3cgPSBtaWQgKyAxOwogICAgICAgIAllbHNlCiAgICAgICAgICAgIAloaWdoID0gbWlkOwogICAgCX0KICAgIAlyZXR1cm4gbG93Owp9CgkKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCQlpbnRbXSBBID0geyA3LCA4LCA5LCAxMCwgMSwgMiwgMywgNCwgNSwgNn07CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJUaGUgYXJyYXkgaXMgcm90YXRlZCAiICsgZ2V0Um90YXRpb25Db3VudChBKSArICIgdGltZXMiKTsKCX0KfQ==