hackersarkar12's blog

By hackersarkar12, history, 4 years ago, In English

Im unable to understand the solution logic of codeforces div2 664 problem c. http://codeforces.com/contest/1395/problem/C

Full text and comments »

  • Vote: I like it
  • +13
  • Vote: I do not like it

By hackersarkar12, history, 4 years ago, In English

I tried to solve longest increasing subsequence in top down but only pass few cases i don't know whether it is full right or wrong here is the code which i tried

this question is from leetcode

int lis(vector<int>&nums,int i,int n,int prev,vector<int>& ls){
if(i==n||n==0){
    return 0;
}
if(ls[i]!=-1){
    return 1 ;
 }


   lis(nums,i+1,n,prev,ls);
   if(nums[i]>prev){
     int  num=1+lis(nums,i+1,n,nums[i],ls);

       ls[num]=1;
      return num;
     }
    return 0;
      }





      class Solution {
    public:
      int lengthOfLIS(vector<int>& nums) {
         int  n=nums.size();
          int c;
         vector<int> ls(n+1,-1);

       lis(nums,0,n,INT_MIN,ls);
      for(int i=n;i>=0;i--){
         if(ls[i]!=-1){
           c=i;
             break;
         }
         else{
           c=0;
         }
       }
        if(nums.size()==0){
        return 0;
          }
         else{

       if(c==0){
     return 0;

     }
   else{
   return c;
    } 

     }



         }



       };

I wants to how to write top-down approach of this question and wants to know the solution of this question in c++ can anyone explain me ?

Full text and comments »

  • Vote: I like it
  • -1
  • Vote: I do not like it

By hackersarkar12, history, 4 years ago, In English

Here is the link https://codeforces.com/contest/1000/problem/C I saw the editorial but cannot understand please explain the solution of this question.

Full text and comments »

  • Vote: I like it
  • 0
  • Vote: I do not like it

By hackersarkar12, history, 5 years ago, In English

The question is

https://codeforces.com/contest/489/problem/C

include

#include<bits/stdc++.h>
#include<math.h>

using namespace std;
int main(){long long int j,no,i,sum1,sum,d=0,d2=0,rem=0,i1,large,large1=0;
    cin>>j>>no;
    if(j>6){
        cout<<0<<" "<<0;
    }

    if(j<6){ 


    if(no==0){
        cout<<-1<<" "<<-1;
    }


    else{
    for(i=(pow(10,j)-1);i>=pow(10,(j-1));i--){

        sum1=0;
        sum=0;
        i1=i;
        while(i1!=0){
            rem=i1%10;
            sum1=sum1+rem;
            sum=(sum*10)+rem;    
            i1=i1/10;    
        }

        if(sum1==no){

            d2=i;
            large=i;
            if(large1<=large){
            large1=large;
        }


        }
    }
    if(no>1){
    cout<<d2<<" "<<large1;
    }
    if(no==1){
        cout<<i+1<<" "<<i+1;
    }
}
}
  return 0;  
}

Full text and comments »

  • Vote: I like it
  • -13
  • Vote: I do not like it