Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include<bits/stdc++.h>
- using namespace std;
- int a[100001];
- int main(){
- int n;
- cin>>n;
- for(int i=0;i<n;i++){
- cin>>a[i];
- }
- int i=0;
- int cnt=0;
- vector<int>v,ans;
- set<int>pos,neg;
- while(i<n){
- int val=a[i];
- if(val>0){
- if(pos.count(val)||neg.count(val)){
- cout<<"-1"<<endl;
- return 0;
- }
- pos.insert(val);
- cnt++;
- }
- else{
- val=-val;
- if(!pos.count(val)||neg.count(val)){
- cout<<"-1"<<endl;
- return 0;
- }
- neg.insert(val);
- --cnt;
- }
- i++;
- v.push_back(val);
- if(cnt==0){
- ans.push_back(v.size());
- v.clear();
- pos.clear();
- neg.clear();
- }
- }
- if(v.size()){
- cout<<"-1"<<endl;
- return 0;
- }
- cout<<ans.size()<<endl;
- for(int i=0;i<ans.size();i++){
- cout<<ans[i]<<" ";
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement