GeeksForGeeks - POTD | GFG POTD Answer
Canal cerrado
1 218
Suscriptores
Sin datos24 horas
-97 días
-5730 días
Archivo de publicaciones
class Solution {
public:
int minimumSum(string s) {
int n=s.size();
for(int i=0; i=0; i--){
if (s[i]!='?'){
if (ind>n-1-i){
ind = min(ind, n-1-i);
foundatlast = true;
}
break;
}
}
if (foundatlast) ch = s[n-1-ind];
else ch = s[ind];
if (ind==n) ch='a';
for(int i=0; i
class Solution{
public:
#define insert(n) push_back(n)
int totalCuts(int n,int k,vector<int> &v){
vector<int> s1;
multiset<int> s2(v.begin(), v.end());
int sum=0;
int mn, mx=INT_MIN;
for(int i=0; i<n-1; i++){
s1.insert(v[i]);
s2.erase(s2.find(v[i]));
mx=max(mx, v[i]);
mn=*s2.begin();
if (mn + mx >= k) sum++;
}
return sum;
}
};
Join Groww And Earn ₹100 Per Refer Upto ₹3,00,000
Activate your account using this link:
https://app.groww.in/v3cO/2hb2fvn4
class Solution {
public:
const long long M = 1000000007; // modulo
map F;
long long f(long long n) {
if(F.count(n))
return F[n];
long long k=n/2;
if (n%2==0)
{ // n=2*k
return F[n] = (f(k)*f(k) + f(k-1)*f(k-1)) % M;
}
else
{ // n=2*k+1
return F[n] = (f(k)*f(k+1) + f(k-1)*f(k)) % M;
}
}
int countStrings(long long int N) {
if(N==0)
return 0;
F[0]=F[1]=1;
return f(N+1);
}
};
class Solution{
public:
int modulo(string s,int m)
{
int ans=0;
int t=1;
for(int i=s.size()-1;i>=0;i--)
{
if(s[i]=='1')
{
ans=(ans+t)%m;
}
t*=2;
t=t%m;
}
ans=ans%m;
return ans;
}
};
class Solution{
public:
string stringMirror(string str){
int n=str.size();
if(n==1) return str+str;
string pre="";
pre+=str[0];
for(int i=1;istr[i]){
pre+=str[i];
}
else if(pre.length()>1 && str[i-1]==str[i]){
pre+=str[i];
}
else break;
}
string rev=pre;
reverse(rev.begin(),rev.end());
return pre+rev;
}
};
class Solution {
public:
bool makeChanges(int N, int K, int target, vector &coins) {
int is_p[1010][110]={};
function can = [&](int t,int k)->int {
if (is_p[t][k]!=0) return is_p[t][k];
if (k==0) return t?-1:1;
for (int i=0;i=coins[i]&&can(t-coins[i],k-1)==1)
return is_p[t][k]=1;
return is_p[t][k]=-1;
};
return can(target,K)==1?true:false;
}
};
class Solution{
public:
int ans=0;
int dfs(Node* node, int &k){
if(node==nullptr) return 0;
int leftSet=dfs(node->left,k);
int rightSet=dfs(node->right,k);
int set=(leftSet|rightSet);
set |= (1<data);
int copy=set;
int mems=0;
while(copy){
copy=(copy&(copy-1));
mems++;
}
if(mems<=k) ans++;
return set;
}
int goodSubtrees(Node *root,int k){
dfs(root, k);
return ans;
}
};
class Solution{
public:
int maxCoins(int n,vector> &ranges){
sort(ranges.begin(), ranges.end(), [&](vector &a, vector &b){
if(a[0] == b[0])
return a[1] < b[1];
return a[0] < b[0];
});
vector post(n);
post[n - 1] = ranges[n - 1][2];
for(int i = n - 2; i > -1; i--)
post[i] = max(post[i + 1], ranges[i][2]);
int answer = 0;
for(int i = 0; i < n; i++){
int low= i;
int high = n;
// Returns the maximum coins
while(low < high - 1){
int mid = low + (high - low) / 2;
if(ranges[mid][0] >= ranges[i][1])
high = mid;
else
low = mid;
}
int cur = 0;
if(high < n)
cur = post[high];
answer = max(answer, ranges[i][2] + cur);
}
return answer;
}
};
class Solution{
public:
bool makePalindrome(int n,vector &arr){
unordered_set st(arr.begin(), arr.end());
int pairs = 0;
for(string tmp : st) {
reverse(begin(tmp), end(tmp));
if(st.find(tmp) != st.end())
++pairs;
}
return pairs == n;
}
};
You Can Earn ₹500 Per Referral On Upstox !!😍
> For Sign Up - ₹300 🤩
> For First Trade - ₹200 🤩
Refer Now - https://link.upstox.com/91QM
You Can Refer Up To 10 Person And
You Can Earn Upto ₹5000 !!🎉
