(Umarım hala senin için Şükran günüdür)
Şükran günü yemeğiniz için bir hindi var ama nasıl eşit olarak dağıtacağınızı bilmiyorsunuz. Sorun şu ki, bazı insanlar diğerlerinden daha fazla yemek, bu yüzden bir çözüm bulmanız gerekiyor
Giriş
İki giriş olacaktır. Birincisi çeşitli insanların ascii sanatı olacak.
o
o \|/
\|/ |
| |
/ \ / \
ascii-art özellikler
Her insan 3 sütun genişliğinde yer alır. Her kişi tek bir boşluk sütunu ile ayrılır. Her insanın en tepesi bir o
. Aşağıda o
, telafi 1
ve -1
x vardır \
ve /
sırasıyla. Girdideki o
ikinci ila son satır arasında, |
kişi başına bunların miktarı "yükseklik" tir. Her bir kişiden çıkarmanız gereken tek veri "boyudur".
Her zaman en az bir kişi olacaktır. Her insanın her zaman en az 2 yüksekliği vardır. Programınızın işlemesi gereken maksimum yükseklik en az 64 yüksekliktir.
Boşluklarla doldurulmuş girdinin bir dikdörtgen oluşturmasını istiyorsanız, lütfen cevabınızda bunu belirtin.
İkinci girdi hindi. Hindi aslında bir türkiye değil, daha NxM
çok türkiye boyutlarında. İkinci girdi ise 3x2
, hindi 3 * 2 boyutlarında ve toplam 6 alana sahiptir.
Çıktı
Çıktı bir liste veya dilinizin en yakın alternatifi olabilir (örn. Dizi). Değerler boşluklarla ayrılmış bir dize de çıkarabilirsiniz.
Her bir kişi için değerler, girildikleri sıraya göre çıkarılmalıdır.
Meydan okuma
Amacınız hindi bölgesini insanlar arasında bölmek.
Örnek bir senaryo:
Bunların , sırasıyla 3
ve yükseklikleri olan iki kişi olduğunu varsayın 6
. Türkiye varsa 5x3
. Türkiyenin dağıtılması gereken toplam alanıdır 15
.
Şimdi bunu herkes arasında nasıl dağıtırsınız? Bunu nasıl yapacağınız aşağıda açıklanmıştır:
the_persons_height
TurkeyForAPerson = -------------------- * turkey_area
sum_of_all_heights
Bu, yüksekliği olan ilk kişi 3
için 3/9*15
hindi alacaktır veya 5
yüksekliği olan ikinci kişi veya hindi 6
alacaktır .6/9*15
10
Çıktı
Çıktı sadece rakamlardan oluşmalı .
ve bonus için gitmeyi seçmediğiniz sürece. Bu durumda, yalnızca rakamlardan, boşluklardan ( ) ve eğik çizgiden (
/
) oluşabilir .
Tam örnek
Giriş:
6x5
o
|
o \|/
\|/ |
| |
| |
/ \ / \
Çıktı:
11.25 18.75
Bonuslar
-20% Bonus: Bir kesir çıkarırsınız (basitleştirilmelidir), bunun karışık mı yoksa uygunsuz bir kesir mi olduğu önemli değildir .
puanlama
Bu kod golf bayt en kısa kodu kazanır!