Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.25 KB | None | 0 0
  1. include<bits/stdc++.h>
  2. using namespace std;
  3. int a[100001];
  4. int main(){
  5.  
  6. int n;
  7. cin>>n;
  8. for(int i=0;i<n;i++){
  9. cin>>a[i];
  10. }
  11. int i=0;
  12. int cnt=0;
  13. vector<int>v,ans;
  14. set<int>pos,neg;
  15. while(i<n){
  16.  
  17. int val=a[i];
  18. if(val>0){
  19.  
  20. if(pos.count(val)||neg.count(val)){
  21. cout<<"-1"<<endl;
  22. return 0;
  23. }
  24. pos.insert(val);
  25. cnt++;
  26. }
  27. else{
  28. val=-val;
  29. if(!pos.count(val)||neg.count(val)){
  30. cout<<"-1"<<endl;
  31. return 0;
  32. }
  33. neg.insert(val);
  34. --cnt;
  35. }
  36. i++;
  37. v.push_back(val);
  38. if(cnt==0){
  39. ans.push_back(v.size());
  40. v.clear();
  41. pos.clear();
  42. neg.clear();
  43. }
  44. }
  45. if(v.size()){
  46. cout<<"-1"<<endl;
  47. return 0;
  48. }
  49. cout<<ans.size()<<endl;
  50. for(int i=0;i<ans.size();i++){
  51. cout<<ans[i]<<" ";
  52. }
  53.  
  54.  
  55. return 0;
  56. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement