Dungeon Master , 1987 yılında Atari ST'de yayınlanan ilk gerçek zamanlı rol yapma oyunlarından biriydi. O zaman için diğer heyecan verici şeyler arasında, rune dayalı oldukça sofistike bir büyü sistemi sundu.
Bugün sizin göreviniz, Zindan Master'da belirli bir büyüyü yapmak için gereken Mana puanlarının sayısını değerlendiren bir program veya işlev yazmaktır.
'Yazım denetimi' sistemi, yukarıdaki resimde sağ üst cam göbeği kutusudur.
Büyüler, runeler ve Mana
Dungeon Master büyüleri, aşağıdaki kategoriler arasında bu kesin sıraya göre seçilmiş 2 ila 4 rundan oluşur:
- Güç (zorunlu)
- Elemental Etki (zorunlu)
- Form (isteğe bağlı)
- Sınıf / Hizalama (isteğe bağlı)
Geçerli büyülerin ya:
- Güç + Elementel Etki
- Güç + Elementel Etki + Form
- Güç + Elementel Etki + Form + Sınıf / Hizalama
Her kategori 6 run içermektedir ve her runenin bir Mana bankası bedeli vardır:
=============================================================================
| Power | Rune | Lo | Um | On | Ee | Pal | Mon |
| +-----------+------+------+------+------+------+------+
| | Base cost | 1 | 2 | 3 | 4 | 5 | 6 |
=============================================================================
| Elemental Influence | Rune | Ya | Vi | Oh | Ful | Des | Zo |
| +-----------+------+------+------+------+------+------+
| | Base cost | 2 | 3 | 4 | 5 | 6 | 7 |
=============================================================================
| Form | Rune | Ven | Ew | Kath | Ir | Bro | Gor |
| +-----------+------+------+------+------+------+------+
| | Base cost | 4 | 5 | 6 | 7 | 7 | 9 |
=============================================================================
| Class / Alignment | Rune | Ku | Ros | Dain | Neta | Ra | Sar |
| +-----------+------+------+------+------+------+------+
| | Base cost | 2 | 2 | 3 | 4 | 6 | 7 |
=============================================================================
Mana maliyetini değerlendirme
Büyünün Mana bedeli, tüm runelerin Mana bedelinin toplamıdır:
Güç runenin maliyeti her zaman temel maliyetine eşittir (1'den 6'ya).
Diğer runeler için, aşağıdaki formül geçerlidir:
nerede güç Güç rune taban maliyetidir.
Örnekler
Spell: Lo Ful
Cost : 1 + floor((1 + 1) * 5 / 2) = 1 + 5 = 6
Spell: Um Ful
Cost : 2 + floor((2 + 1) * 5 / 2) = 2 + 7 = 9
Spell: Pal Vi Bro
Cost : 5 + floor((5 + 1) * 3 / 2) + floor((5 + 1) * 7 / 2) = 5 + 9 + 21 = 35
Açıklamalar ve kurallar
- Girişiniz, büyünün runelarını belirten 2 ila 4 karakterden oluşacak. Bunları 4 farklı parametre, bir dizi dizi (örn.
['Lo', 'Ful']
) Veya seçtiğiniz tek karakterli bir ayırıcıyla (örn. ) Yalnızca bir dizi gibi makul bir formatta alabilirsiniz'Lo Ful'
. Lütfen cevabınıza seçilen giriş biçimini belirtiniz. - Runlerin geçerli olduğu garanti edilir.
- Kategorilerin sırasına saygı gösterilmelidir. Kullanılmayan kategoriler eksik olabilir veya bazı sahte değerler ile değiştirilmiş olabilir.
- Runes'i bu formatlardan herhangi birinde kabul edebilirsiniz: 1. Büyük harf ve ardından küçük harf (
'Ful'
) 2. Tüm küçük harf ('ful'
) 3. Tüm büyük harf ('FUL'
). Ama olamaz farklı biçimleri karıştırın. - Oldukça açık, büyünün oyunda aslında bir etkisi olup olmadığını bilmek umrumda değil (meraklı, yararlı büyü burada listelenir .)
- Bu kod golf , yani bayt cinsinden en kısa kod kazanır.
- Ve unutmayın: Lord Chaos sizi izliyor!
Test durumları
Spell | Output
---------------+-------
Lo Ful | 6
Um Ful | 9
On Ya | 7
Lo Zo Ven | 12
Pal Vi Bro | 35
Ee Ya Bro Ros | 31
On Ful Bro Ku | 31
Lo Zo Kath Ra | 20
On Oh Ew Sar | 35
Ee Oh Gor Dain | 43
Mon Zo Ir Neta | 68
Mon Des Ir Sar | 75