forked from sowon-dev/AlgorithmStudy_Java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMaximizingXOR.java
More file actions
32 lines (26 loc) ยท 921 Bytes
/
MaximizingXOR.java
File metadata and controls
32 lines (26 loc) ยท 921 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
package hackerrank;
import java.util.ArrayList;
import java.util.Collections;
public class MaximizingXOR {
static int maximizingXor(int l, int r) {
//XOR๋ ์ด๋ ํ์ชฝ๋ง์ด ์ฐธ์ผ ๋ ์ฐธ์ด๊ณ , ๋ ๋ค ์ฐธ์ด๊ฑฐ๋ ๊ฑฐ์ง์ผ ๋ ๊ฑฐ์ง์ด ๋๋ ๋
ผ๋ฆฌ ์ฐ์ฐ
//l๋ถํฐ r๊น์ง์ xor๋
ผ๋ฆฌ์ฐ์ฐ์ ํ ๊ฐ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ ๋ฆฌํดํ๋ ๋ฌธ์
ArrayList<Integer> arr = new ArrayList();
int res;
for (int i = l; i <= r; i++) {
for (int j = l; j < r; j++) {
res = i ^ j;
arr.add(res);
}
}
//๋
ผ๋ฆฌ์ฐ์ฐํ ๊ฐ ์ค๋ฆ์ฐจ์์ผ๋ก ๋์ด
Collections.sort(arr);
//์ค๋ฆ์ฐจ์์์ผ๋ก ๊ฐ์ฅ ํฐ ๋งจ ๋ค์ ๊ฐ ์ถ๋ ฅ
res = arr.get(arr.size() - 1);
return res;
}
public static void main(String[] args) {
System.out.println(maximizingXor(11, 12)+", ans: 7");
System.out.println(maximizingXor(10, 15)+", ans: 7");
}
}