denis_andrei10

mada

Feb 20th, 2020
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. #include<iostream>
  2. #include<fstream>
  3. using namespace std;
  4. ifstream fin("paritate.in");
  5. ofstream fout("paritate.out");
  6. char v[600005];
  7. bool ru[600005];
  8. char c[650005];
  9. int gresite[700505];
  10. int main()
  11. {
  12. int i=1, j, contor=0, parit, k=1, l, m=0, eroare=0, pb=1, nr, f=8, g=2, s=0;
  13. while(fin>>v[i])
  14. {
  15. ru[i]=v[i]-48;
  16. i++;
  17. }
  18. for(j=1; j<=i/8; j++)
  19. {
  20. parit=ru[g-1];
  21. nr=0;
  22. pb=1;
  23. contor=0;
  24. for(l=g; l<=f; l++)
  25. {
  26. if(ru[l]==1)
  27. {
  28. contor++;
  29. }
  30. }
  31. if(parit==1)
  32. {
  33. if(contor%2==1)
  34. {
  35.  
  36. for(l=f; l>=g; l--)
  37. {
  38. nr=nr+ru[l]*pb;
  39. pb*=2;
  40. }
  41. c[++m]=nr;
  42. }
  43. else
  44. {
  45. eroare++;
  46. gresite[++s]=j;
  47. }
  48. }
  49. else
  50. {
  51. if(contor%2==0)
  52. {
  53. for(l=f; l>=g; l--)
  54. {
  55. nr=nr+ru[l]*pb;
  56. pb*=2;
  57. }
  58. c[++m]=nr;
  59.  
  60. }
  61. else
  62. {
  63. eroare++;
  64. gresite[++s]=j;
  65. }
  66.  
  67. }
  68. g+=8;
  69. f+=8;
  70. }
  71. cout<<eroare;
  72. if(eroare==0)
  73. {
  74. fout<<"DA"<<'\n';
  75.  
  76. for(i=1; i<=m; i++)
  77. {
  78. fout<<c[i];
  79. }
  80. }
  81. else
  82. {
  83. fout<<"NU"<<'\n';
  84. for(i=1; i<=s; i++)
  85. {
  86. fout<<gresite[i]-1<<' ';
  87. }
  88. }
  89. fin.close();
  90. fout.close();
  91. return 0;
  92. }
Advertisement
Add Comment
Please, Sign In to add comment