Cod sursa(job #2647947)

Utilizator eugen5092eugen barbulescu eugen5092 Data 7 septembrie 2020 15:32:03
Problema Nunta Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.19 kb
#include <bits/stdc++.h>
using namespace std;

ifstream ci("nunta.in");
ofstream cou("nunta.out");

long long n;

long long calc_comb(long long b,long long a){
    //comb de b luate cate a
    long long rez=1;
    long long a_b;
    long long ra=1,rb_a=1;
    long long b_a=b-a;
    for(long long i=2;i<=b;i++){
        rez*=i;
        while(rez%ra==0&&ra<=a){
            rez/=ra;
            ra++;
        }
        while(rez%rb_a==0&&rb_a<=b_a){
            rez/=rb_a;
            rb_a++;
        }
    }
    return rez;

}

void rez(){
    long long k,p,sm=0,nrgr,rez=0;
    if(n%2==0){
        k=0;
        while(k<=n){
            nrgr=(n-k)/2;
            rez+=calc_comb(nrgr+k,nrgr);
            k+=2;
        }

    }else{
        k=1;
        while(k<=n){

            nrgr=(n-k)/2;
            rez+=calc_comb(nrgr+k,nrgr);
            //cout<<k<<" "<<nrgr<<" "<<nrgr+k<<" "<<calc_comb(nrgr+k,nrgr)<<" "<<n<<"\n";
            k+=2;
        }
    }
    cou<<rez;
    cout<<n<<" "<<rez<<"\n";
}

int main()
{
    ci>>n;
    long long a=1,b=2,c;
    for(int i=2;i<n;i++){
        c=b;
        b+=a;
        a=c;
    }
    cou<<b;
    return 0;
}