Skip to content

Commit

Permalink
Added codes for 20 May
Browse files Browse the repository at this point in the history
  • Loading branch information
Tanmay-312 committed May 20, 2024
1 parent 529db8c commit c6bcd8a
Show file tree
Hide file tree
Showing 4 changed files with 75 additions and 0 deletions.
54 changes: 54 additions & 0 deletions GeeksForGeeks/May/20-5-24/GFG.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
//{ Driver Code Starts
//Initial Template for Java

import java.util.*;
import java.lang.*;
import java.io.*;
class GFG
{
public static void main(String[] args) throws IOException
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine().trim());
while(T-->0)
{
String s = br.readLine();
String[] S = s.split(" ");
long x = Long.parseLong(S[0]);
long n = Long.parseLong(S[1]);
long m = Long.parseLong(S[2]);
Solution ob = new Solution();
long ans = ob.PowMod(x, n, m);
System.out.println(ans);
}
}
}

// } Driver Code Ends


//User function Template for Java

class Solution
{
public long PowMod(long x, long n, long m)
{
// Code here
long res = 1;
x %= m;

if(x == 0)
return 0;

while(n > 0)
{
if((n&1) != 0)
res = (res * x) % m;

n = n >> 1;
x = (x * x) % m;
}

return res;
}
}
2 changes: 2 additions & 0 deletions GeeksForGeeks/May/20-5-24/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Time complexity - O(logn)
Space complexity - O(1)
2 changes: 2 additions & 0 deletions LeetCode/May/20-5-24/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Time complexity - O(2^n)
Space complexity - O(2^n)
17 changes: 17 additions & 0 deletions LeetCode/May/20-5-24/Solution.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
class Solution
{
public int subsetXORSum(int[] nums)
{
return solve(nums, 0, 0);
}

private int solve(int[] nums, int i, int xors)
{
if (i == nums.length)
return xors;

int x = solve(nums, i + 1, xors);
int y = solve(nums, i + 1, nums[i] ^ xors);
return x + y;
}
}

0 comments on commit c6bcd8a

Please sign in to comment.