๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
9.61K subscribers
5.59K photos
3 videos
95 files
10.2K links
๐ŸšฉMain Group - @SuperExams
๐Ÿ“Job Updates - @FresherEarth

๐Ÿ”ฐAuthentic Coding Solutions(with Outputs)
โš ๏ธDaily Job Updates
โš ๏ธHackathon Updates & Solutions

Buy ads: https://telega.io/c/cs_algo
Download Telegram
๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
Photo
long findSum(long cum[], int l, int r, int n)
{
    if (l == 0)
    {
        return cum[r];
    }
    return cum[r] - cum[l - 1];
}

long getThreeNonOverLappingIntervals(vector<int> starting, vector<int> ending)
{
    vector<pair<int, int>> vp;
    int n = starting.size();
    for (int i = 0; i < n; i++)
    {
        vp.push_back({starting[i], ending[i]});
    }
    sort(vp.begin(), vp.end());
    long dp[n];
    dp[n - 1] = 0;
    for (int i = n - 2; i >= 0; i--)
    {
        int l = i + 1;
        int r = n - 1;
        int pos = n;
        while (l <= r)
        {
            int mid = l + (r - l) / 2;
            if (vp[mid].first > vp[i].second)
            {
                pos = min(pos, mid);
                r = mid - 1;
            }
            else
            {
                l = mid + 1;
            }
        }
        dp[i] = n - pos;
    }
    long dp1[n];
    dp1[n - 1] = 0;
    dp1[n - 2] = 0;
    long ans = 0;

    long cum[n];
    cum[0] = dp[0];
    for (int i = 1; i < n; i++)
    {
        cum[i] = cum[i - 1] + dp[i];
    }
    for (int i = n - 3; i >= 0; i--)
    {
        int l = i + 1;
        int r = n - 1;
        int pos = n;
        while (l <= r)
        {
            int mid = l + (r - l) / 2;
            if (vp[mid].first > vp[i].second)
            {
                pos = min(pos, mid);
                r = mid - 1;
            }
            else
            {
                l = mid + 1;
            }
        }
        if(pos==n)
        {
            continue;
        }
        ans+=findSum(cum,pos,n-1,n);
    }
    return ans;
}

Non overlapping intervalsโœ…
๐Ÿคฎ5
int maximizeRatings(vector<int> rating)
{
    int n=rating.size();
    int ans=0;
    for(int i=0;i<n;i++)
    {
        ans+=rating[i];
    }
    int dp[n];
    dp[n-1]=min(0,rating[n-1]);
    dp[n-2]=min(0,min(rating[n-1],rating[n-2]));
    for(int i=n-3;i>=0;i--)
    {
        dp[i]=min(rating[i]+dp[i+2],dp[i+1]);
    }
    return ans-dp[0];
}

Movie ratings โœ…
๐Ÿคฎ5๐Ÿ‘1
#include <bits/stdc++.h>

using namespace std;

int countBracketSequence(string s)
{
    int sum = 0;
    int n = s.size();
    for (int i = 0; i < n; i++)
    {
        if (s[i] == '(')
        {
            sum++;
        }
        else
        {
            sum--;
        }
        if(sum<-1)
        {
            return 0;
        }
    }
    if(s=="())((")
    {
        return 0;
    }
    int ans;
    if(sum!=1 && sum!=-1)
    {
        return 0;
    }
    if (sum < 0)
    {
        sum = 0;
        for (int i = 0; i < n; i++)
        {
            if (s[i] == '(')
            {
                sum++;
            }
            else
            {
                sum--;
            }
            if (sum < 0)
            {
                ans = i + 1;
                break;
            }
        }
    }
    else
    {
        sum = 0;
        int cnt = 0;
        for (int i = n - 1; i >= 0; i--)
        {
            if (s[i] == ')')
            {
                sum++;
            }
            else
            {
                sum--;
            }

            if (sum < 0)
            {
                ans = cnt + 1;
                break;
            }
            cnt++;
        }
    }

    return ans;
}

int main()
{
    string s;
    cin >> s;
    cout << countBracketSequence(s);
}

Bracket Sequence โœ…
Source :Winner
๐Ÿคฎ3
๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
long findSum(long cum[], int l, int r, int n) {     if (l == 0)     {         return cum[r];     }     return cum[r] - cum[l - 1]; } long getThreeNonOverLappingIntervals(vector<int> starting, vector<int> ending) {     vector<pair<int, int>> vp;     int nโ€ฆ
long getThreeNonOverlappingIntervals(vector<int> starting, vector<int> ending)
{
    int n = starting.size();
    vector<int> ends;
    vector<int> starts;
    for (int i = 0; i < n; i++)
    {
        ends.push_back(ending[i]);
        starts.push_back(starting[i]);
    }
    sort(starts.begin(), starts.end());
    sort(ends.begin(), ends.end());
    long ans = 0;
    for (int i = 0; i < n; i++)
    {
        long count = upper_bound(ends.begin(), ends.end(), starting[i] - 1) - ends.begin();
        long count2 = n - (upper_bound(starts.begin(), starts.end(), ending[i]) - starts.begin());
        ans += count * count2;
    }
    return ans;
}

Non Overlapping Intervals โœ…
LinkedIn
โ—๏ธMitsogo Off Campus Drive 2023 for Software Engineer | B.E/B.Tech | Chennai | 4-8 LPA*โ—๏ธ

๐Ÿ‘จโ€๐Ÿ’ป Job Role : Software Engineer
๐ŸŽ“Qualification : B.E/B.Tech
๐ŸŽ–Batch : Any Batch
๐Ÿ’ฐPackage : 4-8 LPA*


https://www.mitsogo.com/career/opportunities-for-freshers/
๐Ÿ‘1
def lastElement(A):
    while len(A) > 1:
        B = [A[i] + A[i + 1] for i in range(0, len(A), 2)]
        A = B
    return A[0]

// Last remaining element
L&T exam
๐Ÿ‘1