diff options
| author | Mohammad Sajid Anwar <Mohammad.Anwar@yahoo.com> | 2024-05-13 00:32:17 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-05-13 00:32:17 +0100 |
| commit | 2fd5134e36c0e93e2db8677341b5a064e119d5c6 (patch) | |
| tree | 59aa7829fe1e7962628bf7617c20d1d0b87cd7c1 /challenge-262/2colours/php | |
| parent | 7f79fc198fbb406bf7b29b4725e01346910248bb (diff) | |
| parent | 77244cdd27ba9369ded9f12d06f495f7dab42d2e (diff) | |
| download | perlweeklychallenge-club-2fd5134e36c0e93e2db8677341b5a064e119d5c6.tar.gz perlweeklychallenge-club-2fd5134e36c0e93e2db8677341b5a064e119d5c6.tar.bz2 perlweeklychallenge-club-2fd5134e36c0e93e2db8677341b5a064e119d5c6.zip | |
Merge pull request #10079 from 2colours/branch-for-challenge-262
Branch for challenge 262
Diffstat (limited to 'challenge-262/2colours/php')
| -rw-r--r-- | challenge-262/2colours/php/ch-1.php | 7 | ||||
| -rw-r--r-- | challenge-262/2colours/php/ch-2.php | 16 |
2 files changed, 23 insertions, 0 deletions
diff --git a/challenge-262/2colours/php/ch-1.php b/challenge-262/2colours/php/ch-1.php new file mode 100644 index 0000000000..c714bc2363 --- /dev/null +++ b/challenge-262/2colours/php/ch-1.php @@ -0,0 +1,7 @@ +<?php + +const PARENS = ['(', ')']; +const SQUARE_BRACKETS = ['[', ']']; +echo '@ints = '; +$ints = json_decode(str_replace(PARENS, SQUARE_BRACKETS, fgets(STDIN))); +echo max(...array_map(fn ($pred) => count(array_filter($ints, $pred)), [fn ($x) => $x > 0, fn ($x) => $x < 0]));
\ No newline at end of file diff --git a/challenge-262/2colours/php/ch-2.php b/challenge-262/2colours/php/ch-2.php new file mode 100644 index 0000000000..bec9137694 --- /dev/null +++ b/challenge-262/2colours/php/ch-2.php @@ -0,0 +1,16 @@ +<?php + +const PARENS = ['(', ')']; +const SQUARE_BRACKETS = ['[', ']']; +echo '@ints = '; +$ints = json_decode(str_replace(PARENS, SQUARE_BRACKETS, fgets(STDIN))); +echo '$k = '; +$k = fgets(STDIN); +$result = 0; +foreach ($ints as $index => $value) { + $needed_factor = intdiv($k, gmp_intval(gmp_gcd($index, $k))); + $next_valid = ceil(($index + 1) / $needed_factor) * $needed_factor; + $values_to_check = array_column(array_chunk(array_slice($ints, $next_valid), $needed_factor), 0); + $result += @array_count_values($values_to_check)[$value]; +} +echo $result;
\ No newline at end of file |
