看题传送门:http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2077
这题交上去以前一直Submission error 。拿别人的AC代码也一样。
现在可以提交了~原来的代码就是对的^ ^ (2013/10/23)
用到了multiset ,不是set哦,set不允许元素重复,而multiset 允许。
12543742 | 11136 | Hoax or what | Accepted | C++ | 2.055 | 2013-10-23 01:04:49 |
#include<cstdio>
#include<set>
#include<algorithm>
using namespace std;
int main()
{
multiset<int> p;
int n;
while(scanf("%d",&n),n)
{
long long ans=0;
p.clear(); //清空
for(int ri=0;ri<n;ri++)
{
int k;
scanf("%d",&k);
for(int i=0;i<k;i++)
{
int temp;
scanf("%d",&temp);
p.insert(temp);
}
multiset<int>::iterator minp,maxp;
minp=p.begin();
maxp=p.end(); //尾部迭代器只是哨兵
maxp--;
ans=ans+ *maxp- *minp;
p.erase(minp);
p.erase(maxp);
}
printf("%lld\n",ans);
}
}