diff --git "a/khj20006/202502/11 BOJ P3 XOR \355\225\251.md" "b/khj20006/202502/11 BOJ P3 XOR \355\225\251.md" new file mode 100644 index 00000000..6cbdbebe --- /dev/null +++ "b/khj20006/202502/11 BOJ P3 XOR \355\225\251.md" @@ -0,0 +1,113 @@ +```java + +import java.util.*; +import java.io.*; + +class Node{ + int d; + Node l, r; + Node(int d){this.d = d;} +} + +class Trie{ + Node root; + Trie(){root = new Node(31);} + void insert(int x) { + Node now = root; + for(int i=30;i>=0;i--) { + int bit = x & (1<=0;i--) { + int bit = x & (1< 0) { + trie = new Trie(); + + N = Integer.parseInt(br.readLine()); + S = new int[N+1]; + + nextLine(); + for(int i=1;i<=N;i++) { + S[i] = nextInt(); + S[i] ^= S[i-1]; + } + solve(); + } + + } + + static void solve() throws Exception{ + + for(int i=1;i<=N;i++) trie.insert(S[i]); + + int ans = 0; + for(int i=0;i