diff options
| author | Michael Manring <michael@manring> | 2024-09-02 23:39:36 +1000 |
|---|---|---|
| committer | Michael Manring <michael@manring> | 2024-09-02 23:39:36 +1000 |
| commit | 8fc715b18240d9f1d24e4d07bf545dbd7d33aad9 (patch) | |
| tree | f92e0aed8d540c95d532273a3b7950014fe62103 /challenge-285 | |
| parent | 6c3141c0a985d70f931356c3cdd6bd2c2e72a54d (diff) | |
| download | perlweeklychallenge-club-8fc715b18240d9f1d24e4d07bf545dbd7d33aad9.tar.gz perlweeklychallenge-club-8fc715b18240d9f1d24e4d07bf545dbd7d33aad9.tar.bz2 perlweeklychallenge-club-8fc715b18240d9f1d24e4d07bf545dbd7d33aad9.zip | |
pwc285 - minor enhancement
Diffstat (limited to 'challenge-285')
| -rw-r--r-- | challenge-285/pokgopun/go/ch-1.go | 7 | ||||
| -rw-r--r-- | challenge-285/pokgopun/go/ch-2.go | 8 | ||||
| -rw-r--r-- | challenge-285/pokgopun/python/ch-1.py | 12 | ||||
| -rw-r--r-- | challenge-285/pokgopun/python/ch-2.py | 5 |
4 files changed, 14 insertions, 18 deletions
diff --git a/challenge-285/pokgopun/go/ch-1.go b/challenge-285/pokgopun/go/ch-1.go index 25e61b4565..886d188e63 100644 --- a/challenge-285/pokgopun/go/ch-1.go +++ b/challenge-285/pokgopun/go/ch-1.go @@ -48,9 +48,10 @@ type routes []route func (rs routes) nc() string { m := make(map[string]bool) for _, v := range rs { - m[v.src] = false - _, ok := m[v.dst] - if !ok { + if b, ok := m[v.src]; !ok || b { + m[v.src] = false + } + if _, ok := m[v.dst]; !ok { m[v.dst] = true } } diff --git a/challenge-285/pokgopun/go/ch-2.go b/challenge-285/pokgopun/go/ch-2.go index 58a63ee266..7ed21d5f1e 100644 --- a/challenge-285/pokgopun/go/ch-2.go +++ b/challenge-285/pokgopun/go/ch-2.go @@ -64,13 +64,7 @@ func mc(a int) int { for c50 := range a/50 + 1 { for c25 := range (a-50*c50)/25 + 1 { for c10 := range (a-50*c50-25*c25)/10 + 1 { - for c5 := range (a-50*c50-25*c25-10*c10)/5 + 1 { - for c1 := range (a - 50*c50 - 25*c25 - 10*c10 - 5*c5) + 1 { - if 50*c50+25*c25+10*c10+5*c5+c1 == a { - c++ - } - } - } + c += (a-50*c50-25*c25-10*c10)/5 + 1 } } } diff --git a/challenge-285/pokgopun/python/ch-1.py b/challenge-285/pokgopun/python/ch-1.py index fcebb07e89..5ae0781134 100644 --- a/challenge-285/pokgopun/python/ch-1.py +++ b/challenge-285/pokgopun/python/ch-1.py @@ -31,10 +31,14 @@ Task 2: Making Change ### solution by pokgopun@gmail.com def nc(routes: tuple): - srcs = tuple(e[0] for e in routes) - for src, dst in routes: - if dst not in srcs: - return dst + dct = dict() + for src,dst in routes: + if dct.get(src,True): + dct[src] = False + dct.setdefault(dst,True) + for k,v in dct.items(): + if v: + return k return None import unittest diff --git a/challenge-285/pokgopun/python/ch-2.py b/challenge-285/pokgopun/python/ch-2.py index 813b8cf378..54396ce3f7 100644 --- a/challenge-285/pokgopun/python/ch-2.py +++ b/challenge-285/pokgopun/python/ch-2.py @@ -55,10 +55,7 @@ def mc(amount: int): for a50 in range(0,amount+1,50): for a25 in range(0,amount-a50+1,25): for a10 in range(0,amount-a50-a25+1,10): - for a5 in range(0,amount-a50-a25-a10+1,5): - for a1 in range(0,amount-a50-a25-a10-a5+1,1): - if a50 + a25 + a10 + a5 + a1 == amount: - c += 1 + c += (amount-a50-a25-a10)//5 + 1 return c import unittest |
