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:

Leave a Comment

three × 3 =