পৃষ্ঠাসমূহ

শনিবার, ১ ফেব্রুয়ারি, ২০১৪

topological sort(code)...........

#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#define Max 1000
#define pb push_back
#define ll long long
using namespace std;
ll indegree[Max];
vector<ll>v[Max];
vector<ll>ans;
ll topsort(ll m)
{
    ll i,j,l,k,taken[Max]={0};
    for(i=1;i<=m;i++)
    {
        for(j=1;j<=m;j++){
        if(indegree[j]==0&&!taken[j]){
        ans.pb(j);
        taken[j]=1;
        l=v[j].size();
        for(k=0;k<l;k++)
        indegree[v[j][k]]--;
        }
        }
    }
}
int main()
{
    ll m,n,i,x,y;
    while(cin>>m>>n)
    {
        if(m==0&&n==0)
        break;
        for(i=1;i<=m;i++)
        indegree[i]=0;
        while(n--)
        {
            cin>>x>>y;
            indegree[y]++;
            v[x].pb(y);
        }
        topsort(m);
        cout<<ans[0];
        for(i=1;i<ans.size();i++)
        cout<<" "<<ans[i];
        cout<<endl;
        for(i=1;i<110;i++)
        v[i].clear();
        ans.clear();

    }

}

struct sort(code)..........

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
struct node
{
    int a;
    int b;
};
bool cmp(const node c1, const node c2) {
return (c1.a < c2.a);
}
int main()
{
    int x;
    node v[5];
    for(int i=0;i<5;i++)
    {
        cin>>x;
        v[i].a=x;
        v[i].b=i;
    }
    sort(v,v+5,cmp);
    for(int i=0;i<5;i++)
    cout<<v[i].b<<" ";
}

prime_sieve(code)............

#include<iostream>
#include<cmath>
#include<cstdlib>
using namespace std;
bool a[1000001];
void sieve()
{
    long long i,j,m;
    m=sqrt(1000000);
    a[1]=1;
    a[0]=1;
    for(i=3;i<=m;i+=2)
    {
        if(a[i]==0)
        for(j=i*i;j<=1000000;j+=i+i)
        a[j]=1;
    }
}
int main()
{
    sieve();
    long long m;
    while(cin>>m)
    {
        if(m!=2&&m%2==0)
        cout<<"not prime"<<endl;
        else if(a[m]==0)
        cout<<"prime"<<endl;
        else
        cout<<"not prime"<<endl;
    }
}

prime factor(code)...........

#include<iostream>
#include<vector>
#include<cmath>
#define pb(a) push_back(a)
using namespace std;
int main()
{
    long n,i,m;
    vector<long>pfactor;
    cin>>n;
    m=sqrt(n);
    for(i=2;i<=m;i++)
    {
        if(n%i==0)
        while(n%i==0)
        {
            pfactor.pb(i);
            n/=i;
        }
    }
    if(n!=1)
    pfactor.pb(n);
    cout<<"number of factor :"<<pfactor.size()<<endl;
    for(i=0;i<pfactor.size();i++)
    cout<<pfactor[i]<<" ";
}

pair_kahini(code)........

#include<iostream>
#include<algorithm>
#include<vector>v;
#define ll long long
#define pb push_back
using namespace std;
pair<ll,ll>a[1000000];
ll m,i,ans[400000],x;
int main()
{
    cin>>m;
    for(i=0;i<m;i++)
    {
        cin>>a[i].first;
        a[i].second=i;
    }
    sort(a,a+m);
    ans[a[0].second]=a[0].first;
    for(i=1;i<m;i++)
    {
        if(a[i].first<a[i-1].first+1)
        a[i].first=a[i-1].first+1;
        ans[a[i].second]=a[i].first;
    }
    cout<<ans[0];
    for(i=1;i<m;i++)
    cout<<" "<<ans[i];
    cout<<endl;


}

number of co-prime factor of a number(code).....

#include<iostream>
#include<cmath>
#include<vector>
using namespace std;
#define pb push_back
long long m,n,k,i,j;
double ans;
vector<double>v;
int main()
{
cin>>m;
ans=double(m);
n=sqrt(m);
k=m;
for(i=2;i<=n;i++)
{
   if(m%i==0)
   {
       v.pb(double(i));
       while(m%i==0)
       m/=i;
       n=sqrt(m);
   }
}
if(m!=1)
v.pb(double(m));
for(i=0;i<v.size();i++)
ans*=double(1-1/v[i]);
cout<<ans<<endl;
}

ncr with table(code)...........

#include<iostream>
using namespace std;
int main()
{
    long long n,r,ncr[31][31];
    for(n=0;n<=30;n++)
    {
        for(r=0;r<=n;r++)
        {
            if(r==0||r==n)
            ncr[n][r]=1;
            else
            ncr[n][r]=(ncr[n-1][r]+ncr[n-1][r-1]);
        }
    }
    while(cin>>n>>r)
    cout<<ncr[n][r]<<endl;
}