UVA 102 - Ecological Bin Packing

暴力枚举嘤嘤嘤
用0表示B,1表示G,2表示C
代码如下:

#include <bits/stdc++.h>

using namespace std;

int name[6][3]= {0,2,1,0,1,2,2,0,1,2,1,0,1,0,2,1,2,0};
int main()
{
    int x[3][3],i,j,y,Min;
    while(cin>>x[0][0]>>x[0][1]>>x[0][2])
    {
        for(i=1; i<3; ++i)
            cin>>x[i][0]>>x[i][1]>>x[i][2];
        for(i=0; i<6; ++i)
        {
            y=0;
            y+=(x[1][name[i][0]]+x[2][name[i][0]]);
            y+=(x[0][name[i][1]]+x[2][name[i][1]]);
            y+=(x[0][name[i][2]]+x[1][name[i][2]]);
            if(!i)
            {
                Min=y;
                j=i;
            }
            if(y<Min)
            {
                Min=y;
                j=i;
            }
        }
        for(i=0; i<3; ++i)
        {
            if(name[j][i]==0)cout<<"B";
            if(name[j][i]==1)cout<<"G";
            if(name[j][i]==2)cout<<"C";
        }
        cout<<" "<<Min<<endl;
    }
    return 0;
}

阅读更多
个人分类: uva
上一篇UVA 440 - Eeny Meeny Moo
下一篇UVA 445 - Marvelous Mazes
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭