fbpx

Problema #2259 – dinamica01 – Rezolvari PBInfo

de Mihai-Alexandru

Se consideră un număr natural nenul N. Vom considera mulțimea A(N) a numerelor de N cifre nenule care au proprietatea că orice două cifre alăturate sunt de parități diferite. De exemplu 1472 este un număr din mulțimea A(4), dar 1567 nu este pentru că are cifrele alăturate 1 și 5 de aceeași paritate.

Cerința

Să se determine numărul de elemente ale mulțimii A(N). Pentru că acest număr poate fi foarte mare, se va determina modulo 30103.

Date de intrare

Programul citește de la tastatură numărul N.

Date de ieșire

Programul va afișa pe ecran numărul S, reprezentând numărul modulo 30103 al elementelor mulțimii A(N).

Restricții și precizări

  • 1 ≤ n ≤ 100 000

Exemplu

Intrare

2

Ieșire

40
#include <bits/stdc++.h>
#define mod 30103
using namespace std;

long long par[100002] , imp[100005] , n;

int main()
{
    cin >> n;
    par[1] = 4;
    imp[1] = 5;
    for(int i = 2 ; i <= n ; i++)
    {
        par[i] = (4 * imp[i - 1])%mod;
        imp[i] = (5 * par[i - 1])%mod;
    }
    cout << (par[n] + imp[n])%mod;
}
Comentarii

S-ar putea sa iti placa