en
Feedback
GeeksForGeeks - POTD | GFG POTD Answer

GeeksForGeeks - POTD | GFG POTD Answer

Closed channel

🚩 Channel was restricted by Telegram

Show more
1 218
Subscribers
No data24 hours
-97 days
-5730 days
Posts Archive
class Solution { public: string convertToString(Node* head) { string s = ""; bool l = 0; while(head) { if(head->data != 0) l = 1; if(l) s += ('0' + head->data); head = head->next; } return s; } Node* subLinkedList(Node* head1, Node* head2) { string s1 = convertToString(head1), s2 = convertToString(head2); if(s1.size() < s2.size()) swap(s1, s2); else if((s1.size() == s2.size()) && s1 <= s2) swap(s1, s2); int n = s1.size(), m = s2.size(); int carry = 0; int j = m - 1; for(int i = n - 1; i >= 0; i--) { int val = (s1[i] - '0') - carry - ((j >= 0) ? (s2[j] - '0') : 0); if(val < 0) { carry = 1; s1[i] = ('0' + 10 + val); } else { carry = 0; s1[i] = ('0' + val); } j--; } int i = 0; while(i < n && s1[i] == '0') i++; LinkedList* ans = new LinkedList(); while(i < n) ans->insert((s1[i++] - '0')); if(ans->head == nullptr) ans->insert(0); return ans->head; } };

Get πŸ’», Set πŸ‘¨πŸ»β€πŸ’», Go πŸš€ 🌱 Join @LeetCode_tg ✨ Get Daily Leetcode Solution. ⭐ @LeetCode_GD ⭐

Want LEETCODE Solution Daily⁉️
Anonymous voting

3rd February : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution { public: // Should return decimal equivalent modulo 1000000007 of binary linked list long long unsigned int decimalValue(Node *head) { long long unsigned int sum=0; while(head) { sum=(sum*2+head->data)%MOD; head=head->next; } return sum; } };

2nd February : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution{ public: int atoi(string s) { int ans = 0; int isNegative = (s[0]=='-'); for(int i=isNegative;i=0 and s[i]-'0'<=9){ ans = ans*10 + s[i]-'0'; } else{ return -1; } } return (isNegative)?-1*ans:ans; } };

1st February : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution { public: //Function to check if a string is Pangram or not. bool checkPangram (string s) { int n=s.length(); mapm; transform(s.begin(), s.end(), s.begin(), ::tolower); for(int i=0;i=0 && d<=26) m[s[i]]=1; } return m.size()==26; } };

31st January : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution { public: //Function to insert string into TRIE. void insert(struct TrieNode *root, string key) { for(auto i : key){ if(root -> children[i - 'a']){ root = root -> children[i - 'a']; } else{ TrieNode * new_node = getNode(); root -> children[i - 'a'] = new_node; root = new_node; } } root -> isLeaf = 1; } //Function to use TRIE data structure and search the given string. bool search(struct TrieNode *root, string key) { for(auto i : key){ if(root -> children[i - 'a']){ root = root -> children[i - 'a']; } else{ return 0; } } return root -> isLeaf; } };

30th January : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution { public: int LCSof3 (string A, string B, string C, int n1, int n2, int n3) { int dp[n1+1][n2+1][n3+1]; memset(dp,0,sizeof(dp)); int ans=0; for(int i=1;i<=n1;i++){ for(int j=1;j<=n2;j++){ for(int k=1;k<=n3;k++){ if(A[i-1]==B[j-1]&&B[j-1]==C[k-1]){ dp[i][j][k]=dp[i-1][j-1][k-1]+1; }else{ dp[i][j][k]=max(dp[i-1][j][k],max(dp[i][j-1][k],dp[i][j][k-1])); } } } } return dp[n1][n2][n3]; } };

29th January : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution{ public: int solve(int ind, int sum, int n, string str, vector> &dp) { if(ind >= n) return 1; if(dp[ind][sum] != -1) return dp[ind][sum]; int nsum = 0, ans = 0; for(int i = ind; i < n; i++) { nsum += (str[i]-'0'); if(nsum >= sum) { ans += solve(i+1, nsum, n, str, dp); } } return dp[ind][sum] = ans; } int TotalCount(string str){ int n = str.length(); vector> dp(n+1, vector (915, -1)); return solve(0, 0, n, str, dp); } };

28th January : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution { public: vector>> dp; long long findNthNumber(int n, int k) { long long low = 0, high = 1e18; dp = vector>>(2, vector>(65, vector(65, -1))); while(low <= high){ long long mid = low + (high - low) / 2; long long count = find(mid, k); if(count >= n) high = mid - 1; else low = mid + 1; } return low; } private: long long find(long long n, int k){ string s = bitset<64>(n).to_string(); reset(); return dpf(s, s.length(), 1, k); } long long dpf(string s, int n, int tight, int k){ if(k < 0) return 0; if(n == 0){ return 1; } if(dp[tight][k][n] != -1) return dp[tight][k][n]; int ub = (tight == 1 ? (int)(s[s.length() - n] - '0') : 1); long long ans = 0; for(int dig = 0; dig <= ub; dig++){ if(dig == ub) ans += dpf(s, n - 1, tight, k - dig); else ans += dpf(s, n - 1, 0, k - dig); } return dp[tight][k][n] = ans; } void reset(){ for(int i = 0; i < 65; i++){ for(int j = 0; j < 65; j++){ dp[0][i][j] = dp[1][i][j] = -1; } } } };

27th January : C++ Solution☝🏼 β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€”β€” πŸ™‹πŸ»β€β™‚οΈDiscussion ⁉️ Join βœ… @GFG_Answer

class Solution{ public: string matrixChainOrder(int p[], int n){ vector> dp(n, vector(n, 0)); vector> bracket(n, vector(n, 0)); for (int len = 2; len < n; len++) { for (int i = 1; i < n - len + 1; i++) { int j = i + len - 1; dp[i][j] = INT_MAX; for (int k = i; k <= j - 1; k++) { int cost = dp[i][k] + dp[k + 1][j] + p[i - 1] * p[k] * p[j]; if (cost < dp[i][j]) { dp[i][j] = cost; bracket[i][j] = k; } } } } return printParenthesis(bracket, 1, n - 1); } private: string printParenthesis(const vector>& bracket, int i, int j) { if (i == j) { return string(1, 'A' + i - 1); } return "(" + printParenthesis(bracket, i, bracket[i][j]) + printParenthesis(bracket, bracket[i][j] + 1, j) + ")"; } };