Advertisement
a53

CountPrimSub

a53
Dec 28th, 2019
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.80 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. ifstream fin("countprimsub.in");
  4. ofstream fout("countprimsub.out");
  5. int n,x, s[1001], d[1001],info[1001];
  6. int prim(int n)
  7. {
  8. if(n==0 || n==1)
  9. return 0;
  10. else
  11. if(n%2==0&&n!=2)
  12. return 0;
  13. else
  14. for(int d=3;d*d<=n;d=d+2)
  15. if(n%d==0)
  16. return 0;
  17. return 1;
  18. }
  19.  
  20. int count(int k)
  21. {
  22. if(k==0) return 0;
  23. else
  24. {
  25. if(prim(info[k]))
  26. return 1+count(s[k])+count(d[k]);
  27. else
  28. return count(s[k])+count(d[k]);
  29. }
  30. }
  31.  
  32. int main()
  33. {
  34. fin>>n;
  35. for(int i=1;i<=n;i++)
  36. fin>>info[i]>>s[i]>>d[i];
  37. int k,y;
  38. fin>>k;
  39. for(int i=1;i<=k;i++)
  40. {
  41. fin>>y;
  42. fout<<count(y)<<'\n';
  43. }
  44. fin.close();
  45. fout.close();
  46. return 0;
  47. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement