/* 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
{
{
System.
out.
println(Arrays.
deepToString(get2DSubArray
(new double[][] { {1,2,3},
{4,5,6},
{7,8,9}
}, 1,2,1,2)));
}
public static double[][] get2DSubArray(double[][] largeArray, int rowStartIndex, int rowEndIndex, int columnStartIndex, int columnEndIndex) {
double[][] subArray = new double[rowEndIndex-rowStartIndex+1][columnEndIndex-columnStartIndex+1];
for (int row = rowStartIndex; row < rowEndIndex; row++) {
subArray
[row
] = Arrays.
copyOfRange(largeArray
[row
], columnStartIndex, columnEndIndex
); }
return subArray;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVN5c3RlbS5vdXQucHJpbnRsbihBcnJheXMuZGVlcFRvU3RyaW5nKGdldDJEU3ViQXJyYXkobmV3IGRvdWJsZVtdW10gewoJCQl7MSwyLDN9LAoJCQl7NCw1LDZ9LAoJCQl7Nyw4LDl9CgkJfSwgMSwyLDEsMikpKTsKCX0KCQoJcHVibGljIHN0YXRpYyBkb3VibGVbXVtdIGdldDJEU3ViQXJyYXkoZG91YmxlW11bXSBsYXJnZUFycmF5LCBpbnQgcm93U3RhcnRJbmRleCwgaW50IHJvd0VuZEluZGV4LCBpbnQgY29sdW1uU3RhcnRJbmRleCwgaW50IGNvbHVtbkVuZEluZGV4KSB7CgkgICAgZG91YmxlW11bXSBzdWJBcnJheSA9IG5ldyBkb3VibGVbcm93RW5kSW5kZXgtcm93U3RhcnRJbmRleCsxXVtjb2x1bW5FbmRJbmRleC1jb2x1bW5TdGFydEluZGV4KzFdOwoJICAgIGZvciAoaW50IHJvdyA9IHJvd1N0YXJ0SW5kZXg7IHJvdyA8IHJvd0VuZEluZGV4OyByb3crKykgewoJICAgICAgICBzdWJBcnJheVtyb3ddID0gQXJyYXlzLmNvcHlPZlJhbmdlKGxhcmdlQXJyYXlbcm93XSwgY29sdW1uU3RhcnRJbmRleCwgY29sdW1uRW5kSW5kZXgpOwoJICAgIH0KCSAgICByZXR1cm4gc3ViQXJyYXk7Cgl9Cn0=