fork download
  1. use strict ;
  2. use warnings ;
  3.  
  4. my @umban = qw(14 15 2 5 9 12 16 3 8 6 10 13 4 11 7 1) ;
  5. my @tyaku = qw(1 16 10 2 8 4 6 3 9 7 15 14 13 11 5 12) ;
  6. my $corn3 = "(2,*15,14,5)(9,12,16)(8,3,6)-(10,13)(11,4)(7,1)" ;
  7. my $kanse = "(10,*16,1,2)(8,4,6)(9,3,7)-(15,14)(11,13)(5,12)" ;#check
  8.  
  9.  
  10. my $dummy = $corn3 ;
  11. $dummy =~ s/\d?\d/N/g ;
  12. my @div = split /N/ , $dummy ;
  13.  
  14. $dummy = $corn3 ;
  15. $dummy =~ s/\)\-?\(/,/g ;
  16. $dummy =~ s/\*|\(|\)//g ;
  17. my @corn3 = split /,/, $dummy ;
  18.  
  19. my %hash ;#馬番-着順
  20. @hash{@umban} = @tyaku ;
  21.  
  22. @corn3 = map{$hash{$_}} @corn3 ;
  23. push @corn3, "" ;
  24. my $c3_new = "" ;
  25. for (my $i=0; $i<=$#div; $i++){
  26. $c3_new .= "$div[$i]$corn3[$i]" ;
  27. }
  28.  
  29.  
  30. print "馬番:$corn3\n" ;#check
  31. print "完成:$kanse\n" ;#check
  32. print "置換:$c3_new\n" ;#check
  33.  
Success #stdin #stdout 0s 4724KB
stdin
Standard input is empty
stdout
馬番:(2,*15,14,5)(9,12,16)(8,3,6)-(10,13)(11,4)(7,1)
完成:(10,*16,1,2)(8,4,6)(9,3,7)-(15,14)(11,13)(5,12)
置換:(10,*16,1,2)(8,4,6)(9,3,7)-(15,14)(11,13)(5,12)