您的位置:首页 > 其它

UVA 11136 Hoax or what set

2016-04-28 20:35 267 查看
点击打开题目链接

set:自动去重排序

multiset:不去重,排序

#include <cstdio>
#include <set>
#include <iostream>
using namespace std;

int main()
{
//freopen("in.txt", "r", stdin);
multiset<int> muSet;
multiset<int>::iterator muSetIt; //迭代器,相当于一个指针
int m, n, x;
while (~scanf("%d", &n), n)
{
muSet.clear(); //清空
long long ans = 0; //注意超int
for (int i = 0; i < n; i++)
{
scanf("%d", &m);
for (int j = 0; j < m; j++)
{
scanf("%d", &x);
muSet.insert(x); //插入
}
muSetIt = muSet.end(); //指向最后元素的下一个位置(不是最后的元素)
muSetIt--; //向前移动,这是指向了最后一个元素
int Max = *muSetIt;
muSet.erase(muSetIt); //将这个最大的元素删除

muSetIt = muSet.begin(); //第一个元素,最小的
int Min = *muSetIt;
muSet.erase(muSetIt);
ans += Max - Min;
}
cout << ans << endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  STL acm