Cod sursa(job #1034423)

Utilizator PetcuIoanPetcu Ioan Vlad PetcuIoan Data 17 noiembrie 2013 20:20:57
Problema Dtcsu Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <cstdio>
#include <cstring>

using namespace std;

char vem[24];
int p;

inline void pars(long long &t){
  t = 0;
  p = 0;
  while(vem[p] >= '0' && vem[p] <= '9'){
    t = t * 10;
    t += vem[p] - '0';
    ++p;
  }
}

int main(){
  freopen("dtcsu.in", "r", stdin);
  freopen("dtcsu.out", "w", stdout);

  for(int i = 1; i <= 276997; ++i)
    gets(vem);//Y U NO PUT THIS BULL ON END LINES, hash is bad.

  int q;
  long long t;
  scanf("%d\n", &q);

  int ans = 0;
  for(int i = 1; i <= q; ++i){
    gets(vem);
    pars(t);
    t = t / (t & -t);
    while(t % 3 == 0)
      t /=3;
    while(t % 5 == 0)
      t /= 5;
    while(t % 7 == 0)
      t /= 7;
    while(t % 11 == 0)
      t /= 11;
    if(t == 1)
      ++ans;
  }

  printf("%d", ans);
}