-
Notifications
You must be signed in to change notification settings - Fork 183
Expand file tree
/
Copy pathsearch2dArray.java
More file actions
53 lines (46 loc) · 883 Bytes
/
search2dArray.java
File metadata and controls
53 lines (46 loc) · 883 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package algorithmica;
import java.util.Scanner;
public class search2dArray {
public static void main(String[] args) {
// TODO Auto-generated method stub
int size;
Scanner in=new Scanner(System.in);
size=in.nextInt();
int [][] arr=new int[size][size];
for(int i=0;i<arr.length;i++)
for(int j=0;j<arr.length;j++)
arr[i][j]=in.nextInt();
int x=in.nextInt();
pair p=findElementIndex(arr, x);
p.getindex();
}
public static pair findElementIndex(int[][] a,int x)
{
int ri=0;
int ci=a.length-1;
while(ri<a.length&&ci>=0)
{
if(a[ri][ci]==x)
return new pair(ri,ci);
else if(x>a[ri][ci])
ri++;
else
ci--;
}
return new pair(-1,-1);
}
}
class pair
{
private int ri;
private int ci;
public pair(int ri,int ci)
{
this.ri=ri;
this.ci=ci;
}
public void getindex()
{
System.out.println(this.ri+" "+this.ci);
}
}