Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
74
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3. using namespace std;
  4.  
  5.  
  6. int n,a[10000],S=0,x=0,k;
  7.  
  8. void citire()
  9. {
  10. cin>>n;
  11. for(int i=1;i<=n;i++)
  12. cin>>a[i];
  13. cin>>k;
  14. }
  15.  
  16. int sortare(int st, int dr)
  17. {
  18. int aux,i,j,di,dj;
  19. di=0;dj=1;i=st;j=dr;
  20. while(i<j)
  21. {
  22. if(a[i]>a[j])
  23. {
  24. aux=a[i];
  25. a[i]=a[j];
  26. a[j]=aux;
  27. aux=di;
  28. di=dj;
  29. dj=aux;
  30. }
  31. i=i+di;
  32. j=j-dj;
  33. }
  34. return i;
  35. }
  36.  
  37. void quick(int st, int dr)
  38. {
  39. int p;
  40. if(st<dr)
  41. {
  42. p=sortare(st,dr);
  43. quick(st,p-1);
  44. quick(p+1,dr);
  45. }
  46. }
  47.  
  48. void rezolvare()
  49. {
  50. int i=1;
  51. int x=k;
  52. while(k!=0)
  53. {
  54. if(a[i]<0)
  55. a[i]=abs(a[i]);
  56. else
  57. if(a[i]>0)
  58. a[i]=-abs(a[i]);
  59. i+=1;
  60. k-=1;
  61. }
  62. long long S=0;
  63. for(int i=1;i<=n;i++)
  64. S+=a[i];
  65. cout<<S;
  66. }
  67.  
  68. int main()
  69. {
  70. citire();
  71. quick(1,n);
  72. rezolvare();
  73. return 0;
  74. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement