Hackerearth The First Meeting solution

Solve in C++:

#include<bits/stdc++.h>
using namespace std;
#define M 1000010
int ar[M];
int  marked[M];
void sieve()
{

    for(int i=3; i*i<=M; i+=2)
    {
        if(marked[i]==0)
        {
            for(int j=2*i; j<=M; j+=i)
            {
                marked[j]=1;
            }
        }
    }
    for(int i=4; i<=M; i=i+2)
    {
        marked[i]=-1;
    }
    marked[1]=-1;
    marked[2]=0;

}
main()
{
    sieve();
    int m;
    int s,c,mx,mn;
    scanf("%d",&s);
    for(int i=0; i<s; i++)
    {
        cin>>ar[i];

    }
    mx=0;
    int t1=mx;
    mn=99999999;
    int t2=mn;
    for(int i=0; i<s; i++)
    {
        if(marked[ar[i]]==0)
        {
            if(ar[i]>mx)
                mx=ar[i];
        }
    }
    for(int i=0; i<s; i++)
    {
        if(marked[ar[i]]==0)
        {
            if(ar[i]<mn)
                mn=ar[i];
        }
    }
    if(mx==t1 || mn==t2)
      cout<<"-1"<<endl;
    else
     cout<<mx-mn<<endl;

}


No comments

Most View Post

Recent post

Codeforces Round 925 (Div. 3) 1931D. Divisible Pairs Solution

    Problem Link  :   https://codeforces.com/contest/1931/problem/D S olution in C++: /// Author : AH_Tonmoy #include < bits / stdc ++. ...

Powered by Blogger.