Safecracker
问题陈述:
杭州电子科技大学HANGZHOU DIANZI UNIVERSITY Online Judge Problem - 1015
问题解析:
深度优先搜索(Depth_First Search)
代码详解:
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cstring> using namespace std; int flag, visited[]; int cmp(const void *a, const void *b){
return *(char *)b - *(char *)a;
} int calculate(char *ans) {
int res = , x = , sign = ;
for(int i=; i<; i++) {
for(int j=; j<=i; j++) {
x *= (ans[i] - 'A' + );
}
res += x * sign;
x = ;
sign *= (-);
}
return res;
} void dfs(char *str, int target, char *ans, int depth, int len) {
if(depth == ) {
if(calculate(ans) == target)
flag = ;
return;
}
for(int i=; i<len; i++) {
if(!visited[i]) {
ans[depth] = str[i];
visited[i] = ;
dfs(str, target, ans, depth+, len);
if(flag)
return;
visited[i] = ;
}
}
} int main()
{
int target;
char ans[], str[];
while(scanf("%d %s", &target, str)!=EOF && !(target== && strcmp(str, "END")==)) {
memset(visited, , sizeof(visited));
qsort(str, strlen(str), sizeof(char), cmp);
flag = ;
dfs(str, target, ans, , strlen(str));
if(flag){
ans[] = '\0';
puts(ans);
} else {
puts("no solution");
}
}
return ;
}
参考博客:CSDN Kizuki
转载请注明出处:http://www.cnblogs.com/michaelwong/p/4315092.html
Safecracker的更多相关文章
- Safecracker 分类: HDU 搜索 2015-06-25 21:12 12人阅读 评论(0) 收藏
Safecracker Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- ZOJ 1403&&HDU 1015 Safecracker【暴力】
Safecracker Time Limit: 2 Seconds Memory Limit: 65536 KB === Op tech briefing, 2002/11/02 06:42 ...
- hdu1015 Safecracker (暴力枚举)
http://acm.hdu.edu.cn/showproblem.php?pid=1015 Safecracker Time Limit: 2000/1000 MS (Java/Others) ...
- HDOJ(HDU).1015 Safecracker (DFS)
HDOJ(HDU).1015 Safecracker [从零开始DFS(2)] 从零开始DFS HDOJ.1342 Lotto [从零开始DFS(0)] - DFS思想与框架/双重DFS HDOJ.1 ...
- HDU 1015 Safecracker【数值型DFS】
Safecracker Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- HDU 1015 Safecracker(第一次用了搜索去遍历超时,第二次用for循环能够了,思路一样的)
Safecracker Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total S ...
- 暴力 ZOJ 1403 Safecracker
题目传送门 /* 暴力:纯暴力,在家水水 */ #include <cstdio> #include <cstring> #include <algorithm> ...
- HDU 1015.Safecracker【暴力枚举】【8月17】
Safecracker Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is lo ...
- hdu - 1010 Tempter of the Bone (dfs+奇偶性剪枝) && hdu-1015 Safecracker(简单搜索)
http://acm.hdu.edu.cn/showproblem.php?pid=1010 这题就是问能不能在t时刻走到门口,不能用bfs的原因大概是可能不一定是最短路路径吧. 但是这题要过除了细心 ...
- [HDOJ1015]Safecracker(DFS, 组合数学)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1015 这都能过…… #include <algorithm> #include <i ...
随机推荐
- XML为数据库进行增删改查(实例)
//增删改查文件 package xml2; import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.Fi ...
- 各种浏览器的agent信息(IE Chrome Safari Firefox)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.73 Safari/53 ...
- 用Python设计第一个游戏 - 零基础入门学习Python002
用Python设计第一个游戏 让编程改变世界 Change the world by program 有些鱼油可能会说,哇,小甲鱼你开玩笑呐!这这这这就上游戏啦?你不打算给我们讲讲变量,分支,循环,条 ...
- 梯田(dfs)
梯田 Time Limit: 2000 ms Memory Limit: 256 MBTotal Submission: 26 Submission Accepted: 5 Descrip ...
- [XMPP]iOS聊天软件学习笔记[二]
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...
- secureCRT使用VIM 像LINUX中那样对语法高亮
1.在SecureCRT中 secureCRT使用VIM时对语法高亮 其实不是secureCRT的功能,而是VIM的 设置:Options ->Session Options -> Ter ...
- Unix/Linux环境C编程入门教程(38) shell命令进阶演示
1.w命令 该命令也可以查看登录当前系统的用户信息.与who命令相比,w命令的功能更强大,它不但可以显示当前有哪些用户登录到系统,还可以显示这些用户正在进行的操作,并给出更加详细和科学的统计数据 ...
- CXF之webservice
使用 CXF 做 webservice 简单例子 Apache CXF 是一个开放源代码框架,提供了用于方便地构建和开发 Web 服务的可靠基础架构.它允许创建高性能和可扩展的服务,您可以将这 ...
- 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.3
/** * 百度地图使用工具类-v1.5 * * @author boonya * @date 2013-7-7 * @address Chengdu,Sichuan,China * @email b ...
- UESTC_秋实大哥与家 2015 UESTC Training for Data Structures<Problem E>
E - 秋实大哥与家 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submi ...