CSES - Datatähti 2017 alku - Results
Submission details
Task:Järjestys
Sender:Senpai
Submission time:2016-10-16 23:12:09 +0300
Language:C++
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#10.71 s1details
#20.84 s2details
#3--3details

Code

#include <bits/stdc++.h>
using namespace std;

long long a,b,n,x,y;
vector<long long>s;
 vector<long long> v;
int main(){
ios_base::sync_with_stdio(0);
cin.tie(0);
    cin >> n;
  for(int i=0; i<n;i++){
      cin>>b;
      v.push_back(b);   
  }
    
    
     while(n!=0){
         if(v[0]==1){
             if(is_sorted(v.begin(),v.end()))
                break;}
         int k=0;
    if (v[0]==n){
        for(int i=n-1; i>=0; i--){
            x=i;
            if(abs(v[i]-v[i-1])!=1 && i!=0) {
              s.push_back(i);
                reverse(v.begin(),v.begin()+i);
                break;}
           else{
           s.push_back(n);
               reverse(v.begin(),v.end());
               
                break;}}
     
      }
    
else if(v[1]==v[0]+1){
             while(v[k+2]!=v[0]-1 && k!=n-1){k++;}
             s.push_back(k+2);
             reverse(v.begin(),v.begin()+(k+2));

         }
          else {
                 while(v[k+1]!=v[0]+1 && k!=n-1){k++;}
                 s.push_back(k+1);
                 reverse(v.begin(),v.begin()+(k+1));
 
         }
            
  
         
     }
      y=s.size();
cout<<y<<"\n";
for(int i=0; i<y;i++){
    cout<<s[i]<<" ";
     }
}

Test details

Test 1

Group: 1

Verdict:

input
10
9 3 4 7 6 5 10 2 8 1

correct output
32
10 10 9 10 9 8 7 9 4 2 1 4 5 2...

user output
(empty)

Test 2

Group: 2

Verdict:

input
1000
650 716 982 41 133 1000 876 92...

correct output
3984
207 207 206 207 128 127 126 12...

user output
(empty)

Test 3

Group: 3

Verdict:

input
100000
94703 47808 62366 31885 7091 8...

correct output
399956
98676 98676 98675 98676 62994 ...

user output
(empty)