1037.Magic Coupon (25)
pat-al-1037
2017-02-06
要得到最大的和,每次要從兩行中各取出一個數,使之乘積為當前能找到的最大,那肯定是正數和正數相乘、負數和負數相乘(取絕對值最大的)。先從小到大排序,把負數相乘;再從大到小排序,把正數相乘。/** * pat-al-1037 * 2017-02-06 * Cpp version * Author: fengLian_s */#include<stdio.h>#include<algorithm>using namespace std;bool cmp1(int a, int b){ return a < b;}bool cmp2(int a, int b){ return a > b;}int main(){ freopen("in.txt", "r", stdin); int nc, np; scanf("%d", &nc); int coupon[nc]; for(int i = 0;i < nc;i++) { scanf("%d", &coupon[i]); //-FIN-新聞熱點
疑難解答