๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
9.52K subscribers
5.56K photos
3 videos
95 files
9.65K 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
public static long[] countSentences(String[] wordSet, String[] sentences) {
        long[] counts = new long[sentences.length];
        Map<String, Long> wordCountMap = new HashMap<>();

        for (String word : wordSet) {
            String sortedWord = sortString(word);
            wordCountMap.put(sortedWord, wordCountMap.getOrDefault(sortedWord, 0L) + 1);
        }

        for (int i = 0; i < sentences.length; i++) {
            String[] words = sentences[i].split(" ");
            long sentenceCount = 1;
            for (String word : words) {
                String sortedWord = sortString(word);
                sentenceCount *= wordCountMap.getOrDefault(sortedWord, 1L);
            }
            counts[i] = sentenceCount;
        }

        return counts;
    }

    private static String sortString(String s) {
        char[] charArray = s.toCharArray();
        Arrays.sort(charArray);
        return new String(charArray);
    }
}

How many Sentences โœ…
BlackRock
๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
Photo
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n, m, k;
    cin >> n >> m >> k;
   
    vector<vector<int>> arr(n, vector<int>(m));
    vector<vector<int>> dist(n, vector<int>(m, INT_MAX));
   
    for (auto &e : arr)
        for (auto &ee : e)
            cin >> ee;
   
    queue<pair<pair<int, int>, int>> q;
    vector<vector<bool>> vis(n, vector<bool>(m, false));
   
    vis[0][0] = true;
    dist[0][0] = 0;
    q.push({{0, 0}, 0});
   
    while (!q.empty()) {
        auto p = q.front();
        q.pop();
       
        int x = p.first.first;
        int y = p.first.second;
        int steps = p.second;
       
        // Right movement
        for (int i = 1; i <= k; i++) {
            int newY = y + i;
            if (newY >= m || arr[x][newY] == 1) break;
            if (vis[x][newY]) continue;
            q.push({{x, newY}, steps + 1});
            vis[x][newY] = true;
            dist[x][newY] = steps + 1;
        }
       
        // Left movement
        for (int i = 1; i <= k; i++) {
            int newY = y - i;
            if (newY < 0 || arr[x][newY] == 1) break;
            if (vis[x][newY]) continue;
            q.push({{x, newY}, steps + 1});
            vis[x][newY] = true;
            dist[x][newY] = steps + 1;
        }
       
        // Downward movement
        for (int i = 1; i <= k; i++) {
            int newX = x + i;
            if (newX >= n || arr[newX][y] == 1) break;
            if (vis[newX][y]) continue;
            q.push({{newX, y}, steps + 1});
            vis[newX][y] = true;
            dist[newX][y] = steps + 1;
        }
       
        // Upward movement
        for (int i = 1; i <= k; i++) {
            int newX = x - i;
            if (newX < 0 || arr[newX][y] == 1) break;
            if (vis[newX][y]) continue;
            q.push({{newX, y}, steps + 1});
            vis[newX][y] = true;
            dist[newX][y] = steps + 1;
        }
    }
   
    cout << (dist[n - 1][m - 1] == INT_MAX ? -1 : dist[n - 1][m - 1]) << endl;
}

Minimum moves โœ…
Process Associates (P2P Process) at KGiS

Requirements:

Experience: Fresher
Position: Process Associates
Technical Skills: Core Accounting concepts, Bank and ledger reconciliation.
Shift: Rotational Shifts.
Location: Coimbatore
Notice period: Immediate


Interested candidates can come for a direct walk-in drive.

The Walk-in drive is scheduled as per the below details:
Date: (25-June and 27-June-2024)
Time: 10:00 AM to 01:00 PM

Address:
Opposite to holiday residency
KGISL campus
365, IT Tower 1, 
Thudiyalur Road, 
Saravanampatti, 
Coimbatore - 641035.


Kindly come directly to the office with documents and a resume.

Your point of contact:
Name: Priyanka S
Contact: +91 8754193339
#!/bin/python3

import math
import os
import random
import re
import sys



#
# Complete the 'findSubstring' function below.
#
# The function is expected to return a STRING.
# The function accepts following parameters:
#  1. STRING s
#  2. INTEGER k
#

def findSubstring(s, k):
    vowels = ["a", "e", "i", "o", "u"]
    cur = best = sum([c in vowels for c in s[:k]])
    ans = 0
    for i in range(k, len(s)):
        cur += s[i] in vowels
        cur -= s[i - k] in vowels
        if cur > best:
            best = cur
            ans = i - k + 1
    if best > 0:
        return s[ans:(ans+k)]
    else:
        return "Not found!"

if name == 'main':
    fptr = open(os.environ['OUTPUT_PATH'], 'w')

    s = input()

    k = int(input().strip())

    result = findSubstring(s, k)

    fptr.write(result + '\n')

    fptr.close()

Vowel substring โœ…
from collections import defaultdict

def f(k, costs, from_lst, to_lst):
  children = defaultdict(list)

  for i, u in enumerate(from_lst):
    children[u].append(to_lst[i])

  prefixes = defaultdict(int)
  prefixes[0] = 1

  def g(n, s):
    result = 0
    curr = (s + costs[n]) % k
    result += prefixes[curr]
    prefixes[curr] += 1
    for c in children[n]:
      result += g(c, curr)
    prefixes[curr] -= 1
    return result

  return g(0, 0)

Hack Tree โœ…
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll sum=0,cnt1=0;
ll dfs1(ll node,vector<ll>adj[],vector<ll>& vis) {
    vis[node]=1;
    for(auto &it:adj[node])
    {
        if(!vis[it])  dfs1(it, adj, vis);
    }
    sum+=node;
    cnt1++;
}
ll dfs(ll node,vector<ll>adj[],vector<ll>&vis,stack<ll>& st) {
    vis[node]=1;
    for(auto &it:adj[node])
    {
        if(!vis[it])  dfs(it, adj, vis, st);
    }
    st.push(node);
}
ll solve(ll N,vector<ll> Edge)
{
    vector<ll>adj[N];
    for(ll i=0;i<N;i++)
    {
        ll u=i;
        ll v=Edge[i];
        if(v!=-1) adj[u].push_back(v);
    }
    vector<ll>vis(N+1);
    stack<ll>st;
    for(ll i=0;i<N;i++)
    {
        if(!vis[i])  dfs(i,adj,vis,st);
    }
    vector<ll>adj1[N];
    for(ll i=0;i<N;i++)
    {
        vis[i]=0;
        for(auto &it:adj[i]) {
            adj1[it].push_back(i);
        }
    }
    ll ans=0,cnt=0;
    while(st.size())
    {
        ll node=st.top();
        st.pop();
        if(!vis[node])
        {
            sum=0;
            cnt++;
            cnt1=0;
            dfs1(node, adj1, vis);
        }
        if(cnt1>1)  ans=max(ans, sum);
    }
    if(cnt==N) return -1;
    return ans;
}

signed main() {
    ll t; cin >> t;
    while(t--)
    {
        ll n; cin>>n;
        vector<ll>a(n);
        for(ll i=0;i<n;i++) cin>>a[i];
        cout<<solve(n,a)<<endl;
    }
    return 0;
}


Largest sum Cycle
Juspay โœ…
๐—–๐—ฆ ๐—”๐—น๐—ด๐—ผ ๐Ÿ’ป ๐ŸŒ ใ€Ž๐—–๐—ผ๐—บ๐—ฝ๐—ฒ๐˜๐—ถ๐˜๐—ถ๐˜ƒ๐—ฒ ๐—ฃ๐—ฟ๐—ผ๐—ด๐—ฟ๐—ฎ๐—บ๐—บ๐—ถ๐—ป๐—ดใ€
Photo
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int t = scanner.nextInt();
        for (int i = 0; i < t; i++) {
            int n = scanner.nextInt();
            int[][] matrix = new int[n][n];
            for (int j = 0; j < n; j++) {
                for (int k = 0; k < n; k++) {
                    matrix[j][k] = scanner.nextInt();
                }
            }
            System.out.println(maxTrace(matrix));
        }
    }

    public static int maxTrace(int[][] matrix) {
        int n = matrix.length;
        int maxTrace = Integer.MIN_VALUE;
        for (int l = 1; l <= n; l++) {
            for (int r = 0; r <= n - l; r++) {
                for (int c = 0; c <= n - l; c++) {
                    int trace = 0;
                    for (int i = 0; i < l; i++) {
                        trace += matrix[r + i][c + i];
                    }
                    maxTrace = Math.max(maxTrace, trace);
                }
            }
        }
        return maxTrace;
    }
}

Matrix Trace Challenge โœ…
Hiring for Management Trainees - MBA Passouts (2023-2024 batch)
Location  -Central Park Gurgaon Sector 48
Share your CV with me - talent@centralpark.in
Gurgaon candidates will be preferred.
Sound technical knowledge, sincere, hardworking and analytical.
Should be proficient in use of Microsoft Office - Word, Excel and PowerPoint.
Must be good in written and spoken English.