diff options
| author | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-04-10 20:49:34 +0100 |
|---|---|---|
| committer | Mohammad S Anwar <mohammad.anwar@yahoo.com> | 2020-04-10 20:49:34 +0100 |
| commit | 1d50a0e5a8b5d70058b677ea19cc4a294f1aba32 (patch) | |
| tree | b168c7a1539c1bb568654191c17b3e76ee3789c1 | |
| parent | 917d45905c9dc5d3048200ab2984df78f11252a0 (diff) | |
| download | perlweeklychallenge-club-1d50a0e5a8b5d70058b677ea19cc4a294f1aba32.tar.gz perlweeklychallenge-club-1d50a0e5a8b5d70058b677ea19cc4a294f1aba32.tar.bz2 perlweeklychallenge-club-1d50a0e5a8b5d70058b677ea19cc4a294f1aba32.zip | |
- Added solutions by Ulrich Rieke.
| -rw-r--r-- | challenge-055/ulrich-rieke/cpp/ch-2.cpp | 67 | ||||
| -rw-r--r-- | challenge-055/ulrich-rieke/haskell/ch-2.hs | 16 | ||||
| -rw-r--r-- | challenge-055/ulrich-rieke/perl/ch-1.pl | 55 | ||||
| -rw-r--r-- | challenge-055/ulrich-rieke/raku/ch-1.p6 | 36 | ||||
| -rw-r--r-- | challenge-055/ulrich-rieke/raku/ch-2.p6 | 27 | ||||
| -rw-r--r-- | stats/pwc-current.json | 155 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown-summary.json | 60 | ||||
| -rw-r--r-- | stats/pwc-language-breakdown.json | 402 | ||||
| -rw-r--r-- | stats/pwc-leaders.json | 770 | ||||
| -rw-r--r-- | stats/pwc-summary-1-30.json | 110 | ||||
| -rw-r--r-- | stats/pwc-summary-121-150.json | 38 | ||||
| -rw-r--r-- | stats/pwc-summary-151-180.json | 48 | ||||
| -rw-r--r-- | stats/pwc-summary-31-60.json | 102 | ||||
| -rw-r--r-- | stats/pwc-summary-61-90.json | 34 | ||||
| -rw-r--r-- | stats/pwc-summary-91-120.json | 98 | ||||
| -rw-r--r-- | stats/pwc-summary.json | 60 |
16 files changed, 1149 insertions, 929 deletions
diff --git a/challenge-055/ulrich-rieke/cpp/ch-2.cpp b/challenge-055/ulrich-rieke/cpp/ch-2.cpp new file mode 100644 index 0000000000..10adfc4756 --- /dev/null +++ b/challenge-055/ulrich-rieke/cpp/ch-2.cpp @@ -0,0 +1,67 @@ +#include <iostream> +#include <vector> +#include <iterator> +#include <algorithm> +#include <utility> +#include <cstdlib> + +//this function creates pairs of neighbouring numbers in a vector +std::vector<std::pair<int, int>> createDoublets ( const std::vector<int> & numbers ) { + std::vector<std::pair<int , int>> doublets ; + int len = numbers.size( ) ; + for ( int i = 0 ; i < len - 1 ; i++ ) { + std::pair<int , int> p { *(numbers.begin( ) + i ) , + *(numbers.begin( ) + i + 1 ) } ; + doublets.push_back( p ) ; + } + return doublets ; +} + +//in order to create a "wavy list of numbers", a vector of numbers is +//converted into a vector of pairs of neighbouring numbers. To be wavy, +//even-indexed pairs must be descending, odd-indexed ones must ascend. +//if this holds true for all pairs a permutation is "wavy" +bool myCondition( const std::vector<int> & numbers ) { + std::vector<std::pair<int, int>> doublets { createDoublets( numbers ) } ; + int len = doublets.size( ) ; + std::vector<bool> validWavy ; + for (int i = 0 ; i < len ; i++ ) { + std::pair<int , int> p = doublets[ i ] ; + validWavy.push_back (( i % 2 == 0 ) && ( p.first >= p.second ) ) ; + validWavy.push_back (( i % 2 == 1 ) && ( p.first <= p.second ) ) ; + } + int i = 0 ; + for ( auto b : validWavy ) { + if ( b ) + i++ ; + } + return ( i == len ) ; +} + +//numbers are entered as arguments on the command line. A minimum number +//of 2 is desirable and requested +int main( int argc, char * argv[] ) { + std::vector<int> input ; + if ( argc < 3 ) { + std::cout << "There is little sense in permuting such short sequences!\n" ; + return 1 ; + } + for ( int i = 1 ; i < argc ; i++ ) { + input.push_back( std::atoi( argv[ i ] ) ) ; + } + std::vector<std::vector<int>> permus ; + std::vector<std::vector<int>> wavies ; + do { + permus.push_back( input ) ; + } while ( std::next_permutation( input.begin( ) , input.end( ) )) ; + std::copy_if( permus.begin( ) , permus.end( ) , + std::back_inserter( wavies ) , myCondition ) ; + for ( auto & it : wavies ) { + std::cout << "[ " ; + for ( int i : it ) { + std::cout << i << " " ; + } + std::cout << " ]\n" ; + } + return 0 ; +} diff --git a/challenge-055/ulrich-rieke/haskell/ch-2.hs b/challenge-055/ulrich-rieke/haskell/ch-2.hs new file mode 100644 index 0000000000..b87dbe4034 --- /dev/null +++ b/challenge-055/ulrich-rieke/haskell/ch-2.hs @@ -0,0 +1,16 @@ +module Challenge055_2 + where +import Data.List.Split ( divvy ) +import Data.List ( permutations , (!!) ) + +wavyLists :: [Int] -> [[Int]] +wavyLists list = filter myCondition $ permutations list + +myCondition :: [Int] -> Bool +myCondition sublist = all numbersteps $ zip doublets [0,1..] +where + doublets = divvy 2 1 sublist + numbersteps :: ([Int] , Int ) -> Bool + numbersteps ( li , num ) + |even num = li !! 0 >= li !! 1 + |odd num = li !! 0 <= li !! 1 diff --git a/challenge-055/ulrich-rieke/perl/ch-1.pl b/challenge-055/ulrich-rieke/perl/ch-1.pl new file mode 100644 index 0000000000..0496f5a6da --- /dev/null +++ b/challenge-055/ulrich-rieke/perl/ch-1.pl @@ -0,0 +1,55 @@ +#!/usr/bin/perl ; +use strict ; +use warnings ; +use POSIX qw ( floor ) ; + +sub toBinary { + my $num = shift ; + my @nums ; + while ( $num != 0 ) { + my $remainder = $num % 2 ; + push @nums, $remainder ; + $num = floor ( $num / 2 ) ; + } + return reverse @nums ; +} + +sub countChars { + my $string = shift ; + my $searched = shift ; + return scalar ( grep { $_ eq $searched } split ( // , $string ) ) ; +} + +sub myFlip { + my $string = shift ; + my $len = length $string ; + for my $i ( 0..$len - 1) { + if ( substr( $string , $i , 1 ) eq "1" ) { + substr( $string , $i , 1 ) = "0" ; + } + else { + substr( $string , $i , 1 ) = "1" ; + } + } + return $string ; +} + +my @flippedArrs ; +my @digits = toBinary ( $ARGV[0] ) ; +my $len = scalar @digits ; +my $binary = join ( '' , @digits ) ; +for my $l (0 .. $len - 1 ) { + for my $r ( $l .. $len - 1 ) { + my $flipped = substr( $binary , 0 , $l ) . + myFlip( substr( $binary , $l , $r - $l ) ) . + substr ( $binary, $r ) ; + push @flippedArrs, [ $l , $r , countChars( $flipped , "1" ) ] ; + } +} +my @sorted = sort { ${$b}[2] <=> ${$a}[2] } @flippedArrs ; +print ("L " . $sorted[0][0] . " , R " . $sorted[0][1] . "\n" ) ; +my $i = 1 ; +while ( $sorted[ $i ][ 2 ] == $sorted[ 0 ][ 2 ] ) { + print ("L " . $sorted[$i][0] . " , R " . $sorted[$i][1] . "\n") ; + $i++ ; +} diff --git a/challenge-055/ulrich-rieke/raku/ch-1.p6 b/challenge-055/ulrich-rieke/raku/ch-1.p6 new file mode 100644 index 0000000000..2537ea0e47 --- /dev/null +++ b/challenge-055/ulrich-rieke/raku/ch-1.p6 @@ -0,0 +1,36 @@ +use v6 ; + +sub myFlip( Str $n --> Str ) { + return $n.comb.map( { $_ eq "1" ?? "0" !! "1" } ).join ; +} + +sub countChar( Str $string , Str $searched --> Int ) { + return $string.comb.grep( {$_ eq $searched} ).elems ; +} + +sub MAIN( Int $num ) { + my $binary = $num.base( 2 ).Str ; + $binary.say ; + my $len = $binary.chars ; + my @pairs ; + for (0..$len - 1 ) -> $l { + for ( $l..$len - 1 ) -> $r { + my $flipped = $binary.substr(0 , $l ) ~ + myFlip( $binary.substr( $l, $r - $l ) ) ~ + $binary.substr( $r ) ; + @pairs.push( ( $l , $r , $flipped ) ) ; + } + } + my @changedPairs ; + for @pairs <-> $element { + @changedPairs.push( ( $element[ 0 ] , $element[ 1] , + countChar( $element[ 2] , "1" ) ) ) ; + } + my @sorted = @changedPairs.sort( { $^b[ 2 ] <=> $^a[ 2 ] } ) ; + say "L {@sorted[0][0] } , R { @sorted[0][1 ] }" ; + my $i = 1 ; + while ( @sorted[ $i ][2] == @sorted[ 0 ][ 2 ] ) { + say "L {@sorted[$i][0] } , R { @sorted[$i][1 ] }" ; + $i++ ; + } +} diff --git a/challenge-055/ulrich-rieke/raku/ch-2.p6 b/challenge-055/ulrich-rieke/raku/ch-2.p6 new file mode 100644 index 0000000000..c247e6c2f5 --- /dev/null +++ b/challenge-055/ulrich-rieke/raku/ch-2.p6 @@ -0,0 +1,27 @@ +use v6 ; + +sub myCondition( @array --> Bool ) { + my @doublets = @array.rotor(2 => -1) ; + my $len = @doublets.elems ; + my @trues ; + for (0..$len - 1 ) -> $i { + if ( $i %% 2 ) { + @trues.push( @doublets[$i][0] >= @doublets[$i][1] ) ; + } + else { + @trues.push( @doublets[$i][ 0 ] <= @doublets[$i][ 1 ] ) ; + } + } + return @trues.grep( { $_ == True } ).elems == $len ; +} + +sub MAIN( ) { + my $num ; + my @theArray ; + $num = prompt "Enter a number (negative number to stop) : " ; + while ( $num > 0 ) { + @theArray.push( $num ) ; + $num = prompt "next number! " ; + } + .say for @theArray.permutations.grep( { myCondition( @_) } ) ; +} diff --git a/stats/pwc-current.json b/stats/pwc-current.json index 6103df378a..4f8b0030b7 100644 --- a/stats/pwc-current.json +++ b/stats/pwc-current.json @@ -1,31 +1,18 @@ { - "chart" : { - "type" : "column" - }, - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, - "title" : { - "text" : "Perl Weekly Challenge - 055" - }, - "tooltip" : { - "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", - "followPointer" : 1, - "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>" + "subtitle" : { + "text" : "[Champions: 12] Last updated at 2020-04-10 19:49:09 GMT" }, "drilldown" : { "series" : [ { - "name" : "Andrezgz", - "id" : "Andrezgz", "data" : [ [ "Perl", 2 ] - ] + ], + "name" : "Andrezgz", + "id" : "Andrezgz" }, { "data" : [ @@ -72,18 +59,18 @@ 2 ] ], - "id" : "Luca Ferrari", - "name" : "Luca Ferrari" + "name" : "Luca Ferrari", + "id" : "Luca Ferrari" }, { + "name" : "Mark Anderson", + "id" : "Mark Anderson", "data" : [ [ "Raku", 2 ] - ], - "id" : "Mark Anderson", - "name" : "Mark Anderson" + ] }, { "data" : [ @@ -96,38 +83,52 @@ 1 ] ], - "id" : "Roger Bell West", - "name" : "Roger Bell West" + "name" : "Roger Bell West", + "id" : "Roger Bell West" }, { + "id" : "Saif Ahmed", + "name" : "Saif Ahmed", "data" : [ [ "Perl", 2 ] - ], - "id" : "Saif Ahmed", - "name" : "Saif Ahmed" + ] }, { + "name" : "Simon Proctor", + "id" : "Simon Proctor", "data" : [ [ "Raku", 2 ] - ], - "id" : "Simon Proctor", - "name" : "Simon Proctor" + ] }, { "data" : [ [ "Perl", + 1 + ], + [ + "Raku", 2 ] ], + "id" : "Ulrich Rieke", + "name" : "Ulrich Rieke" + }, + { + "name" : "Wanderdoc", "id" : "Wanderdoc", - "name" : "Wanderdoc" + "data" : [ + [ + "Perl", + 2 + ] + ] }, { "data" : [ @@ -136,90 +137,108 @@ 2 ] ], - "name" : "Yet Ebreo", - "id" : "Yet Ebreo" + "id" : "Yet Ebreo", + "name" : "Yet Ebreo" } ] }, - "plotOptions" : { - "series" : { - "borderWidth" : 0, - "dataLabels" : { - "format" : "{point.y}", - "enabled" : 1 - } - } + "chart" : { + "type" : "column" }, - "xAxis" : { - "type" : "category" + "yAxis" : { + "title" : { + "text" : "Total Solutions" + } }, - "subtitle" : { - "text" : "[Champions: 11] Last updated at 2020-04-10 18:45:19 GMT" + "title" : { + "text" : "Perl Weekly Challenge - 055" }, "series" : [ { + "colorByPoint" : 1, + "name" : "Perl Weekly Challenge - 055", "data" : [ { - "y" : 2, "name" : "Andrezgz", + "y" : 2, "drilldown" : "Andrezgz" }, { + "drilldown" : "Arne Sommer", "y" : 3, - "name" : "Arne Sommer", - "drilldown" : "Arne Sommer" + "name" : "Arne Sommer" }, { "drilldown" : "Dave Jacoby", - "name" : "Dave Jacoby", - "y" : 2 + "y" : 2, + "name" : "Dave Jacoby" }, { "drilldown" : "Lubos Kolouch", - "y" : 2, - "name" : "Lubos Kolouch" + "name" : "Lubos Kolouch", + "y" : 2 }, { + "drilldown" : "Luca Ferrari", "name" : "Luca Ferrari", - "y" : 4, - "drilldown" : "Luca Ferrari" + "y" : 4 }, { - "name" : "Mark Anderson", "y" : 2, + "name" : "Mark Anderson", "drilldown" : "Mark Anderson" }, { - "y" : 3, "name" : "Roger Bell West", + "y" : 3, "drilldown" : "Roger Bell West" }, { - "y" : 2, + "drilldown" : "Saif Ahmed", "name" : "Saif Ahmed", - "drilldown" : "Saif Ahmed" + "y" : 2 }, { - "drilldown" : "Simon Proctor", + "y" : 2, "name" : "Simon Proctor", - "y" : 2 + "drilldown" : "Simon Proctor" + }, + { + "y" : 3, + "name" : "Ulrich Rieke", + "drilldown" : "Ulrich Rieke" }, { "drilldown" : "Wanderdoc", - "y" : 2, - "name" : "Wanderdoc" + "name" : "Wanderdoc", + "y" : 2 }, { "drilldown" : "Yet Ebreo", - "name" : "Yet Ebreo", - "y" : 2 + "y" : 2, + "name" : "Yet Ebreo" } - ], - "colorByPoint" : 1, - "name" : "Perl Weekly Challenge - 055" + ] } ], + "tooltip" : { + "headerFormat" : "<span style='font-size:11px'>{series.name}</span><br/>", + "pointFormat" : "<span style='color:{point.color}'>{point.name}</span>: <b>{point.y:f}</b><br/>", + "followPointer" : 1 + }, "legend" : { "enabled" : 0 + }, + "plotOptions" : { + "series" : { + "borderWidth" : 0, + "dataLabels" : { + "format" : "{point.y}", + "enabled" : 1 + } + } + }, + "xAxis" : { + "type" : "category" } } diff --git a/stats/pwc-language-breakdown-summary.json b/stats/pwc-language-breakdown-summary.json index f1a0bf23d1..04a98df185 100644 --- a/stats/pwc-language-breakdown-summary.json +++ b/stats/pwc-language-breakdown-summary.json @@ -1,9 +1,6 @@ { - "yAxis" : { - "title" : { - "text" : null - }, - "min" : 0 + "subtitle" : { + "text" : "Last updated at 2020-04-10 19:49:09 GMT" }, "chart" : { "type" : "column" @@ -11,8 +8,23 @@ "title" : { "text" : "Perl Weekly Challenge Contributions [2019 - 2020]" }, - "tooltip" : { - "pointFormat" : "<b>{point.y:.0f}</b>" + "yAxis" : { + "min" : 0, + "title" : { + "text" : null + } + }, + "xAxis" : { + "labels" : { + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + } + }, + "type" : "category" + }, + "legend" : { + "enabled" : "false" }, "series" : [ { @@ -23,41 +35,29 @@ ], [ "Perl", - 2314 + 2315 ], [ "Raku", - 1442 + 1444 ] ], "name" : "Contributions", "dataLabels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - }, - "color" : "#FFFFFF", "enabled" : "true", - "rotation" : -90, "align" : "right", + "rotation" : -90, + "style" : { + "fontSize" : "13px", + "fontFamily" : "Verdana, sans-serif" + }, + "format" : "{point.y:.0f}", "y" : 10, - "format" : "{point.y:.0f}" + "color" : "#FFFFFF" } } ], - "legend" : { - "enabled" : "false" - }, - "subtitle" : { - "text" : "Last updated at 2020-04-10 18:45:19 GMT" - }, - "xAxis" : { - "type" : "category", - "labels" : { - "style" : { - "fontFamily" : "Verdana, sans-serif", - "fontSize" : "13px" - } - } + "tooltip" : { + "pointFormat" : "<b>{point.y:.0f}</b>" } } diff --git a/stats/pwc-language-breakdown.json b/stats/pwc-language-breakdown.json index 420f6d717d..47f362174a 100644 --- a/stats/pwc-language-breakdown.json +++ b/stats/pwc-language-breakdown.json @@ -1,26 +1,12 @@ { - "yAxis" : { - "title" : { - "text" : "Total Solutions" - } - }, "chart" : { "type" : "column" }, - "plotOptions" : { - "series" : { - "dataLabels" : { - "enabled" : 1, - "format" : "{point.y}" - }, - "borderWidth" : 0 - } - }, "drilldown" : { "series" : [ { - "name" : "001", "id" : "001", + "name" : "001", "data" : [ [ "Perl", @@ -55,6 +41,8 @@ ] }, { + "id" : "003", + "name" : "003", "data" : [ [ "Perl", @@ -68,11 +56,11 @@ "Blog", 9 ] - ], - "id" : "003", - "name" : "003" + ] }, { + "id" : "004", + "name" : "004", "data" : [ [ "Perl", @@ -86,13 +74,9 @@ "Blog", 10 ] - ], - "id" : "004", - "name" : "004" + ] }, { - "id" : "005", - "name" : "005", "data" : [ [ "Perl", @@ -106,11 +90,11 @@ "Blog", 12 ] - ] + ], + "id" : "005", + "name" : "005" }, { - "name" : "006", - "id" : "006", "data" : [ [ "Perl", @@ -124,11 +108,11 @@ "Blog", 7 ] - ] + ], + "name" : "006", + "id" : "006" }, { - "name" : "007", - "id" : "007", "data" : [ [ "Perl", @@ -142,7 +126,9 @@ "Blog", 10 ] - ] + ], + "name" : "007", + "id" : "007" }, { "data" : [ @@ -163,6 +149,8 @@ "name" : "008" }, { + "name" : "009", + "id" : "009", "data" : [ [ "Perl", @@ -176,13 +164,9 @@ "Blog", 13 ] - ], - "name" : "009", - "id" : "009" + ] }, { - "id" : "010", - "name" : "010", "data" : [ [ "Perl", @@ -196,7 +180,9 @@ "Blog", 11 ] - ] + ], + "id" : "010", + "name" : "010" }, { "id" : "011", @@ -217,8 +203,6 @@ ] }, { - "name" : "012", - "id" : "012", "data" : [ [ "Perl", @@ -232,9 +216,13 @@ "Blog", 11 ] - ] + ], + "id" : "012", + "name" : "012" }, { + "name" : "013", + "id" : "013", "data" : [ [ "Perl", @@ -248,13 +236,9 @@ "Blog", 13 ] - ], - "name" : "013", - "id" : "013" + ] }, { - "id" : "014", - "name" : "014", "data" : [ [ "Perl", @@ -268,7 +252,9 @@ "Blog", 15 ] - ] + ], + "name" : "014", + "id" : "014" }, { "data" : [ @@ -289,8 +275,8 @@ "name" : "015" }, { - "id" : "016", "name" : "016", + "id" : "016", "data" : [ [ "Perl", @@ -307,8 +293,6 @@ ] }, { - "name" : "017", - "id" : "017", "data" : [ [ "Perl", @@ -322,11 +306,11 @@ "Blog", 12 ] - ] + ], + "id" : "017", + "name" : "017" }, { - "name" : "018", - "id" : "018", "data" : [ [ "Perl", @@ -340,11 +324,11 @@ "Blog", 14 ] - ] + ], + "name" : "018", + "id" : "018" }, { - "name" : "019", - "id" : "019", "data" : [ [ "Perl", @@ -358,9 +342,13 @@ "Blog", 13 ] - ] + ], + "id" : "019", + "name" : "019" }, { + "name" : "020", + "id" : "020", "data" : [ [ "Perl", @@ -374,9 +362,7 @@ "Blog", 13 ] - ], - "id" : "020", - "name" : "020" + ] }, { "name" : "021", @@ -397,6 +383,8 @@ ] }, { + "id" : "022", + "name" : "022", "data" : [ [ "Perl", @@ -410,9 +398,7 @@ "Blog", 10 ] - ], - "name" : "022", - "id" : "022" + ] }, { "data" : [ @@ -433,8 +419,8 @@ "name" : "023" }, { - "id" : "024", "name" : "024", + "id" : "024", "data" : [ [ "Perl", @@ -451,8 +437,8 @@ ] }, { - "id" : "025", "name" : "025", + "id" : "025", "data" : [ [ "Perl", @@ -469,8 +455,6 @@ ] }, { - "id" : "026", - "name" : "026", "data" : [ [ "Perl", @@ -484,11 +468,13 @@ "Blog", 10 ] - ] + ], + "id" : "026", + "name" : "026" }, { - "name" : "027", "id" : "027", + "name" : "027", "data" : [ [ "Perl", @@ -505,6 +491,8 @@ ] }, { + "name" : "028", + "id" : "028", "data" : [ [ "Perl", @@ -518,9 +506,7 @@ "Blog", 9 ] - ], - "id" : "028", - "name" : "028" + ] }, { "data" : [ @@ -559,8 +545,8 @@ "id" : "030" }, { - "name" : "031", "id" : "031", + "name" : "031", "data" : [ [ "Perl", @@ -577,6 +563,8 @@ ] }, { + "id" : "032", + "name" : "032", "data" : [ [ "Perl", @@ -590,11 +578,11 @@ "Blog", 10 ] - ], - "name" : "032", - "id" : "032" + ] }, { + "name" : "033", + "id" : "033", "data" : [ [ "Perl", @@ -608,9 +596,7 @@ "Blog", 10 ] - ], - "id" : "033", - "name" : "033" + ] }, { "data" : [ @@ -631,8 +617,8 @@ "id" : "034" }, { - "name" : "035", "id" : "035", + "name" : "035", "data" : [ [ "Perl", @@ -663,8 +649,8 @@ 11 ] ], - "id" : "036", - "name" : "036" + "name" : "036", + "id" : "036" }, { "data" : [ @@ -681,12 +667,10 @@ 9 ] ], - "id" : "037", - "name" : "037" + "name" : "037", + "id" : "037" }, { - "id" : "038", - "name" : "038", "data" : [ [ "Perl", @@ -700,9 +684,13 @@ "Blog", 12 ] - ] + ], + "name" : "038", + "id" : "038" }, { + "id" : "039", + "name" : "039", "data" : [ [ "Perl", @@ -716,11 +704,11 @@ "Blog", 12 ] - ], - "id" : "039", - "name" : "039" + ] }, { + "name" : "040", + "id" : "040", "data" : [ [ "Perl", @@ -734,9 +722,7 @@ "Blog", 10 ] - ], - "name" : "040", - "id" : "040" + ] }, { "data" : [ @@ -753,12 +739,10 @@ 9 ] ], - "id" : "041", - "name" : "041" + "name" : "041", |
