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

[暴力]poj1166

时间:2015-05-22 22:39:22      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:poj   搜索   

题意:
给出9【A-I】个表,9中操作,每种操作只能拨动部分表,
Move Affected clocks
1 ABDE

2 ABC

3 BCEF

4 ADG

5 BDEFH

6 CFI

7 DEGH

8 GHI

9 EFHI
问,最少几步把表都拨到12点?

分析:
这个题每种拨法不能超过4次,这就类似翻转棋子了,4次就回到了原来的地方,没必要。所以,那问题就简化很多了,每种操作不多于3次。那如何选择最短路呢?因为这些顺序是无关的,先执行哪个动作都可以,所以顺序是可以随便写的。改变顺序不影响结果。

#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <vector>
#include <map>
#include <queue>
#include <algorithm>
#define read freopen("q.in","r",stdin)
#define LL long long
#define maxn 1000
using namespace std;
int mp[maxn];

int main()
{
  //  read;
    int i,j;
    for(i=1;i<=9;i++)cin>>mp[i];
    int i1,i2,i3,i4,i5,i6,i7,i8,i9;
    for(i2=0;i2<4;i2++)
    for(i1=0;i1<4;i1++)
    for(i3=0;i3<4;i3++)
    for(i4=0;i4<4;i4++)
    for(i5=0;i5<4;i5++)
    for(i6=0;i6<4;i6++)
    for(i7=0;i7<4;i7++)
    for(i8=0;i8<4;i8++)
    for(i9=0;i9<4;i9++)
    {
        int tmp1=(mp[1]+i1+i2+i4)%4;
        int tmp2=(mp[2]+i1+i2+i3+i5)%4;
        int tmp3=(mp[3]+i2+i3+i6)%4;
        int tmp4=(mp[4]+i1+i4+i5+i7)%4;
        int tmp5=(mp[5]+i1+i3+i5+i7+i9)%4;
        int tmp6=(mp[6]+i3+i5+i6+i9)%4;
        int tmp7=(mp[7]+i4+i7+i8)%4;
        int tmp8=(mp[8]+i5+i7+i8+i9)%4;
        int tmp9=(mp[9]+i6+i8+i9)%4;

        if(tmp1==0 && tmp2==0 && tmp3==0 && tmp4==0 && tmp5==0 && tmp6==0
        && tmp7==0 && tmp8==0 && tmp9==0)
        {
            for(int k1=0;k1<i1;k1++)cout<<"1 ";
            for(int k2=0;k2<i2;k2++)cout<<"2 ";
            for(int k3=0;k3<i3;k3++)cout<<"3 ";
            for(int k4=0;k4<i4;k4++)cout<<"4 ";
            for(int k5=0;k5<i5;k5++)cout<<"5 ";
            for(int k6=0;k6<i6;k6++)cout<<"6 ";
            for(int k7=0;k7<i7;k7++)cout<<"7 ";
            for(int k8=0;k8<i8;k8++)cout<<"8 ";
            for(int k9=0;k9<i9;k9++)cout<<"9 ";
            cout<<endl;
            return 0;

        }
    }
}

[暴力]poj1166

标签:poj   搜索   

原文地址:http://blog.csdn.net/u010582475/article/details/45920603

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