免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2422 | 回复: 7
打印 上一主题 下一主题

怎麼做到bruteforce 的效果? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-11 16:21 |只看该作者 |倒序浏览
怎麼做到bruteforce 的效果?
意思是說..
排了1個array
@dic[0..26]='A'..'Z';
@dic[27..52]='a'..'z';
@dic[53..63]=0..9;

之後
$l=0;
while($l<100){
print $dic[$l];
$l++;
}

出了 ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789
就停了...因為$dic[64]不存在.....
那怎麼可以叫他繼續排下去......
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789....
AAABACADAEAFAGAHAIAJAKALAMAN..........................................90919293949596979899
這樣呢.....><

论坛徽章:
0
2 [报告]
发表于 2008-02-11 20:34 |只看该作者
双循环
拿$|做甚

论坛徽章:
0
3 [报告]
发表于 2008-02-11 21:54 |只看该作者
但如果長度是未定呢..
會做到... AAAA............ZZZZ  這樣

论坛徽章:
0
4 [报告]
发表于 2008-02-11 22:01 |只看该作者
递归

论坛徽章:
0
5 [报告]
发表于 2008-02-12 14:27 |只看该作者
要怎寫呢><

论坛徽章:
0
6 [报告]
发表于 2008-02-12 22:30 |只看该作者
my @dict = ('A'..'E');
GenDict(\@dict, 1, 3, 5, '');

sub GenDict {
&nbsp;&nbsp;&nbsp;&nbsp;my ($list, $pos_begin, $pos_end, $width, $base_str) = @_;
&nbsp;&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;if (0 == $width) {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;print "$base_str\n";
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return;
&nbsp;&nbsp;&nbsp;&nbsp;}
&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp;for ($pos_begin .. $pos_end) {
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GenDict($list, $pos_begin, $pos_end, $width - 1, $base_str . $list->[$_]);
&nbsp;&nbsp;&nbsp;&nbsp;}
}


要全在一行的话就去掉\n

论坛徽章:
0
7 [报告]
发表于 2008-02-13 13:30 |只看该作者
原帖由 windhamwong 于 2008-2-11 21:54 发表
但如果長度是未定呢..
會做到... AAAA............ZZZZ  這樣

@d=('A'..'Z','a'..'z',0..9);
$n=3;
map {eval join"",((map{"for(\$t[$_]=0;\$t[$_]<scalar \@d;\$t[$_]++){"}(0..$_-1)),"push \@r,\"",join("",(map{"\$d[\$t[$_]]"}(0..$_-1))),"\"",(map{"}"}(0..$_-1)));}(1..$n);
print join "\n",@r;


另外,A-Z是0-25

论坛徽章:
0
8 [报告]
发表于 2008-02-13 19:38 |只看该作者
感謝 Lonki  的方法^^
正在研究..
orangetouch  的 好像有點複雜
但也感謝^^
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP