你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / C专栏
HDU 1015 Safecracker
 

终于做对DFS了。这题就是简单的DFS吧,不过对我而言,我是费了不少力气。

#include
#include
#include
#include
#include
using namespace std;
char s[15];
bool isok,visited[15];
int len;
void dfs(int target,char *ans,int cnt,int id)//cnt用于存储是第几次,一共5次。
{
    if(isok)
        return;
    if(target==0&&cnt==5)
    {
        isok=true;
        return;
    }
    if(cnt>=5)
        return;
    int t;
    for(int i=0;ib;
}
int main()
{
    int target;
    while(scanf("%d%s",&target,s))
    {
        if(target==0&&strcmp(s,"END")==0)
            break;
        len=strlen(s);
        sort(s,s+len,cmp);//排序,因为题目要求是字典序大的答案
        char ans[5];
        memset(visited,false,sizeof(visited));
        isok=false;
        dfs(target,ans,0,0);
        if(isok)
        {
            for(int i=0;i<5;i++)
                printf("%c",ans[i]);
            printf("\n");
        }
        else
            printf("no solution\n");
    }
    return 0;
}

  推荐精品文章

·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089