Cod sursa(job #1434339)

Utilizator movo608Moldovan Andrei movo608 Data 10 mai 2015 15:29:04
Problema Pascal Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.38 kb
#include<fstream>
using namespace std;
int n, d, i, nr, x, y;
char v2[5000002], v5[5000002], v3[5000002];
ifstream fin("pascal.in");
ofstream fout("pascal.out");
int main(){
    fin>> n >> d;
   for(i = 1; i <= n; i++){
        if(i % 2 == 0){
            v2[i] = v2[i / 2] + 1;
        }
        if(i % 3 == 0){
            v3[i] = v3[i / 3] + 1;
        }
        if(i % 5 == 0){
            v5[i] = v5[i / 5] + 1;
        }
   }
   if(d == 2){
        for(i = 1; i <= n; i++){
            x = x + v2[n - i + 1] - v2[i];
            if(x != 0){
                nr++;
            }
        }
   }
   if(d == 3){
        for(i = 1; i <= n; i++){
            x = x + v3[n - i + 1] - v3[i];
            if(x != 0){
                nr++;
            }
        }
   }
   if(d == 5){
        for(i = 1; i <= n; i++){
            x = x + v5[n - i + 1] - v5[i];
            if(x != 0){
                nr++;
            }
        }
   }
   if(d == 4){
        for(i = 1; i <= n; i++){
            x = x + v2[n - i + 1] - v2[i];
            if(x > 1){
                nr++;
            }
        }
   }
   if(d == 6){
        for(i = 1; i <= n; i++){
            x = x + v2[n - i + 1] - v2[i];
            y = y + v3[n - i + 1] - v3[i];
            if(x != 0 && y != 0){
                nr++;
            }
        }
   }
   fout<< nr <<"\n";
   return 0;
}