Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions 1472DesignBrowserHistory.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
class BrowserHistory {
List<String> arr=new ArrayList<>();
int i=0;
public BrowserHistory(String homepage) {
arr.add(homepage);
i=0;
}
public void visit(String url) {
while(arr.size()>i+1){
arr.remove(arr.size()-1);
}
arr.add(url);
i++;
}
public String back(int steps) {
i=Math.max(i-steps,0);
return arr.get(i);
}
public String forward(int steps) {
i=i+steps;
if(i>=arr.size()){
i=arr.size()-1;
}
return arr.get(i);
}
}

/**
* Your BrowserHistory object will be instantiated and called as such:
* BrowserHistory obj = new BrowserHistory(homepage);
* obj.visit(url);
* String param_2 = obj.back(steps);
* String param_3 = obj.forward(steps);
*/
14 changes: 14 additions & 0 deletions 2696MinimumStringLengthAfterRemovingSubstrings.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
class Solution {
public int minLength(String s) {
Stack<Character> st=new Stack<>();
for(char c:s.toCharArray()){
if(!st.isEmpty()){
if(st.peek()=='A' && c=='B') st.pop();
else if(st.peek()=='C' && c=='D') st.pop();
else st.push(c);
}
else st.push(c);
}
return st.size();
}
}
22 changes: 22 additions & 0 deletions 682BaseballGame.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
class Solution {
public int calPoints(String[] operations) {
Stack<Integer> stack=new Stack<>();
for(String st:operations){
if(st.equals("C")) stack.pop();
else if(st.equals("D")) stack.push(stack.peek()*2);
else if(st.equals("+")){
int a=stack.pop();
int b=stack.pop();
stack.push(b);
stack.push(a);
stack.push(a+b);
}
else stack.push(Integer.parseInt(st));
}
int ans=0;
while(!stack.isEmpty()){
ans+=stack.pop();
}
return ans;
}
}
17 changes: 17 additions & 0 deletions CoinChange.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import java.util.Arrays;

public class CoinChange {
public int coinChange(int[] coins, int amount) {
int[] dp=new int[amount+1];
Arrays.fill(dp,amount+1);
dp[0]=0;
for(int i=1;i<=amount;i++){
for(int j=0;j<coins.length;j++){
if(coins[j]<=i){
dp[i]=Math.min(dp[i],dp[i-coins[j]]+1);
}
}
}
return dp[amount]>amount?-1:dp[amount];
}
}
49 changes: 49 additions & 0 deletions CounttheNumberofFairPairs.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
import java.util.Arrays;

public class CounttheNumberofFairPairs {
public int left(int nums[], int tar){
int i =0;
int j = nums.length-1;
int res = -1;
while(i<=j){
int mid = (i+j)/2;
if(nums[mid]>=tar){
res = mid;
j = mid-1;
}else i = mid+1;
}
return res;
}
public int right(int nums[], int tar){
int i =0;
int j = nums.length-1;
int res = -1;
while(i<=j){
int mid = (i+j)/2;
if(nums[mid]<=tar){
res = mid;
i = mid+1;
}else j = mid-1;
}
return res;
}
public int solve(int nums[], int l, int r, int i){
int left = left(nums,l-nums[i]);
if(left==-1) return 0;
int right = right(nums,r-nums[i]);
if(right==-1) return 0;
int diff = (right-left+1);
if(left<=i && right>=i) diff--;
return diff;

}
public long countFairPairs(int[] nums, int lower, int upper) {
Arrays.sort(nums);
long res= 0;
for(int i=0; i<nums.length; i++){
int temp =solve(nums,lower,upper,i);
res+=temp;
}
return res/2;
}
}
15 changes: 15 additions & 0 deletions Factorial.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@

import java.util.*;
public class Factorial {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
System.out.println(fact(n));
}
public static int fact(int n){
if(n==1 || n==0){
return 1;
}
return n*fact(n-1);
}
}
17 changes: 17 additions & 0 deletions NaturalSum.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@

import java.util.*;
public class NaturalSum {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
func(n,1);
}
public static void func(int n,int n2){
if(n==n2){
System.out.print(n2);
return;
}
System.out.print(n2+"+");
func(n, n2+1);
}
}
12 changes: 12 additions & 0 deletions Nthfibonacii.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
import java.util.*;
public class Nthfibonacii {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
System.out.println(func(n));
}
public static int func(int n){
if(n==0 || n==1) return 1;
return func(n-1)+func(n-2);
}
}
20 changes: 20 additions & 0 deletions PowerOf2.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@


public class PowerOf2 {
public static void main(String[] args) {
PowerOf2 p = new PowerOf2();
int num = 16;
if (p.isPowerOfTwo(num)) {
System.out.println(num + " is a power of 2.");
} else {
System.out.println(num + " is not a power of 2.");
}
}

public boolean isPowerOfTwo(int n) {
if (n <= 0) {
return false;
}
return (n & (n - 1)) == 0;
}
}
Loading