Monkey←{𝕊desc:
items←{𝕩∊", "}⊸Split(18↓1⊑desc)
items↩•ParseFloat¨(⟨⟩⊸≢¨items)/items
- op←' '⊸=⊸Split 19↓2⊑desc
+ inspect←{
+ 𝕊⟨"old","*","old"⟩:{𝕩×𝕩};
+ 𝕊⟨"old","*",n⟩ :{𝕩וParseFloat n};
+ 𝕊⟨"old","+",n⟩ :{𝕩+•ParseFloat n}
+ }' '⊸=⊸Split 19↓2⊑desc
divisor←•ParseFloat 21↓3⊑desc
iftrue ←•ParseFloat 29↓4⊑desc
iffalse←•ParseFloat 30↓5⊑desc
count⇐0
Catch⇐{items∾↩⟨𝕩⟩}
- Inspect←{
- ⟨"old","*","old"⟩𝕊old:old×old;
- ⟨"old","*",n⟩ 𝕊old:oldוParseFloat n;
- ⟨"old","+",n⟩ 𝕊old:old+•ParseFloat n
- }
Relieve←{⌊𝕩÷3}
Turn⇐{𝕤
{𝕊i:
count+↩1
- i↩Relieve op Inspect i
+ i↩Relieve Inspect i
(((0=divisor|i)⊑⟨iffalse,iftrue⟩)⊑monkeys).Catch i
}¨items
items↩⟨⟩