๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
9.52K subscribers
5.56K photos
3 videos
95 files
9.7K 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
public static String solution(String[] paths) {
        String[] simplified = new String[paths.length];
        for (int i = 0; i < paths.length; i++) {
            simplified[i] = simplify(paths[i]);
        }
        String result = "";
        for (int i = 0; i < simplified.length; i++) {
            if (i == 0) {
                result = simplified[i];
            } else {
                result = commonSuffix(result, simplified[i]);
            }
        }
        return result;
    }

    public static String simplify(String path) {
        String[] parts = path.split("/");
        Stack<String> stack = new Stack<>();
        for (String part : parts) {
            if (part.equals("..")) {
                if (!stack.isEmpty()) {
                    stack.pop();
                }
            } else if (!part.equals(".")) {
                stack.push(part);
            }
        }
        StringBuilder sb = new StringBuilder();
        for (String part : stack) {
            sb.append("/");
            sb.append(part);
        }
        return sb.toString();
    }

    public static String commonSuffix(String path1, String path2) {
        String[] parts1 = path1.split("/");
        String[] parts2 = path2.split("/");
        int i = parts1.length - 1;
        int j = parts2.length - 1;
        while (i >= 0 && j >= 0 && parts1[i].equals(parts2[j])) {
            i--;
            j--;
        }
        StringBuilder sb = new StringBuilder();
        for (int k = i + 1; k < parts1.length; k++) {
            sb.append("/");
            sb.append(parts1[k]);
        }
        return sb.toString();
Forwarded from Amazon Exam Placement Group (Dushyant)
int solve(vector<int>& points) {
    sort(points.begin(), points.end(), greater<int>());
    int p1 = 0, p2 = 0;
    for(int i = 0; i < points.size(); i++) {
        if(i % 2 == 0) {
            p1 += points[i];
        } else {
            p2 += points[i];
        }
    }
    return p1 - p2;
}

Amazon โœ…
sort(A.begin(), A.end());
    sort(B.begin(), B.end());

    int cool = 0, j = 0;
    for(int i=0; i<N; i++) {
        while(j < M && B[j] < A[i] - d) j++;
        if(j == M || B[j] > A[i] + d) cool++;
        else j++;
    }

    return cool;

Coolness Factor โœ…
โ—๏ธECI Off Campus Freshers Hiring As Associate Software Engineer For All Graduates | 4 LPA*โ—๏ธ

๐Ÿ‘จโ€๐Ÿ’ป Job Role : Associate Software Engineer
๐ŸŽ“Qualification : Bachelorโ€™s/Masterโ€™s Degree
๐ŸŽ–Batch : 2020/ 2021/ 2022/ 2023
๐Ÿ’ฐPackage : 4 LPA*

โญ•๏ธ Apply Fast :


https://recruiting.ultipro.com/EZE1000EZECI/JobBoard/97cf9268-5a5a-480b-b7b6-5ed694da88c5/OpportunityDetail?opportunityId=3037d21b-e538-4246-a7d8-7dcbc8a5c4a3
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define ll long long
#define endl "\n"
#define MOD 1000000007
#define MOD2 998244353
#define vll vector<ll>

struct SegmentTree {
    ll N;
    vll tree;
    ll neutral = 0;

    ll combine(ll a, ll b) {
        return a + b;
    }

    void build(ll u, ll L, ll R, vll &v) {
        if(L == R) {
            tree[u] = v[L];
        } else {
            ll M = (L + R) / 2;
            build(u * 2, L, M, v);
            build(u * 2 + 1, M + 1, R, v);
            tree[u] = combine(tree[u * 2], tree[u * 2 + 1]);
        }
    }

    SegmentTree(vll v) {
        N = v.size() - 1;
        tree.assign(4 * N + 1, 0);
        build(1, 1, N, v);
    }

    ll query(ll lq, ll rq, ll u, ll L, ll R) {
        if(L > rq || R < lq) {
            return neutral;
        } else if(L >= lq && R <= rq) {
            return tree[u];
        } else {
            ll M = (L + R) / 2;
            return combine(query(lq, rq, u * 2, L, M), query(lq, rq, u * 2 + 1, M + 1, R));
        }
    }

    void update(ll idx, ll val, ll u, ll L, ll R) {
        if(L > idx || R < idx) {
            return;
        } else if(L == R) {
            tree[u] = val;
            return;
        } else {
            ll M = (L + R) / 2;
            update(idx, val, u * 2, L, M);
            update(idx, val, u * 2 + 1, M + 1, R);
            tree[u] = combine(tree[u * 2], tree[u * 2 + 1]);
        }
    }
};

const int MAXN = 1e6 + 1;
vector<int> spf(MAXN);

void sieve() {
    spf[1] = 1;
    for (int i = 2; i < MAXN; i++)
        spf[i] = i;
    for (int i = 4; i < MAXN; i += 2)
        spf[i] = 2;
    for (int i = 3; i * i < MAXN; i++) {
        if (spf[i] == i) {
            for (int j = i * i; j < MAXN; j += i)
                if (spf[j] == j)
                    spf[j] = i;
        }
    }
}

int32_t main(){
    ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
    sieve();
    int n, q; cin >> n >> q;
    vll arr(n + 1);
    for(int i = 1; i <= n; i++) cin >> arr[i];
    SegmentTree sgt(arr);
    set<int> s;
    for(int i = 1; i <= n; i++)
        s.insert(i);

    while(q--) {
        int type; cin >> type;
        int a, b; cin >> a >> b;
        if(type == 3) {
            sgt.update(a, b, 1, 1, n);
            int temp = a;
            auto it = s.lower_bound(temp);
            if(it != s.end() and s.size() != 0 and *it == a) {
                s.erase(temp);
                s.insert(a);
            } else {
                s.insert(a);
            }
            arr[a] = b;
        } else if (type == 2) {
            cout << sgt.query(a, b, 1, 1, n) << endl;
        } else {
            while(a <= b) {
                int temp = a;
                auto it = s.lower_bound(temp);
                if(it == s.end()) break;
                if(*it > b) break;
                int c = *it + 1;
                sgt.update(a, arr[a] / spf[arr[a]], 1, 1, n);
                if(spf[a] == 1) {
                    s.erase(temp);
                }
                arr[a] = spf[a];
                a = c;
            }
        }
    }
    return 0;
}

Divisior queries โœ…
BNY Mellon
Source : Hola