#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); } |
English