題目
原題鏈接:[http://codeforces.com/problemset/problem/558/A](A. Lala Land and Apple Trees)
題意
在一條數(shù)軸上延曙,有n棵蘋(píng)果樹(shù)概作,從位置0開(kāi)始田度,開(kāi)始可以選擇左右,隨后遇到一顆沒(méi)到過(guò)的樹(shù)迷郑,就變換方向枝恋。問(wèn)最多拿到多少個(gè)蘋(píng)果。
代碼
#include<bits/stdc++.h>
using namespace std;
struct node{
int x,a;
}z[100],f[100];
int cmp(node a,node b){
return abs(a.x)<abs(b.x);
}
int main() {
int n,x,a,i=0,j=0;
cin>>n;
for(int k=0;k<n;k++){
cin>>x>>a;
if(x>0) {z[i].x=x;z[i].a=a;i++;}
else {f[j].x=x;f[j].a=a;j++;}
}
sort(z,z+i,cmp);
sort(f,f+j,cmp);
int sum=0,t=(i<j?i:j);
for(int k=0;k<t;k++){
sum+=z[k].a;
sum+=f[k].a;
}
if(i>j) sum+=z[t].a;
else if(j>i) sum+=f[t].a;
cout<<sum;
return 0;
}