201809
1.卖菜
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,i,price[1005],new_price[1005];
cin>>n;
for(i=0;i<n;i++)
cin>>price[i];
new_price[0]=(price[0]+price[1])/2;
new_price[n-1]=(price[n-1]+price[n-2])/2;
for(i=1;i<=n-2;i++)
new_price[i]=(price[i-1]+price[i]+price[i+1])/3;
for(i=0;i<n;i++)
cout<<new_price[i]<<' ';
return 0;
}
2.买菜
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,i,j;
int H[4010],W[4010];
long long sum=0;
cin>>n;
for(i=0;i<n;i++)
cin>>H[2*i]>>H[2*i+1];
for(i=0;i<n;i++)
cin>>W[2*i]>>W[2*i+1];
i=0;j=0;
while(i<n&&j<n)
{
if(H[2*i+1]<=W[2*j]) //W到的时间大于等于H走的时间
{
i++;
continue;
}
else if(W[2*j+1]<=H[2*i]) //H到的时间大于等于W走的时间
{
j++;
continue;
}
else if((H[2*i]<=W[2*j])&&(H[2*i+1]<=W[2*j+1]))
{
sum+=H[2*i+1]-W[2*j];
i++;
continue;
}
else if((H[2*i]<=W[2*j])&&(W[2*j+1]<=H[2*i+1]))
{
sum+=W[2*j+1]-W[2*j];
j++;
continue;
}
else if((W[2*j]<=H[2*i])&&(H[2*i+1]<=W[2*j+1]))
{
sum+=H[2*i+1]-H[2*i];
i++;
continue;
}
else if((W[2*j]<=H[2*i])&&(W[2*j+1]<=H[2*i+1]))
{
sum+=W[2*j+1]-H[2*i];
j++;
continue;
}
}
cout<<sum;
return 0;
}