Al la enhavo

Neĝulino kaj la sep etuloj

de fabrice94, 2014-junio-24

Mesaĝoj: 14

Lingvo: Esperanto

fabrice94 (Montri la profilon) 2014-junio-24 18:00:47

Neĝulino donacos pesilon al sep viretuloj.
Iu surgrimpis la pesilon kaj iu skribis lian pezon sur paĝo.
Ili donis la paĝon, sen skribinte nomo, al Neĝulino : 22 kg – 14 kg – 16 kg – 11 kg – 17 kg – 24 kg – 19 kg.

Poste ludanta, ili duope surgrimpis la pesilon, krom Grumbletulo kiu ne volas (ne envias).

Tiam ili diras al Neĝulino ke :

Dormetulo kaj Scietulo kunestis sur la pesilo.
Timemetulo kaj Ĝojetulo kunestis sur la pesilo.
Ternetulo kaj Simpletulo kunestis sur la pesilo.

Ili diris al Neĝulino ke la pesilo indikis sampezo ĉiufojo.
Neĝulino diras tiuokaze : «Ne paroli, mi scias nun la Grumbetulo pezon. »

Ĉu estas Grumbetulo pezo ?

HaleBopp (Montri la profilon) 2014-junio-28 20:44:44

Aspektas ke la nura kombinaĵo kiu funkcias estas :
22 + 11 = 33
14 + 19 = 33
16 + 17 = 33
Restas 24. Do Grumbletulo pezas 24 kg.

Ĉu bone?

nornen (Montri la profilon) 2014-junio-28 21:07:26

fabrice94:Ĉu estas Grumbetulo pezo ?
Ne. Grumbetulo estas etulo, kaj ne pezo.

----
(lambda e:{w for w in e if not sum(e-{w})%3})({22,14,16,11,17,24,19})

Altebrilas (Montri la profilon) 2014-julio-02 14:33:32

Tio ankaŭ funkcias en Pitono, sed mi ne komprenis la rezonadon. Ĉu vi povas klarigi ĝin?
(lambda e:[w for w in e if not (sum(e)-w)%3])([22,14,16,11,17,24,19])
[24]
Kio okazus se 24 estus anstataŭita per ne-trionigebla nombro?

nornen (Montri la profilon) 2014-julio-02 17:12:58

Altebrilas:Tio ankaŭ funkcias en Pitono, sed mi ne komprenis la rezonadon. Ĉu vi povas klarigi ĝin?
(lambda e:[w for w in e if not (sum(e)-w)%3])([22,14,16,11,17,24,19])
[24]
Kio okazus se 24 estus anstataŭita per ne-trionigebla nombro?
Tiuokaze vi bezonus pli da testoj.

python3:(lambda a:{w for w in a if (lambda s: False if sum(s)%3 else sum(sum(1 for x in s-{w} if x+w==sum(s)//3) for w in s)==len(s))(a-{w})})({22,14,16,11,17,19,24})
Se mi ne eraris, tiu devus trovi ĉiujn eblajn pezojn de Grumbetulo.

Ekzemple {22,14,16,11,17,19,24} donas {24}.
{22,14,16,11,17,19,25} donas {16, 25}.
{22,14,16,11,17,19,26} donas {26}.

Altebrilas (Montri la profilon) 2014-julio-02 20:48:47

Mi ne komprenis la tuton, sed reskribis ĝin tiel, ĉar tio aspektas pli legebla:
a=[22,14,16,11,17,19,24]
for w in a:
____ s=a[:];s.remove(w);s.sort();
____ if s[0]+s[5]==s[1]+s[4]==s[2]+s[3]: print w
NB: antataŭigu la "_" per spacoj se vi provas la kodaĵon.

Sxak (Montri la profilon) 2014-julio-14 02:52:59

ilia suma pezo estas 123 - dividebla je 3, sekve do ankaŭ la nepesita etulo havas la pezon divideblan je 3, inter ili estas sola tia pezo - 24

PS: kion kaj kiucele vi kombinas? ĉiufoje po du etuloj la pesilo indikis x, sekve do tiuj 6 etuloj pezas 3x La suma pezo estas 123=3x+y el kio sekvas, ke y estas dividebla je 3

Altebrilas (Montri la profilon) 2014-julio-15 20:47:43

La pruvo, en tiu kazo, estas eleganta. Sed ĝi ne funkcias en la ĝenerala kazo.

Sxak (Montri la profilon) 2014-julio-17 09:57:44

Altebrilas:La pruvo, en tiu kazo, estas eleganta. Sed ĝi ne funkcias en la ĝenerala kazo.
Gxi funkcias en ajna kazo. La resto post divido je 3 en ajna kazo egalas al tiu resto de la sumo

fabrice94 (Montri la profilon) 2015-marto-18 15:56:50

brave ĉiu !
Grumbetulo pezo estas 24kg.
Ŝak havas pli bela solvo.

Reen al la supro