码迷,mamicode.com
首页 > 其他好文 > 详细

sh073分硬币

时间:2019-04-20 19:43:07      阅读:281      评论:0      收藏:0      [点我收藏+]

标签:fine   main   iostream   printf   efi   problem   pre   lse   最小   

总时间限制:10000ms
单个测试点时间限制:1000ms
内存限制:65536kB

描述:

徐老师口袋里面有7枚硬币,他要将这些硬币分给秦立伦和夏天呈,使得两人得到的钱的差值最小(不然他俩会因为分得不均而打架)。每枚硬币的面值范围是1分到100分,不允许将一枚硬币分开。

 

输入:

输入仅一行,包含以空格分隔的 7 个正整数,表示每枚硬币的面值

 

输出:

输出一个正整数或 0,表示两人所分到钱的最小差值

 

样例输入:

2 5 7 9 11 8 23

 

样例输出:

1

AC代码:(暴力)

#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <algorithm>
#define ABS(a) ((a) >= 0 ? (a) : (-(a)))
#define MIN(a, b) ((a) < (b) ? (a) : (b))

int main() {
    int f = 0;
    int p1 = 0;
    int p2 = 0;
    int answer = 2147483647;
    int m[7];
    for(int i = 0; i < 7; ++i) {
        std::cin >> m[i];
    }
    for(int i = 0; i < 256; ++i) {
        for(int j = 0; j < 7; ++j) {
            if(((1 << (j - 1)) & i))
                p1 = p1 + m[j];
            else
                p2 = p2 + m[j];
        }
        answer = MIN(answer, ABS(p1 - p2));
        p1 = 0;
        p2 = 0;
    }
    printf("%d", answer);
    return 0;
}

 

sh073分硬币

标签:fine   main   iostream   printf   efi   problem   pre   lse   最小   

原文地址:https://www.cnblogs.com/Iuppiter/p/10742283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!