#include <bits/stdc++.h> using namespace std; int t[50005],t1[50005],n,l,l2,s; int main() { std::ios_base::sync_with_stdio(0); cin>>n; cin>>t[0]; for(int i=1;i<n;i++) { cin>>t[i]; if(t[i]>t[i-1])t1[i]=1; else if(t[i]==t[i-1])t1[i]=0; else t1[i]=-1; } s=0; for(int i=1;i<n;i++) { if(t1[i]==0) {l++; i++;} else if(s==1&&t1[i]==1)l++; else if(s==0&&t1[i]==-1)l++; if(s==0)s=1; else s=0; } s=0; for(int i=1;i<n;i++) { if(t1[i]==0){ l2++; i++;} else if(s==0&&t1[i]==1)l2++; else if(s==1&&t1[i]==-1)l2++; if(s==0)s=1; else s=0; } cout<<min(l,l2); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 | #include <bits/stdc++.h> using namespace std; int t[50005],t1[50005],n,l,l2,s; int main() { std::ios_base::sync_with_stdio(0); cin>>n; cin>>t[0]; for(int i=1;i<n;i++) { cin>>t[i]; if(t[i]>t[i-1])t1[i]=1; else if(t[i]==t[i-1])t1[i]=0; else t1[i]=-1; } s=0; for(int i=1;i<n;i++) { if(t1[i]==0) {l++; i++;} else if(s==1&&t1[i]==1)l++; else if(s==0&&t1[i]==-1)l++; if(s==0)s=1; else s=0; } s=0; for(int i=1;i<n;i++) { if(t1[i]==0){ l2++; i++;} else if(s==0&&t1[i]==1)l2++; else if(s==1&&t1[i]==-1)l2++; if(s==0)s=1; else s=0; } cout<<min(l,l2); } |