Diferente pentru utilizator/apocalypto intre reviziile #170 si #171

Nu exista diferente intre titluri.

Diferente intre continut:

* ==user(user="bogdan_tmm" type="normal")==
* ==user(user="f.v.anton" type="normal")==
* ==user(user="blasterz" type="normal")==
 
 
using namespace std;
#include<iostream>
#include<fstream>
#include<vector>
#define pb push_back
 
int N,M,A,B,T;
struct rec{
int lg,d;
int c[105];
 
};
#define oo 0x3f3f3f3f
#define nmax 105
int p[105];
vector<rec> G[105];
int dp[nmax][nmax];
ofstream fout("auto2.out");
int memo(int nod,int timp)
{
    if(timp<0) return oo;
    if(dp[nod][timp]!=oo) return dp[nod][timp];  //este calculat
    if(nod==A && timp!=0) return 10000;
    if(nod==A && timp==0)                        //stare initiala
    {
        dp[nod][timp]=0;
        return dp[nod][timp];
    }
 
    if(dp[nod][timp]==oo)                        // nu este calculat
    {
        vector<rec>::iterator it;
        int i;
        for(it=G[nod].begin();it<G[nod].end();it++)
        {
            for(i=timp-it->d;i<=timp-it->d;i++)
            {
                dp[nod][timp]=min(dp[nod][timp],  memo(it->lg,i)+it->c[i]*it->d);
              //  if(nod==2 && timp==3)
               //    cout<<dp[nod][timp]<<" "<<it->lg<<" "<<i<<" "<<it->d<<"\n";
            }
 
        }
 
        for(i=0;i<timp;i++)
        {
            dp[nod][timp]=min(dp[nod][timp], memo(nod,i)+p[nod]*(timp-i));
            //if(nod==2)
           // cout<<nod<<" "<<timp<<" "<<p[nod]<<" "<<dp[nod][timp]<<" "<<dp[nod][i]<<"\n";
        }
        return dp[nod][timp];
    }
}
 
void cit()
{
    ifstream fin("auto2.in");
    int i;
    fin>>N>>M;
    fin>>A>>B>>T;
    for(i=1;i<=N;i++)
    {
      fin>>p[i];
    }
    int j;
    int a[105];
    int x1,x2,d;
    for(i=1;i<=M;i++)
    {
        fin>>x1>>x2>>d;
 
 
 
        G[x1].pb((rec){x2,d,*a});
        G[x2].pb((rec){x1,d,*a});
        for(j=0;j<T;j++)
        {
            fin>>G[x1].back().c[j];
            G[x2].back().c[j]=G[x1].back().c[j];
        }
    }
    fin.close();
    vector<rec>::iterator it;
    /*for(it=G[3].begin();it<G[3].end();it++)
    {
        cout<<it->lg<<" "<<it->d<<"\n";
        for(i=0;i<=T-1;i++)
        {
            cout<<it->c[i]<<" ";
        }
 
    }*/
}
 
int main()
{
    cit();
    int i,j,ans=oo;
    for(i=0;i<=100;i++)
      for(j=0;j<=100;j++)
        dp[i][j]=oo;
    for(i=0;i<=T;i++)
    {
      dp[B][i]=memo(B,i);
      ans=min(ans,dp[B][i]);
      //cout<<dp[B][i]<<"\n";
    }
   /* for(i=1;i<=N;i++)
    {
        for(j=0;j<=T;j++)
        {
            cout<<dp[i][j]<<" ";
        }
        cout<<"\n";
    }*/
    fout<<ans<<"\n";
    fout.close();
    return 0;
}
 
Prin 1969, eram elev la fostul Liceu 4 din Constanta. LIceul se afla in Piata Chiliei, o zona populata de o combinatie de tzigani si tatari.
Odata in timpul unei ore de istorie, venerabilul profesor Olteanu (un profesor iubit si respectat pentru ca refuza sa prezinte partea asa zis corecta a istoriei si prefera sa ne redea evenimentele adevarate), se opreste din prezentare, se uita pe geam si apoi zice clasei:
"Din pacate acestia vor fi viitorul Romaniei"

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.