ไปยังสารบัญ

Neĝulino kaj la sep etuloj

จาก fabrice94, 24 มิถุนายน 2014

ข้อความ 14

ภาษา: Esperanto

fabrice94 (แสดงโปรไฟล์) 24 มิถุนายน 2014, 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 (แสดงโปรไฟล์) 28 มิถุนายน 2014, 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 (แสดงโปรไฟล์) 28 มิถุนายน 2014, 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 (แสดงโปรไฟล์) 2 กรกฎาคม 2014, 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 (แสดงโปรไฟล์) 2 กรกฎาคม 2014, 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 (แสดงโปรไฟล์) 2 กรกฎาคม 2014, 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 (แสดงโปรไฟล์) 14 กรกฎาคม 2014, 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 (แสดงโปรไฟล์) 15 กรกฎาคม 2014, 20:47:43

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

Sxak (แสดงโปรไฟล์) 17 กรกฎาคม 2014, 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 (แสดงโปรไฟล์) 18 มีนาคม 2015, 15:56:50

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

กลับไปด้านบน