Coding | EXAMS | IBM ACCENTURE | VIRTUSA | IBM | AMAZON | TCS | EPAM | WILEY EDGE | TECH MAHINDRA | JPMORGAN | HCL | WIPRO
3.36K subscribers
1.13K photos
3 videos
17 files
373 links
Main channel https://t.me/Coding_000
Contact Admin 👉 @ILOVEU_143 for booking your exam slots
Web- https://coding000.github.io/Projects/
💯% clearance in any placement exams
OffCampus -https://t.me/Offcampus_000
Discussion- https://t.me/exams_discussion
Download Telegram
def shortest_subarray(colors, C):
    n = len(colors)
    color_count = [0] * (C+1)
    left, right = 0, 0
    min_length = float('inf')
    count = 0
    while right < n:
        color_count[colors[right]] += 1
        if color_count[colors[right]] == 1:
            count += 1
        while count == C:
            min_length = min(min_length, right - left + 1)
            color_count[colors[left]] -= 1
            if color_count[colors[left]] == 0:
                count -= 1
            left += 1
        right += 1
    if min_length == float('inf'):
        return -1
    else:
        return min_length



Python3 👆👆👆
👍1
Take screenshot of my channel and share to large groups if u need more answers❤️😍
👍2
Coding | EXAMS | IBM ACCENTURE | VIRTUSA | IBM | AMAZON | TCS | EPAM | WILEY EDGE | TECH MAHINDRA | JPMORGAN | HCL | WIPRO
Photo
#include<bits/stdc++.h>
using namespace std;

bool check(char c1, char c2){
    if(c1==c2){
        return true;
    }
    if(c1=='a' && c2=='o'){
        return true;
    }
    if(c1=='o' && c2=='a'){
        return true;
    }
    if(c1=='t' && c2=='l'){
        return true;
    }
    if(c1=='l' && c2=='t'){
        return true;
    }
    return false;
}

bool helper(string &str, string &test, int n, int m, int K, bool mark, bool deleteOnce){
    if(m==0){
        return true;
    }
    if(n==0){
        return false;
    }
    bool res=false;
    if(check(str[n-1],test[m-1])==true){ 
        res=res | helper(str,test,n-1,m-1,K,true,deleteOnce);
    }
    if(K>0 && mark==true){  // mark represents that substring has started now, and now we can use K to ignore elements in this running substring
        res=res | helper(str,test,n-1,m,K-1,true,deleteOnce);
    }
    if(deleteOnce==false){  // delete once says, we can delete any character in ticket atleast once
        res=res | helper(str,test,n,m-1,K,mark,true);
    }
    if(mark==false){  // if mark is false, this means substring has not started yet, just move ahead in baseString
        res=res | helper(str,test,n-1,m,K,false,deleteOnce);
    }
    return res;
}

int main() {
    string s="aabacd";
    vector<string> str={"abcde","aoc","aabade"};
    int res=0;
    int K=2;
    for(auto e: str){
        if(helper(s,e,s.size(),e.size(),K,false,false)==true){
            res++;
        }
    }
    cout<<res;
    return 0;
}
👍1
def next_stepping_number(N):
    N = str(N)
    for i in range(len(N) - 1):
        if abs(int(N[i]) - int(N[i+1])) != 1:
            return int(N[:i+1] + str(int(N[i]) + 1 if int(N[i]) < int(N[i+1]) else int(N[i]) - 1) + '9'*(len(N)-i-1))
    return int(N) + 1

print(next_stepping_number(4))

python3
👍1