Cod sursa(job #1429817)

Utilizator StarGold2Emanuel Nrx StarGold2 Data 7 mai 2015 11:46:24
Problema Pascal Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#define DIM 5000010
using namespace std;

ifstream fin ("pascal.in" );
ofstream fout("pascal.out");

int N, D[DIM], S, i, nr;

inline void Divide(int D[], int st, int dr, int S){
    int K = dr - st + 1;
    if(K == 1){
        D[st] = 1;
        D[dr] = 1;
        return;
    }
    int val = 1;
    while(val * S < K)
        val *= S;
    val = K - val;
    Divide(D, st, st+val-1, S);
    Divide(D, dr-val+1, dr, S);
    return;
}

inline void CodeExpert(){
    fin >> N >> S; N ++;
    Divide(D, 1, N, S);
    for(i = 1; i <= N; i ++)
        nr += !D[i];
    fout << nr;
    return;
}

int main(){
    CodeExpert();
    return 0;
}