Cod sursa(job #2149548)

Utilizator lonca.sorin01Lonca Sorin lonca.sorin01 Data 2 martie 2018 18:42:05
Problema Pascal Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.02 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("pascal.in");
ofstream g("pascal.out");

void afisareMatrice(int mat[100][100], int r)
{
    for (int i = 1; i <= r; i++)
    {
        for (int j = 1; j <= r + 1; j++)
            cout<<mat[i][j]<<" ";
        cout<<'\n';
    }
}

/*void generareTriunghi(int mat[100][100], int r, int d)
{
    mat[0][0] = 1;
    mat[1][1] = 1;
    mat[1][2] = 1;
    for (int i = 2; i <= r; i++)
    {
        mat[i][1] = 1;
        mat[i][i + 1] = 1;
        for (int j = 2; j <= r; j++)
            mat[i][j] = mat[i - 1][j - 1] + mat[i - 1][j];
    }
}*/

/*void generareTriunghi(int mat[3][100], int r, int d)
{
    int rActual = 2, i = 2, j;
    mat[1][1] = 1;
    mat[1][2] = 1;
    while(rActual <= r)
    {
        j = 2;
        mat[i][1] = 1;
        mat[i][rActual + 1] = 1;
        while (j <= rActual)
        {
            if (i == 2)
                mat[i][j] = mat[i - 1][j - 1] + mat[i - 1][j];
            else
                mat[i][j] = mat[i + 1][j - 1] + mat[i + 1][j];
            j++;
        }
        if (i == 2)
            i = 1;
        else
            i = 2;
        rActual++;
    }
    if (r % 2 == 0)
        for (int j = 1; j <= r + 1; j++)
            cout<<mat[2][j]<<" ";
    else
        for(int j = 1; j <= r + 1; j++)
            cout<<mat[1][j]<<" ";
}*/

int x[5000001];

void generareTriunghi(int r, int d)
{
    int rActual = 2, j, copie, copie2, s = 0;
    x[1] = 1;
    x[2] = 1;
    while (rActual <= r)
    {
        j = 2;
        x[1] = 1;
        x[rActual + 1] = 1;
        copie = x[1];
        while (j <= rActual)
        {
            copie2 = x[j];
            x[j] = x[j] + copie;
            j++;
            copie = copie2;
        }
        rActual++;
    }
    for (int i = 1; i <= r + 1; i++)
        if (x[i] % d == 0)
            s++;
    g<<s;
}

int main()
{
    int r, d, mat[3][100];
    f>>r>>d;
    generareTriunghi(r, d);
    return 0;
}