Cerința
Pentru un număr natural nenul n
, să se determine numărul de submulțimi nevide ale mulțimii {1, 2,..., n}
cu proprietatea că oricare două elemente dintr-o submulțime au diferența în modul strict mai mare decât 1
. Pentru că acest număr poate fi foarte mare, se va determina modulo 777013
.
Date de intrare
Programul citește de la tastatură numărul n
.
Date de ieșire
Programul va afișa pe ecran numărul acestor submulțimi, modulo 777013
.
Restricții și precizări
1 ≤ n ≤ 100.000
Exemplu
Intrare
5
Ieșire
12
Explicație
Cele 12
submulțimi sunt: {1}
, {2}
, {3}
, {4}
, {5}
, {1,3}
, {1,4}
, {1,5}
, {2,4}
, {2,5}
, {3,5}
, {1,3,5}
.
#include <bits/stdc++.h> using namespace std; #define mod 777013 int n , s[100001]; int main() { cin >> n; s[1] = 1 , s[2] = 2; for(int i = 2 ; i <= n ; i++) s[i] = ((s[i - 1] + s[i - 2]) + 1) % mod; cout << s[n]; }