es
Feedback
LeetCode, GeeksForGeeks Problem of the day solution

LeetCode, GeeksForGeeks Problem of the day solution

Ir al canal en Telegram

Complete daily challenges from LeetCode, GeeksForGeeks and redeem their rewards Channel link : https://t.me/leetcode_gfg_potd

Mostrar más
1 250
Suscriptores
+224 horas
+147 días
+2930 días
Archivo de publicaciones
GFG | Problem of the day :

class Solution { public: bool closeStrings(string word1, string word2) { if (word1.size() != word2.size()) { return false; } int a[26] = {0}, b[26] = {0}, mask1 = 0, mask2 = 0; for (int i = 0; i < word1.size(); i++) { a[word1[i] - 'a']++; b[word2[i] - 'a']++; mask1 |= 1 << (word1[i] - 'a'); mask2 |= 1 << (word2[i] - 'a'); }; if (mask1 != mask2) { return false; } sort(begin(a), end(a)); sort(begin(b), end(b)); for (int i = 0; i < 26; i++) { if (a[i] != b[i]) return false; } return true; } };

LeetCode | Daily challenge :

class Solution { public: vector repeatedRows(vector> &matrix, int M, int N) { // Your code here vector res; unordered_set set; int r=M; int c=N; for(int i=0;i

GFG | Problem of the day :

class Solution { public: int minSteps(string s, string t) { int count =0; int num1=0; int num2=0; sort(s.begin(),s.end()); sort(t.begin(),t.end()); while(num1t[num2]) num2++; } return s.size()-count ; } };

LeetCode | Daily challenge :

class Solution { public: Node* insertionSort(struct Node* head) { if(!head || !head->next) return head; Node* dummy=new Node(-1); dummy->next=head; Node* temp=head; Node* it=head->next; head->next=NULL; while(it){ Node* curr=it; Node* next=curr->next; curr->next=NULL; Node* prev=dummy; while(temp){ if(temp->data >= curr->data) break; temp=temp->next; prev=prev->next; } prev->next=curr; curr->next=temp; temp=dummy->next; it=next; } return dummy->next; } };

GFG | Problem of the day :

class Solution { public: bool vowelCheck(char ch){ if(ch=='a' or ch=='e' or ch=='i' or ch=='o' or ch=='u' or ch=='A' or ch=='E' or ch=='I' or ch=='O' or ch=='U'){ return true; } return false; } bool halvesAreAlike(string s) { int cnt=0; int n=s.size(); for(int i=0;i

LeetCode | Daily challenge :

class Solution { public: // Function to reverse first k elements of a queue. queue modifyQueue(queue q, int k) { int n=q.size(); vector arr(n, 0); int j=k-1; for(int i=0;i=0){ arr[j]=q.front(); j--; } else{ arr[i] = q.front(); } q.pop(); } for(int i=0;i

GFG | Problem of the day :

class Solution { public: int diff = INT_MIN; // we want max difference void getMax(TreeNode *root, int mx, int mi){ if(!root) return; // track minimum and maximum while going through a sequence or path mx = max(mx, root->val); mi = min(mi, root->val); diff = max(diff, mx - mi); // store maximum difference getMax(root->left,mx,mi); getMax(root->right,mx,mi); } int maxAncestorDiff(TreeNode* root) { if(!root) return 0; int mx = INT_MIN, mi = INT_MAX; getMax(root,mx,mi); return diff; } };

LeetCode | Daily challenge :

class Solution { public: string removeKdigits(string s, int k) { int n=s.size(); vector<int>v(10,0); stack<char>st; for(int i=0;i<n;i++) { while(!st.empty()&&s[i]<st.top()&&k>0) { st.pop(); k--; } if(st.empty()&&s[i]=='0') continue; st.push(s[i]); } while(!st.empty()&&k--) { st.pop(); } if(st.empty()) { return "0"; } string ans=""; while(!st.empty()) { ans+=st.top(); st.pop(); } reverse(ans.begin(),ans.end()); return ans; } };

GFG | Problem of the day :

class Solution { public: void adjListCreating(unordered_map> &adj, TreeNode *root){ queue que; que.push(root); while(!que.empty()){ TreeNode *temp = que.front(); que.pop(); if(temp->left){ adj[temp->val].push_back(temp->left->val); adj[temp->left->val].push_back(temp->val); que.push(temp->left); } if(temp->right){ adj[temp->val].push_back(temp->right->val); adj[temp->right->val].push_back(temp->val); que.push(temp->right); } } } int amountOfTime(TreeNode* root, int start) { unordered_map> adj; adjListCreating(adj, root); unordered_map visited; for(auto i : adj){ visited[i.first] = false; } int maxVal = 0; queue> que; que.push({start, 0}); visited[start] = true; while(!que.empty()){ pair temp = que.front(); que.pop(); for(auto i : adj[temp.first]){ if(!visited[i]){ visited[i] = true; que.push({i, temp.second+1}); maxVal = max(maxVal, temp.second + 1); } } } return maxVal; } };

LeetCode | Daily challenge :

class Solution{ public: int longSubarrWthSumDivByK(int arr[], int n, int k) { map m; m[0]=-1; int sum=0; int rem; int largest=0; for(int i=0;isecond)>largest) largest=i-itr->second; } else m[rem]=i; } return largest; } };