From 2a215d8b05fa5bbf1654ebdfe006b7e818053982 Mon Sep 17 00:00:00 2001 From: deadmarshal Date: Fri, 5 Jul 2024 10:58:08 +0330 Subject: TWC276 raku and d solutions --- challenge-276/deadmarshal/d/ch1.d | 18 ++++++++++++++++++ challenge-276/deadmarshal/d/ch2.d | 19 +++++++++++++++++++ challenge-276/deadmarshal/raku/ch-1.raku | 15 +++++++++++++++ challenge-276/deadmarshal/raku/ch-2.raku | 13 +++++++++++++ 4 files changed, 65 insertions(+) create mode 100644 challenge-276/deadmarshal/d/ch1.d create mode 100644 challenge-276/deadmarshal/d/ch2.d create mode 100644 challenge-276/deadmarshal/raku/ch-1.raku create mode 100644 challenge-276/deadmarshal/raku/ch-2.raku diff --git a/challenge-276/deadmarshal/d/ch1.d b/challenge-276/deadmarshal/d/ch1.d new file mode 100644 index 0000000000..6ccb6559d0 --- /dev/null +++ b/challenge-276/deadmarshal/d/ch1.d @@ -0,0 +1,18 @@ +import std.stdio:writeln; + +int complete_day(int[] arr) +{ + int count = 0; + foreach(i;0..arr.length-1) + foreach(j;i+1..arr.length) + if((arr[i] + arr[j]) % 24 == 0) count++; + return count; +} + +void main() +{ + writeln(complete_day([12,12,30,24,24])); + writeln(complete_day([72,48,24,55])); + writeln(complete_day([12,18,24])); +} + diff --git a/challenge-276/deadmarshal/d/ch2.d b/challenge-276/deadmarshal/d/ch2.d new file mode 100644 index 0000000000..dcbf95de1f --- /dev/null +++ b/challenge-276/deadmarshal/d/ch2.d @@ -0,0 +1,19 @@ +import std.stdio:writeln; +import std.algorithm:maxElement,filter,sum; +import std.array:array; + +int maximum_frequency(int[] arr) +{ + int sum = 0; + int[int] h; + foreach(e;arr) h[e]++; + int max = h.values.maxElement; + return h.values.filter!(a => a == max).array.sum; +} + +void main() +{ + writeln(maximum_frequency([1,2,2,4,1,5])); + writeln(maximum_frequency([1,2,3,4,5])); +} + diff --git a/challenge-276/deadmarshal/raku/ch-1.raku b/challenge-276/deadmarshal/raku/ch-1.raku new file mode 100644 index 0000000000..89301c7ad9 --- /dev/null +++ b/challenge-276/deadmarshal/raku/ch-1.raku @@ -0,0 +1,15 @@ +#!usr/bin/env perl + +sub complete-day(@arr){ + my $count = 0; + for 0..^@arr.end -> $i { + for $i+1..@arr.end -> $j { + $count++ if (@arr[$i] + @arr[$j]) %% 24 + } + } + $count +} + +say complete-day([12,12,30,24,24]); +say complete-day([72,48,24,55]); +say complete-day([12,18,24]); diff --git a/challenge-276/deadmarshal/raku/ch-2.raku b/challenge-276/deadmarshal/raku/ch-2.raku new file mode 100644 index 0000000000..80c1b83440 --- /dev/null +++ b/challenge-276/deadmarshal/raku/ch-2.raku @@ -0,0 +1,13 @@ +#!/usr/bin/env raku + +sub maximum-frequency(@arr) +{ + my %h; + %h{$_}++ for @arr; + my $max = %h.values.max; + (%h.values.grep: {$_ if $_ == $max}).sum; +} + +printf "%d\n",maximum-frequency([1,2,2,4,1,5]); +printf "%d\n",maximum-frequency([1,2,3,4,5]); + -- cgit From 1439d63ecf62fafc88d328602b43f919f7889dc0 Mon Sep 17 00:00:00 2001 From: deadmarshal Date: Fri, 5 Jul 2024 11:00:10 +0330 Subject: fixed raku solution --- challenge-276/deadmarshal/raku/ch-1.raku | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/challenge-276/deadmarshal/raku/ch-1.raku b/challenge-276/deadmarshal/raku/ch-1.raku index 89301c7ad9..5df6228d73 100644 --- a/challenge-276/deadmarshal/raku/ch-1.raku +++ b/challenge-276/deadmarshal/raku/ch-1.raku @@ -1,4 +1,4 @@ -#!usr/bin/env perl +#!usr/bin/env raku sub complete-day(@arr){ my $count = 0; -- cgit