Cod sursa(job #2089420)

Utilizator alex2209alexPavel Alexandru alex2209alex Data 16 decembrie 2017 14:57:37
Problema Padure2 Scor 0
Compilator cpp Status done
Runda Arhiva ICPC Marime 0.95 kb
#include <fstream>

using namespace std;
ifstream f("padure2.in");
ofstream g("padure2.out");
struct{
    int x,y;
}v[1001];
int v2[2][1000000];
int main()
{
    int n,m,c;
    f>>n>>m;
    f>>c;
    for(int i=1;i<=c;i++){
        f>>v[i].x>>v[i].y;
    }
    /*for(int i=1;i<=c;i++){
        for(int j=i+1;j<=c;j++){
            if(v[j].x<v[i].x or v[j].x==v[i].x && v[j].y<v[i].y){
                swap(v[i].x,v[j].x);
                swap(v[i].y,v[j].y);
            }
        }
    }*/
    int k=1;
    v2[0][1]=1;
    for(int i=1;i<=n;i++){
        while(v[k].x==i && k<=c)
        {
            v2[1][v[k].y]=-1;
            k++;
        }
        for(int j=1;j<=m;j++){
            if(v2[1][j]!=-1){
                v2[1][j]=(max(v2[0][j],0)+max(v2[1][j-1],0))%2000003;
            }
            v2[0][j]=v2[1][j];
            v2[1][j-1]=0;
        }
        v2[1][m]=0;
    }
    g<<v2[0][m]<<'\n';
    return 0;
}