# Dazzling AXNODR Challenge AXNODR Codechef Solution

## Dazzling AXNODR Challenge AXNODR Solution

Dazzler has a blank canvas and (N−1) colours numbered from 2 to N. Let B denote the beauty of the canvas. The beauty of a blank canvas is 1. Dazzler paints the canvas by using all the (N−1) colours exactly once.

On applying the ith colour (2≤i≤N):

If i is odd, B=B & i.
If i is even, B=B⊕i.
Find the beauty of the canvas after applying all (N−1) colours.

Note: The colours are applied in ascending order. Colour number 2 is applied first. The ith numbered colour is applied after (i−1)th numbered colour for all i>2.

Here & and ⊕ denote the bitwise AND and bitwise XOR operations respectively.

Input Format

• First line will contain T, the number of test cases. Then the test cases follow.
• Each test case contains of a single line of input, a single integer N.

Output Format

For each test case, output a single integer, the beauty of the canvas after applying all (N−1) colours.

Constraints

• 1≤T≤105
• 2≤N≤1016

Sample Input 1
2
4
10

Sample Output 1
7
3

Explanation
Initially, B=1.

On applying colour 2: Since 2 is even, B=B⊕2=1⊕2=3.
On applying colour 3: Since 3 is odd, B=B&3=3&3=3.
On applying colour 4: Since 4 is even, B=B⊕4=3⊕4=7.
On applying colour 5: Since 5 is odd, B=B&5=7&5=5.
On applying colour 6: Since 6 is even, B=B⊕6=5⊕6=3.
On applying colour 7: Since 7 is odd, B=B&7=3&7=3.
On applying colour 8: Since 8 is even, B=B⊕8=3⊕8=11.
On applying colour 9: Since 9 is odd, B=B&9=11&9=9.
On applying colour 10: Since 10 is even, B=B⊕10=9⊕10=3.

Test case 1: There are 3 colours numbered 2,3, and 4. Initially, B=1.
The final beauty of the canvas is 7.

Test case 2: There are 9 colours numbered 2,3,4,5,6,7,8,9, and 10. Initially, B=1.
The final beauty of the canvas is 3.

## SOLUTION

Program: Dazzling AXNODR Challenge AXNODR Solution in Python

``````for _ in range (int(input())):
a=int(input())
if(a%2==0):
if(a%4==0):
t=3^a
else:
t=3
else:
if ((a-1)%4==0):

t= (3^a-1) and a
else:
t=3

print(tmp)``````

Program: Dazzling AXNODR Challenge AXNODR Solution in C++

``````#include <iostream>
using namespace std;
int main() {
long long int t;
cin>>t;
long long int n;
while(t--){
cin>>n;
if(n%4==0)
cout<<n+3<<endl;
else if(n%4==1)
cout<<n<<endl;
else
cout<<"3"<<endl;
}
return 0;
}``````

Program: Dazzling AXNODR Challenge AXNODR Solution in Java

``````import java.util.*;
import java.lang.*;
import java.io.*;
class Codechef
{
public static void main (String[] args) throws java.lang.Exception
{
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
for(int i=0;i<t;i++){
long n = sc.nextLong();
if(n%4==0){
System.out.println(n+3);
}else if(n%4==1){
System.out.println(n);
}else System.out.println(3);
}
}
}``````

Related: