免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Crisewng

Perl 在国内到底有没有出路 [复制链接]

论坛徽章:
11
子鼠
日期:2014-10-11 16:46:4815-16赛季CBA联赛之山东
日期:2017-11-10 14:32:142016科比退役纪念章
日期:2017-09-02 15:42:4715-16赛季CBA联赛之佛山
日期:2017-08-28 17:11:5515-16赛季CBA联赛之浙江
日期:2017-08-24 16:55:1715-16赛季CBA联赛之青岛
日期:2017-08-17 19:55:2415-16赛季CBA联赛之天津
日期:2017-06-29 10:34:4315-16赛季CBA联赛之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亚冠之萨济拖拉机
日期:2015-05-22 11:38:532016科比退役纪念章
日期:2018-03-16 10:24:05
发表于 2017-09-11 22:00 |显示全部楼层
本帖最后由 523066680 于 2017-09-11 22:02 编辑

回复 48# sunzhiguolu

生成数独,内容完全随机,来一个? 解数独也准备开搞

  1. =info
  2.     523066680
  3.     2017-09
  4. =cut

  5. use IO::Handle;
  6. STDOUT->autoflush(1);

  7. my $main = 0;
  8. my $bad = 0;

  9. AGAIN:
  10. our %hash;
  11. grep { $hash{$_} = 1 } (1..9);
  12. @nums = (1..9);

  13. our $mat =
  14.     [
  15.                 #[ 1,2,3,4,5,6,7,8,9 ],
  16.                 [map { splice @nums, int(rand($#nums+1)), 1 } (1..9)],
  17.         [],[],[],[],[],[],[],[]
  18.     ];

  19. my $nextline;
  20. for my $line ( 1 .. 8 )
  21. {
  22.     $nextline = undef;

  23.     func( $line, 0, \$nextline );
  24.     if ( not defined $nextline )
  25.     {
  26.             $bad++;
  27.         print "not ok\n";
  28.     }

  29.     $mat->[$line] = [ split("", $nextline) ];
  30. }

  31. for my $idx ( 0..$#$mat )
  32. {
  33.     printf "%s\n", join(",", @{$mat->[$idx]} );
  34. }

  35. print "\n";
  36. goto AGAIN if ($main++ < 1000);
  37. printf "bad: %d\n", $bad;

  38. sub func
  39. {
  40.     our @all;
  41.     our $mat;
  42.     our %hash;
  43.     my ( $curr, $lv, $ref ) = @_;

  44.     if ($lv > 8)
  45.     {        
  46.         #如果当前行是第五行或者第八行,预判下一行是否无解
  47.         if ( $curr == 4 or $curr == 7)
  48.         {
  49.                 if ( try_next_line( $curr ) == 0 )
  50.                 {
  51.                         return 0;
  52.                 }
  53.                 else
  54.                 {
  55.                         $ref = join("", @{$mat->[$curr]});
  56.                         return 1;
  57.                 }
  58.             }
  59.             else
  60.             {
  61.                     $ref = join("", @{$mat->[$curr]});
  62.                 return 1;
  63.             }
  64.     }

  65.     my @out;
  66.     my %dupl;

  67.     if ( $curr % 3 == 1 )  # 1 2  4 5  7 8
  68.     {
  69.         if    ( $lv < 3 ) { @out = @{$mat->[$curr-1]}[0..2]; }
  70.         elsif ( $lv < 6 ) { @out = @{$mat->[$curr-1]}[3..5]; }
  71.         else              { @out = @{$mat->[$curr-1]}[6..8]; }
  72.     }
  73.     elsif ( $curr % 3 == 2 )
  74.     {
  75.         if    ( $lv < 3 ) { @out = (@{$mat->[$curr-1]}[0..2], @{$mat->[$curr-2]}[0..2]) }
  76.         elsif ( $lv < 6 ) { @out = (@{$mat->[$curr-1]}[3..5], @{$mat->[$curr-2]}[3..5]) }
  77.         else              { @out = (@{$mat->[$curr-1]}[6..8], @{$mat->[$curr-2]}[6..8]) }
  78.     }

  79.     if ($curr >= 3)
  80.     {
  81.         push @out, map { $mat->[$_][$lv] } ( 0 .. 3*int($curr/3) - 1 );
  82.     }
  83.    
  84.     push @out, @{$mat->[$curr]}[ 0 .. $lv-1 ];

  85.     %dupl = %hash;
  86.     grep { delete $dupl{$_} } @out;

  87.     my $res = 0;
  88.     for my $e ( keys %dupl )
  89.     {
  90.         $mat->[$curr][$lv] = $e;
  91.         $res = func($curr, $lv+1, $ref);

  92.         last if ($res == 1);
  93.     }

  94.     return $res;
  95. }

  96. sub try_next_line
  97. {
  98.         my ($row) = shift;
  99.     my $nextline = undef;
  100.     func( $row+1, 0, \$nextline );
  101.     if ( not defined $nextline )
  102.     {
  103.         return 0;
  104.     }
  105.     else
  106.     {
  107.             return 1;
  108.     }
  109. }
复制代码
  1. 1,5,8,2,3,9,6,4,7
  2. 2,7,3,1,6,4,8,5,9
  3. 4,6,9,5,8,7,2,3,1
  4. 3,2,7,6,1,5,4,9,8
  5. 9,4,1,8,7,3,5,6,2
  6. 5,8,6,9,4,2,7,1,3
  7. 6,9,5,3,2,8,1,7,4
  8. 7,1,2,4,9,6,3,8,5
  9. 8,3,4,7,5,1,9,2,6

  10. 6,7,4,8,2,1,9,3,5
  11. 9,3,8,5,4,7,6,1,2
  12. 1,2,5,3,6,9,7,4,8
  13. 3,6,1,7,9,5,2,8,4
  14. 4,5,7,1,8,2,3,6,9
  15. 2,8,9,4,3,6,1,5,7
  16. 7,4,2,6,1,8,5,9,3
  17. 5,1,3,9,7,4,8,2,6
  18. 8,9,6,2,5,3,4,7,1

  19. 4,1,5,3,7,8,9,6,2
  20. 7,9,6,5,4,2,1,3,8
  21. 3,8,2,9,1,6,4,5,7
  22. 9,2,3,8,5,4,6,7,1
  23. 6,5,4,7,9,1,8,2,3
  24. 1,7,8,6,2,3,5,9,4
  25. 2,3,1,4,6,9,7,8,5
  26. 8,6,7,1,3,5,2,4,9
  27. 5,4,9,2,8,7,3,1,6

  28. 4,5,9,6,8,7,2,1,3
  29. 6,2,7,4,1,3,9,5,8
  30. 1,3,8,2,9,5,4,6,7
  31. 3,7,2,1,5,4,8,9,6
  32. 9,6,4,7,2,8,1,3,5
  33. 5,8,1,3,6,9,7,4,2
  34. 2,1,3,8,4,6,5,7,9
  35. 7,4,5,9,3,2,6,8,1
  36. 8,9,6,5,7,1,3,2,4

  37. 9,6,5,7,4,8,1,3,2
  38. 1,2,4,5,3,9,8,6,7
  39. 3,7,8,2,6,1,9,5,4
  40. 2,4,6,9,1,3,5,7,8
  41. 7,1,9,6,8,5,4,2,3
  42. 8,5,3,4,2,7,6,1,9
  43. 5,8,2,1,7,4,3,9,6
  44. 4,9,7,3,5,6,2,8,1
  45. 6,3,1,8,9,2,7,4,5

  46. 5,1,8,2,9,7,3,6,4
  47. 2,7,6,4,5,3,9,1,8
  48. 9,3,4,6,1,8,5,2,7
  49. 4,8,9,1,2,6,7,5,3
  50. 1,6,3,9,7,5,8,4,2
  51. 7,2,5,3,8,4,6,9,1
  52. 8,5,1,7,4,9,2,3,6
  53. 3,4,7,5,6,2,1,8,9
  54. 6,9,2,8,3,1,4,7,5

  55. 3,2,7,1,9,8,6,4,5
  56. 5,4,1,2,7,6,9,8,3
  57. 6,8,9,4,3,5,7,2,1
  58. 1,5,2,8,4,7,3,9,6
  59. 4,9,8,6,1,3,2,5,7
  60. 7,3,6,9,5,2,8,1,4
  61. 8,6,4,3,2,1,5,7,9
  62. 2,1,5,7,6,9,4,3,8
  63. 9,7,3,5,8,4,1,6,2

  64. 1,4,7,9,5,2,6,8,3
  65. 2,9,5,6,3,8,1,7,4
  66. 3,6,8,4,1,7,2,5,9
  67. 8,2,4,3,6,9,5,1,7
  68. 6,3,1,2,7,5,4,9,8
  69. 5,7,9,1,8,4,3,2,6
  70. 4,1,2,7,9,3,8,6,5
  71. 9,5,3,8,2,6,7,4,1
  72. 7,8,6,5,4,1,9,3,2

  73. 1,8,2,4,9,7,5,3,6
  74. 6,4,9,2,3,5,7,8,1
  75. 3,7,5,1,6,8,2,9,4
  76. 9,6,3,7,1,4,8,5,2
  77. 4,5,1,8,2,9,3,6,7
  78. 7,2,8,3,5,6,1,4,9
  79. 8,1,6,5,4,2,9,7,3
  80. 5,3,4,9,7,1,6,2,8
  81. 2,9,7,6,8,3,4,1,5

  82. 5,8,7,1,9,6,2,4,3
  83. 1,3,4,2,7,5,8,9,6
  84. 9,6,2,8,3,4,1,5,7
  85. 3,1,6,4,5,2,9,7,8
  86. 2,9,8,7,1,3,4,6,5
  87. 7,4,5,6,8,9,3,1,2
  88. 8,5,9,3,4,7,6,2,1
  89. 4,2,1,5,6,8,7,3,9
  90. 6,7,3,9,2,1,5,8,4
复制代码



论坛徽章:
11
子鼠
日期:2014-10-11 16:46:4815-16赛季CBA联赛之山东
日期:2017-11-10 14:32:142016科比退役纪念章
日期:2017-09-02 15:42:4715-16赛季CBA联赛之佛山
日期:2017-08-28 17:11:5515-16赛季CBA联赛之浙江
日期:2017-08-24 16:55:1715-16赛季CBA联赛之青岛
日期:2017-08-17 19:55:2415-16赛季CBA联赛之天津
日期:2017-06-29 10:34:4315-16赛季CBA联赛之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亚冠之萨济拖拉机
日期:2015-05-22 11:38:532016科比退役纪念章
日期:2018-03-16 10:24:05
发表于 2017-09-11 22:01 |显示全部楼层
回复 49# sunzhiguolu

人品,这么多帖子下来,我提过你家谁?呵呵

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2017-09-11 22:03 |显示全部楼层
本帖最后由 sunzhiguolu 于 2017-09-11 22:05 编辑

说是你爱找借口 (抱歉)






论坛徽章:
11
子鼠
日期:2014-10-11 16:46:4815-16赛季CBA联赛之山东
日期:2017-11-10 14:32:142016科比退役纪念章
日期:2017-09-02 15:42:4715-16赛季CBA联赛之佛山
日期:2017-08-28 17:11:5515-16赛季CBA联赛之浙江
日期:2017-08-24 16:55:1715-16赛季CBA联赛之青岛
日期:2017-08-17 19:55:2415-16赛季CBA联赛之天津
日期:2017-06-29 10:34:4315-16赛季CBA联赛之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亚冠之萨济拖拉机
日期:2015-05-22 11:38:532016科比退役纪念章
日期:2018-03-16 10:24:05
发表于 2017-09-11 22:32 |显示全部楼层
本帖最后由 523066680 于 2017-09-11 22:33 编辑

回复 52# sunzhiguolu

解数独题,我写了照样发上来。就明天这个时候(之前),你行?

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2017-09-11 22:37 |显示全部楼层
回复 50# 523066680
你想发布数独代码也不必用这个形式搞吧,单独发个帖子多好。
另外,我想对你说
你若编写代码能力强,回帖质量高 我自然尊敬你
若是吹牛皮,损人的磕 其实我一点都不会输给你,只会比你更强。。。

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2017-09-11 22:41 |显示全部楼层
回复 53# 523066680
我记得解数独的话,应该分至少三个等级。(简单,中等,困难)
另外,数独自解的话 别忘了提供难度提示。最后要看下效能了,不知你行不行?

论坛徽章:
11
子鼠
日期:2014-10-11 16:46:4815-16赛季CBA联赛之山东
日期:2017-11-10 14:32:142016科比退役纪念章
日期:2017-09-02 15:42:4715-16赛季CBA联赛之佛山
日期:2017-08-28 17:11:5515-16赛季CBA联赛之浙江
日期:2017-08-24 16:55:1715-16赛季CBA联赛之青岛
日期:2017-08-17 19:55:2415-16赛季CBA联赛之天津
日期:2017-06-29 10:34:4315-16赛季CBA联赛之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亚冠之萨济拖拉机
日期:2015-05-22 11:38:532016科比退役纪念章
日期:2018-03-16 10:24:05
发表于 2017-09-11 23:26 |显示全部楼层
本帖最后由 523066680 于 2017-09-11 23:34 编辑

回复 55# sunzhiguolu

那也比你行。现在再看看这几句,这水平这见识,呵呵:
很好?
用 cmd 找找看哪些一周以前 尺寸在 1mb ~ 2mb 之前的图片有哪些?
将结果按照尺寸大小降序排序 尺寸一样的按照文件名升序排序。试试看?


论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2017-09-11 23:34 |显示全部楼层
回复 56# 523066680

你就吹牛逼行,看下你哪个 cmd 时间筛选 结果排序弄哪去了?
赶明改行吧,专门从事吹牛逼行业。

论坛徽章:
11
子鼠
日期:2014-10-11 16:46:4815-16赛季CBA联赛之山东
日期:2017-11-10 14:32:142016科比退役纪念章
日期:2017-09-02 15:42:4715-16赛季CBA联赛之佛山
日期:2017-08-28 17:11:5515-16赛季CBA联赛之浙江
日期:2017-08-24 16:55:1715-16赛季CBA联赛之青岛
日期:2017-08-17 19:55:2415-16赛季CBA联赛之天津
日期:2017-06-29 10:34:4315-16赛季CBA联赛之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亚冠之萨济拖拉机
日期:2015-05-22 11:38:532016科比退役纪念章
日期:2018-03-16 10:24:05
发表于 2017-09-11 23:36 |显示全部楼层
本帖最后由 523066680 于 2017-09-11 23:39 编辑

回复 57# sunzhiguolu

改什么行,我现在就是从事外贸,业余才写代码,那也比你强,哈哈

用不着你尊敬,我就是觉得你水平挺low的,比我low

论坛徽章:
307
程序设计版块每周发帖之星
日期:2016-04-08 00:41:33操作系统版块每日发帖之星
日期:2015-09-02 06:20:00每日论坛发贴之星
日期:2015-09-02 06:20:00程序设计版块每日发帖之星
日期:2015-09-04 06:20:00每日论坛发贴之星
日期:2015-09-04 06:20:00每周论坛发贴之星
日期:2015-09-06 22:22:00程序设计版块每日发帖之星
日期:2015-09-09 06:20:00程序设计版块每日发帖之星
日期:2015-09-19 06:20:00程序设计版块每日发帖之星
日期:2015-09-20 06:20:00每日论坛发贴之星
日期:2015-09-20 06:20:00程序设计版块每日发帖之星
日期:2015-09-22 06:20:00程序设计版块每日发帖之星
日期:2015-09-24 06:20:00
发表于 2017-09-11 23:39 |显示全部楼层
回复 58# 523066680

你在外贸行业屈才了,吹牛逼行业适合你。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

数据风云,十年变迁
DTCC 第十届中国数据库技术大会已启航!

2019年5月8日~5月10日,由IT168旗下ITPUB企业社区平台主办的第十届中国数据库技术大会(DTCC2019),将在北京隆重召开。大会将邀请百余位行业专家,就热点技术话题进行分享,是广大数据领域从业人士的又一次年度盛会和交流平台。与SACC2018类似,本届大会将采用“3+2”模式:3天传统技术演讲+2天深度主题培训。大会不仅提供超100场的主题演讲,还会提供连续2天的深度课程培训,深化数据领域的项目落地实践方案。
DTCC2019,一场值得期待的数据技术盛会,殷切地希望您报名参与!

活动入口>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP