[一天至少一题直到 ICPC 开赛 #019] 解题:Least Product(12/31)

Least Product

先祝各位,新年快乐

这是跨年前,来写一些简单一点的

题目连结

DC群组

解题

因为是乘法,有两个性质

任何数字乘 0 答案都是 0乘以基数的负数答案是负数

又因为只能在 ~ 0 之间

几种情况

如果乘积大于零 ==> 乘出来的值大于零,最小值只能为0==>乘0如果乘积小于零 ==> 乘出来的值小于零,即为最小值如果只有一个值 ==> 答案为 1 或 0,在依照正负去判断如果是零    ==> 答案只能是 1 ,因为怎么乘答案都是 0

code

#include <iostream>#include <vector>using namespace std;int main(int argc, char const *argv[]){    int t;    cin >> t;    while (t--)    {        int n;        cin >> n;        bool flag = false;        vector<int> v(n);        vector<int> check;        for (int i = 0; i < n; i++)        {            cin >> v[i];            if (v[i] < 0)            {                check.push_back(i);            }            else if (v[i] == 0)                flag = true;        }        if (flag == true)            cout << 0 << endl;        else if (check.size() % 2 == 1 && check.size() != 0)        {            cout << 0 << endl;        }        else        {            cout << 1 << endl                 << "1 " << 0 << endl;        }    }    return 0;}

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章