Please Disable Ad-Block To View This Website.

If you block ads, this site can not survive!

Ads are very minimal for registered users. If you don't have an account please register now!

DOWNLOAD
 Full Scripts
 Addons
 Snippets
 DLLs
 MTS Themes
 Tutorials
 Misc.
 File Queue
 Download mIRC
INTERACT
 Screenshots
 Challenge
 Top Downloads
 Submit Form
 Forums

SEARCH
Site Search

FRIENDS
Link to us!
PhotoShelf

Top Challenge Entrants

  # User Points
  1 jaytea 587
  2 [Znork] 303
  3 urza 297
  4 Ag2X 288
  5 dr_Eamer 255
  6 Albie 199
  7 Chessnut 197
  8 A Noniem 194
  9 zzattack 186
  10 Kol 185
  11 m910q 168
  12 Sephiroth 115
  13 Auron956 114
  14 patje 114
  15 chid 110
  16 Ohad2121 92
  17 SkorpSSS 87
  18 DixrouE 84
  19 Suchorski 83
  20 ^Vampire^ 74
Challenge:Smallest $redist
Start:August 24th 2009
End:August 29th 2009

Results

Well my first mircscripts.org challenge has come to an end and I think it's gone pretty smoothly! Some of you might not have been used to my 'different' specifications but you all adapted quite well and there was a pretty good turnout in the end.

There was a total of 28 non-regex entries and 8 regex entries.

Most of the methods were similar in this challenge... the real challenge was shortening this method as much as possible. jaytea succeeded in getting the shortest non-regex with a combination of the use of his supporting alias and the v1 & v2 statement to loop through ASC values 96-255.

For regex, Patje came in and destroyed all competition with his brilliant one-liner first 'expanding' all items and subsequently 'contracting' them. Great jobs to both of you!


Winner! jaytea (150 bytes)
i inc % $+ $asc($1) $mid($1,2)
redist {
  i $*
  %1 = 97
  while %1 & 96 {
    while $1 < $(,% $+ %1) || $v2 {
      var %2 %2 $chr(%1) $+ $v1
      dec % $+ %1 $v1
    }
    i 
  }
  return %2
}


Winner! Patje (126 bytes)
redist return $regsubex($sorttok($regsubex($2-,/(.)(\d*)/g,$str(\1,\2)),2),/((.)\2{0, $+ $(},$1) $+ })/Sg,$chr(32)\2$len(\1))


Non regex entries

Top entries:

1 jaytea 150 bytes
i inc % $+ $asc($1) $mid($1,2)
redist {
  i $*
  %1 = 97
  while %1 & 96 {
    while $1 < $(,% $+ %1) || $v2 {
      var %2 %2 $chr(%1) $+ $v1
      dec % $+ %1 $v1
    }
    i 
  }
  return %2
}
2 Kol 153 bytes
redist {
  z $*
  %a = 96
  while %a & 32 {
    while $1 < $(,% $+ %a) || $v2 {
      var %r %r $chr(%a) $+ $v1
      dec % $+ %a $v1
    }
    inc %a
  }
  return %r
}
z inc % $+ $asc($1) $mid($1,2)
3 patje 155 bytes
redist {
  unset %*
  a $*
  a 97
  while %2 < 123 {
    while $1 < $(,% $+ %2) || $v2 {
      %r = %r $chr(%2) $+ $v1
      dec % $+ %2 $v1
    }
    a 
  }
  return %r
}
a inc % $+ $asc($1) $mid($1,2)
4 m910q 156 bytes
redist {
  %r =
  %i = 90
  while %i {
    %t = $calc($sorttok($replace($2-,$chr(%i),+),32))
    while $iif(%t > $1,$1,%t) {
      %r = %r $chr(%i) $+ $v1
      dec %t $v1
    }
    dec %i
  }
  return %r
}
5 zzattack 159 bytes
x inc % $+ $left($1,1) $mid($1-,2)
redist {
  x $*
  x .97
  while $chr(%.) {
    %_ = $v1
    while $iif($(,% $+ %_) > $1,$1,$v1) {
      var %@ %@ %_ $+ $v1
      x %_ - $+ $v1
    }
    x .
  }
  return %@
}
Srankie 159 bytes
redist {
  _ $*
  _ @97
  while $chr(%@) {
    %+ = $v1
    while $iif($(,% $+ %+) > $1,$1,$v1) {
      var %( %( %+ $+ $v1
      _ %+ - $+ $v1
    }
    _ @
  }
  return %(
}
_ inc % $+ $left($1,1) $mid($1-,2)
6 urza 165 bytes
+ inc % $+ $asc($1) $mid($1,2) 
r if ($1) %r = %r $chr(%1) $+ $1
redist {
  unsetall
  + $*
  + 97
  while %1 < 123 {
    while $(,% $+ %1) > $1 {
      r $1
      dec % $+ %1 $1
    }
    r $v1
    + 
  }
  return %r
}
7 A Noniem 171 bytes
r inc % $+ $left($1,1) $mid($1,2)
redist {
  r $*
  %@ = 97
  while $chr(%@) {
    %% = $v1
    while $(,% $+ %%) {
      %! = $iif($v1 > $1,$1,$v1)
      var %^ %^ %% $+ %!
      dec % $+ %% %!
    }
    inc %@
  }
  return %^
}
8 [Znork] 174 bytes
redist {
  b $2-
  %ø =
  while $hget(r,1).item {
    %v = $v1
    $iif($hget(r,%v) > $1,hdec,hdel) r %v $1
    %ø = %ø %v $+ $iif($v1 < $1,$v1,$1)
  }
  return %ø
}
b a $*
a hinc -m r $left($1,1) $mid($1,2)
9 Ohad2121 178 bytes
a %u = %u $str($left($1,1),$mid($1,2))
redist {
  %u =
  a $*
  %z = 97
  while $chr(%z) {
    %t = $count(%u,$v1)
    while %t > 0 {
      var %p %p $chr(%z) $+ $iif(%t > $1,$1,%t)
      dec %t $1
    }
    inc %z
  }
  return %p
}
10 dr_Eamer 186 bytes
q {
  if $1 {
    %r = %r %% $+ $1
    hdec r %% $1
  }
}
redist {
  %r =
  while $2 {
    %% = $left($2,1)
    hinc -m r %% $mid($2,2)
    while $hget(r,%%) > $1 q $1
    if %% !isin $3- q $hget(r,%%)
    tokenize 32 $1 $3-
  }
  return %r
}
11 Ag2X 189 bytes
redist {
  hfree -w ¤
  ¤ $*
  var %r,%n 122,%t
  while %n > 96 {
    %t = $chr(%n)
    while $hget(¤,%t) > 0 {
      %r = $+(%t,$iif($v1 > $1,$1,$v1)) %r
      hdec ¤ %t $1
    }
    dec %n
  }
  return %r
}
¤ hinc -m ¤ $left($1,1) $mid($1,2)
12 jos 191 bytes
redist {
  %€ =
  %~ = $1
  while $sorttok($2-,32) {
    tokenize 32 $left($v1,1) $deltok($v1,1,32)
    inc %c $mid($v1,2)
    while $1 != $left($2,1) && $iif(%c > %~,%~,$v1) {
      %€ = %€ $1 $+ $v1
      dec %c $v1
    }
  }
  return %€
}
13 Jigsy 196 bytes
a hinc -m t $left($1,1) $mid($1,2)
redist {
  %0 = $1
  %2 =
  tokenize 32 $2-
  a $*
  while $hget(t,1).item {
    %3 = $v1
    %4 = $hget(t,%3)
    hdel t %3
    while %4 > 0 {
      %2 = %2 %3 $+ $iif(%4 > %0,%0,%4)
      dec %4 %0
    }
  }
  return %2
}
14 ^Vampire^ 202 bytes
redist {
  %o =
  y $*
  %i = 65
  while %i < 91 {
    %c = $chr(%i)
    %l = $count(%o,%c)
    var %s %s $iif($calc(%l % $1),%c $+ $v1) $str(%c $+ $1 $chr(32),$calc(%l /$1))
    inc %i
  }
  return %s
}
y %o = %o $str($left($1,1),$mid($1,2))
15 chid 206 bytes
redist {
  %. = 2
  while $(,$ $+ %.) {
    inc % $+ $left($v1,1) $mid($v1,2)
    inc %.
  }
  %/ = 65
  while %/ < 91 {
    %0 = $chr(%/)
    while $(,% $+ %0) {   
      %. = $iif($1 < $v1,$1,$v2)
      var %# %# %0 $+ %.
      dec $(% $+ %0) %.
    }
    inc %/
  }
  return %# 
}

16 GWeizman 209 bytes
redist {
  var %x 65
  while %x < 91 {
    var %y 1,%c $chr(%x),%z 0
    while $matchtok($2-,%c,%y,32) {
      inc %z $mid($v1,2)
      inc %y
    }
    var %p %p $str($+(%c,$1,$chr(32)),$calc(%z /$1)) $iif($calc(%z % $1),%c $+ $v1)
    inc %x
  }
  return %p
}
17 Albie 210 bytes
x if 1 \\ $1 inc % $+ $left($1,1) $mid($1,2)
redist {
  x $*
  while $var(%?,1) {
    var %le $chr(32) $mid($v1,2),%re %re $str(%le $+ $1,$calc($($v1,2)/$1)) $iif($calc($($v1,2)% $1),%le $+ $v1)
    unset $var(%?,1)
  }
  return %re
}
18 Sephiroth 212 bytes
redist {
  %op =
  þ $2-
  while $var(%?,1) {
    %ch = $mid($v1,2)
    %op = %op $remove($str(%ch $+ $1 ',$int($calc($($v1,2)/$1))) %ch $+ $calc($($v1,2)% $1),%ch $+ 0,')
    unset $v1
  }
  return %op
}
ý inc % $+ $left($1,1) $mid($1,2)
þ ý $*
19 poiuy_qwert 220 bytes
redist {
  while $2 {
    hinc -m ~ $left($2,1) $right($2,-1)
    tokenize 32 $1 $3-
  }
  while $hget(~,1).item {
    var %i $v1,%v = $hget(~,%i),%r = %r $str($+(%i,$1,$chr(32)),$calc(%v /$1)) $iif($calc(%v % $1),%i $+ $v1)
    hdel ~ %i
  }
  return %r
}
20 Suchorski 236 bytes
redist {
  while $0 != 1 {
    %% = $(,$+($,$0))
    hinc -m X $left(%%,1) $mid(%%,2)
    tokenize 32 $(,$+($,1-,$calc($0 -1)))
  }
  while $hfind(X,*,1,w) {
    %. = $v1
    while $hget(X,%.) > 0 {
      var %$ = %$ %. $+ $iif($v1 > $1,$1,$v1)
      hdec X %. $1
    }
    hdel X %.
  }
  return %$
}
21 DixrouE 254 bytes +6 bytes for being in remotes
alias redist {
  unset %*
  %i = 1
  while $token($2-,%i,32) {
    inc %. $+ $left($v1,1) $mid($v1,2)
    inc %i
  }  
  %n = 1
  while $var(%.*,%n) {
    var %z $mid($v1,3),%y $v1,%j 1
    while %j <= $calc(%y /$1) {
      %r = %r %z $+ $1
      inc %j
    }
    if ($calc(%y % $1)) %r = %r %z $+ $v1

    inc %n
  }
  return %r
}
22 SkorpSSS 258 bytes +6 bytes for being in remotes
alias redist {
  hmake t 1
  %d = $1
  while $2 { 
    hinc t $left($2,1) $right($2,-1)
    tokenize 32 $2-
  }
  while $hget(t,1).item {
    var %l $v1,%n $hget(t,%l),%q $int($calc(%n /%d)),%s $calc(%n -%q *%d),%r %r $str(%l $+ %d $chr(32),%q) $iif(%s,%l $+ %s)
    hdel t %l
  }
  hfree t
  return %r
}
Koolvin 258 bytes
redist {
  var %m $1,%i 2,%e 1
  while $($ $+ %i,2) {
    var %l $left($v1,1),%a $right($v1,-1)
    hinc -m r %l %a
    inc %i
  }
  while $hfind(r,*,%e,w) {
    var %v $v1,%c $hget(r,%v)
    while %c > %m {
      var %h %h %v $+ %m,%c $calc(%c - %m)
    }
    var %h %h $iif(%c,%v $+ %c)
    inc %e
  }
  hfree r
  return %h
}
23 Kylar 294 bytes
redist {
  var %b $sorttok($2-,32),%i 1
  while $left($gettok(%b,%i,32),1) {
    var %j %i
    while ($v1 == $left($gettok(%b,%j,32),1)) inc %j
    var %v $v1,%c $calc($replace($gettok(%b,%i $+ - $+ $calc(%j -1),32),%v,+)),%r %r $iif($calc(%c % $1),%v $+ $v1) $str(%v $+ $1 $chr(32),$calc(%c / $1)),%i %j
  }
  return %r
}


Invalid entries:

Daveoh 249 bytes $redist(4,x3,x3,x3) returned x1 x1 x4 x4 x4 x4 instead of x4 x4 x1
redist {
  unsetall
  %i1 = 1
  while $gettok($2-,%i1,32) {
    inc % $+ $left($v1,1) $mid($v1,2)
    inc %i1
  }
  %i1 = 1
  while $var(%?,%i1) {
    %v1 = $v1
    %m = $mid(%v1,2)
    %re = %re $str($+(%m,$1,$chr(32)),$calc($(,%v1)/$1)) $iif($calc($(,%v1)% $1),%m $+ $v1)
    inc %i1
  }
  return %re
}
jAck^^ 312 bytes $redist(111,m145,z54,m195,m12,z64) returned m111 m111 m111 m111 m19 m96 z111 z64 z7 instead of m111 m111 m111 m19 z111 z7
alias redist {
  var %- $0,%<
  while %- > 1 {
    var %l $left($($ $+ %-,2),1)
    var %n. $+ %l $calc(%n. [ $+ [ %l ] ] + $right($($ $+ %-,2),-1))
    if (%l != $left($($ $+ $calc(%- -1),2),1)) %< = $str($+(%l,$1,$chr(32)),$int($calc(%n. [ $+ [ %l ] ] / $1))) $iif($calc(%n. [ $+ [ %l ] ] % $1) == 0,,%l $+ $v1) %<
    dec %-
  }
  return %<
}
Natdhib 936 bytes $redist(111,m145,z54,m195,m12,z64) returned m111 m111 m111 m83 z54 instead of m111 m111 m111 m19 z111 z7
redist {
  var %Data1 = $Check($1,$2-)
  Return %Data1
}
Check {
  var %Ticks = 1
  var %Mains = $1
  var %Lines = $numtok($2-,32)
  var %Datas = $2-
  while (%Ticks <= %Lines) {
    var %Data0  = $gettok($2-,%Ticks,32)
    var %Data1  = $left(%Data0,1)
    var %Data2  = $right(%Data0,$calc($len(%Data0) - 1))
    var %Data3  = %Data3 %Data1
    var %Data5  = $findtok(%Data3,%Data1,1,32)
    var %Data6  = $findtok(%Data3,%Data1,0,32)
    var %Data9  = %Data9 $iif(%Data6 = 1,%Data1)
    var %Data11 = $replace($+($instok(%Data11,%Data2,%Data5,32),.),..,.)
    var %Data12 = $replace(%Data11,$+(.,$chr(32)),.,$chr(32),+)
    inc %Ticks
  }
  var %Ticks  = 1
  var %Data13 = $numtok(%Data12,46)
  while (%Ticks <= %Data13) {
    var %Data14 = %Data14 $ishappy($Calc($gettok(%Data12,%Ticks,46)),%Mains,$gettok(%Data9,%Ticks,32))
    inc %Ticks
  }
  Return %Data14
}
Ishappy {
  var %T = 1
  var %U = 1
  while (%T <= $1) {
    if (%U = $2) {
      var %Text = %Text $+($3,$2)
      var %U = 0
    }
    inc %T
    inc %U
  }
  dec %u
  var %Text = %Text $iif(%U != 0,$+($3,%u))
  return %Text
}



Regex entries

Top entries:

1 patje 126 bytes
redist return $regsubex($sorttok($regsubex($2-,/(.)(\d*)/g,$str(\1,\2)),2),/((.)\2{0, $+ $(},$1) $+ })/Sg,$chr(32)\2$len(\1))
2 jaytea 148 bytes
redist {
  %1 =
  while $chr(%1 1) {
    %2 = $calc($regsubex($2-,/ $v1 |\b\S+/gx,+))
    while $1 < %2 || %2 {
      var %3 %3 $chr(%1) $+ $v1
      dec %2 $v1
    }
    dec %1
  }
  return %3
}
3 Ohad2121 169 bytes
redist {
  %z = 97
  while $chr(%z) {
    %t = $count($regsubex($1-,/(\S)(\S*)/g,$str(\1,\2)),$v1)
    while %t > 0 {
      var %p %p $chr(%z) $+ $iif(%t > $1,$1,%t)
      dec %t $1
    }
    inc %z
  }
  return %p
}
4 Kylar 184 bytes
redist return $regsubex($sorttok($2-,32),/(.)(\d+( \1\d+)*)/g,$str(\1 $+ [ $1 $!chr(32),$calc($calc($replace(\2,\1,+)) / $1 )) $!iif($calc($calc($replace(\2,\1,+)) % $1 ] ),\1 $+ $v1))
5 GWeizman 196 bytes
redist {
  var %x 97
  while %x < 123 {
    var %c $chr(%x),%y $calc($regsubex($2-,$+(/\b[^,%c,]\d+|,%c,/g),+))
    var %p %p $str($+(%c,$1,$chr(32)),$calc(%y /$1)) $iif($calc(%y % $1),%c $+ $v1)
    inc %x
  }
  return %p
}
6 dr_Eamer 201 bytes
redist {
  %% = $1
  if $2- {
    while $regsubex($v1,(\D)(\d+)(.+)\1(\d+),\1 $+ $calc(\2 + \4)\3) != $v1 /
  }
  return $regsubex($v1,/(\D)(\d+)/g,$str(\1 $+ %% $chr(32),$calc(\2 /%%)) $iif($calc(\2 % %%),\1 $+ $v1))
}
7 chid 203 bytes
redist {  
  %; = $1
  return $regsubex($regsubex($1-,/ (.)\K(\d*)/g,$b(\1,\2)\2),/(.)\S*( )?/g,$m(\1,% $+ \1)\2)
}
b inc % $+ $1 $2
m { 
  while $(,$2) {            
    %. = $iif(%; < $v1,%;,$v2)
    var %# %# $1 $+ %.
    dec $2 %.
  }    
  return %#
}



Invalid entries:

Albie 239 bytes Longer than the non-regex version
redist {
  %x = $regex(x,$sorttok($2-,32),/((\w)(.*\2\d+|\d+))/g)
  while %x {
    var %a $regml(x,$calc(%x *3-2)),%l $left(%a,1),%n ( $regsubex(%a,/\D/g,+) ),%r %r $str($chr(32) %l $+ $1,$calc(%n /$1)) $iif($calc(%n % $1),%l $+ $v1)
    dec %x
  }
  return %r
}