N个整数,求其中任意N-1个数的乘积中的最大的一个

来源:互联网 发布:手机淘宝刷単平台软件 编辑:程序博客网 时间:2024/05/22 03:31

转自:http://bbs.csdn.net/topics/90460367


int main(int argc, char* argv[])
{
int a[] = { -2, -1, 0, 0, 1, 2, 3, -9 };
vector<int> arr(a, a + sizeof(a) / sizeof(int));
std::sort(arr.begin(), arr.end(), std::less<int>());

vector<int>::iterator iter = find(arr.begin(), arr.end(), 0);
size_t c = std::count(iter, arr.end(), 0);
vector<int> arrn(arr.begin(), iter);
vector<int> arrz(iter, iter + c);
vector<int> arrp(iter + c, arr.end());

size_t zc = arrz.size();
if (zc > 1)
{
cout << 0;
}
else if (zc == 1)
{
if (arrn.size() % 2 == 0)
{
cout << "times, except 0";
}
else
{
cout << 0;
}

}
else if (zc == 0)
{
if (arrn.size() % 2 == 0)
{
//去掉那个最小的正整数
}
else
{
//去掉那个最大的负整数
}
}
return 0;
}

0 0
原创粉丝点击