a53

pyk

a53
Jan 27th, 2019
199
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.57 KB | None | 0 0
  1. #include <fstream>
  2. using namespace std;
  3. int c,k,n,i,mn=10001,mx=0,x,uc,ok,cx,v[10000],d,p;
  4.  
  5. int main()
  6. {
  7. ifstream f("pyk.in");
  8. ofstream g("pyk.out");
  9. f>>c>>k>>n;
  10. if(c==1)
  11. {
  12. for(i=1;i<=n;++i)
  13. {
  14. f>>x;
  15. cx=x;
  16. uc=x%10;
  17. ok=1;
  18. while(cx!=0&&ok==1)
  19. {
  20. if(cx%10!=uc)
  21. ok=0;
  22. cx/=10;
  23. }
  24. if(ok==1)
  25. {
  26. if(x>mx)
  27. mx=x;
  28. if(x<mn)
  29. mn=x;
  30. }
  31. }
  32. if(mn!=10001&&mx!=0)
  33. g<<mn<<' '<<mx;
  34. else
  35. g<<1;
  36. }
  37. else
  38. {
  39. for(i=1;i<=n;++i)
  40. {
  41. f>>x;
  42. d=2;
  43. p=0;
  44. while(x%d==0)
  45. ++p,x/=d;
  46. v[d]=v[d]+p;
  47. d=3;
  48. while(d<=x/2)
  49. {
  50. p=0;
  51. while(x%d==0)
  52. ++p,x/=d;
  53. v[d]+=p;
  54. d+=2;
  55. }
  56. if(x!=1)
  57. ++v[x];
  58. }
  59. ok=0;
  60. for(i=2;i<10000;++i)
  61. {
  62. v[i]=v[i]%k;
  63. if(v[i]!=0)
  64. ++ok;
  65. }
  66. if(ok!=0)
  67. g<<ok<<'\n';
  68. for(i=2;i<10000;++i)
  69. {
  70. v[i]=v[i]%k;
  71. if(v[i]!=0&&i<10000)
  72. g<<i<<' '<<k-v[i]<<'\n';
  73. }
  74. if(ok==0)
  75. g<<1<<'\n'<<2<<' '<<k;
  76. }
  77. return 0;
  78. }
Advertisement
Add Comment
Please, Sign In to add comment