Cod sursa(job #1901628)

Utilizator StepHoria Stefan Step Data 4 martie 2017 10:02:20
Problema Lista lui Andrei Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nrcuv.in");
ofstream g("nrcuv.out");
int n,m,nr[26][26];
bool comp[1000][26];
int main ()
{
    int i,j,s=0;
    char a,b;
    f>>n>>m;
    if (n==1)
    {
        g<<26;
        return 0;
    }
    for (i=1; i<=m; i++)
    {
        f>>(a);
        f>>(b);
        comp[a-97][b-97]=comp[b-97][a-97]=true;
    }
    for (i=0; i<26; i++)
    {
        for (j=0; j<26; j++)
            cout<<comp[i][j]<<" ";
        cout<<endl;
    }
    cout<<endl<<endl;
    for (i=0; i<26; i++)
    {
        nr[1][i]=1;
    }
    for (i=2; i<=n; i++)
        for (j=0; j<26; j++)
            for (int k=0; k<26; k++)
                if (comp[k][j]==false)
                {
                    nr[i][j]+=nr[i-1][k];
                }
    for (i=1; i<=n; i++)
    {
        for (j=0; j<26; j++)
            cout<<nr[i][j]<<" ";
        cout<<endl;
    }
    for (j=0; j<26; j++)
        s=s+nr[n][j];
    g<<s;
    return 0;
}