Çoğu insan uykuya dalmak için koyun sayma konusuna aşinadır. Bazıları bir çitin üzerinden atlayan bir koyun sürüsü var ve siz atlarken koyunları sayıyorsunuz. Sözde, bu zihninizi sakinleştirmeye yardımcı olur ve sizi uykuya dalmanız için uyku benzeri bir duruma sokar.
Sayılmayı bekleyen sağa bakan bir ASCII koyun:
'00^>
||
İşte bir çitin üzerinden atlayan bir ASCII koyun:
'00^>
/\
++
İşte sola bakan, daha önce sayılmış olan:
<^00'
||
Meydan okuma
İki giriş tamsayılar göz önüne alındığında, n
ve m
ile, n > 2
kaç koyun toplam açıklayan ve m > 0
önceden sayılmış kaç koyun diyerek çıkış sayma koyun bir ASCII sanatı gösterimi uykuya dalmak.
Şimdi bükülme için:
- Koyunların içerdiği kalemlerin büyüklüğü nedeniyle, üst sıra yalnızca maksimum
10
her zaman en üst sırada olması gereken atlayan koyunları saymaz, koyun . - Sonraki satırlar kendi kalemlerinin dışında koyunlara sahip olamazlar (ikinci sırada solda, ilk sırada olduğundan daha fazla ve sağda aynı şekilde daha fazla koyun olamaz).
- Varsa
11
veya daha fazla toplam koyun, üst satır olmalıdır10
artı o atlama koyun. - Önde / arkadaki boşluk ve koyunlar arasındaki boşluk, şu sürece önemli değildir:
- Koyunlar arasında en az bir boşluk karakteri vardır
- Tüm karakterler uygun şekilde sıralanır.
Bu kurallara uyulduğu sürece, koyunların gerçek düzenlemesi sizin uygulamanıza bağlıdır.
Örnekler
Örneğin, işte n=3
ve m=1
en basit durum.
'00^>
'00^> /\ <^00'
|| ++ ||
İşte n=11
ve m=6
, bir yatay çizgiye sığabilecek en koyun.
'00^>
'00^> '00^> '00^> '00^> /\ <^00' <^00' <^00' <^00' <^00' <^00'
|| || || || ++ || || || || || ||
İşte bunun ile farklı bir örnek, n=11
vem=1
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00'
|| || || || || || || || || ++ ||
n=30
Ve ile daha büyük bir örnekm=12
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> <^00' <^00'
|| || || || || || || || || ||
'00^> <^00' <^00'
|| || ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
<^00' <^00'
|| ||
İşte n=17
ve ile bir örnekm=2
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00'
|| || || || || || || || ++ || ||
'00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || ||
İşte n=19
ve ile bir örnekm=3
'00^>
'00^> '00^> '00^> '00^> '00^> '00^> '00^> /\ <^00' <^00' <^00'
|| || || || || || || ++ || || ||
'00^> '00^> '00^> '00^> '00^> '00^> '00^>
|| || || || || || ||
'00^>
||
Bunların hepsinin örnek olduğunu unutmayın . Sonuncusu için, sağ tarafta dikey bir koyun dizisi oluşturabilir, bu da sol tarafın iki satıra sığmasını sağlar. Ya da belki de sağ taraftaki 2x2 karelik bir koyun, sol taraftaki koyunları da iki sıraya sığdıracaktır. Vb.
G / Ç ve Kurallar
- Giriş herhangi bir makul biçimde ve herhangi bir uygun yöntemle alınabilir .
- Karakterlerin uygun şekilde hizalanması şartıyla, öndeki / sondaki yeni satırlar veya diğer boşluklar isteğe bağlıdır.
- Tam bir program veya bir işlev kabul edilebilir. Bir işlev varsa, çıktıyı yazdırmak yerine döndürebilirsiniz.
- Çıktı konsola olabilir, bir dize listesi olarak döndürülebilir, tek bir dize olarak döndürülebilir, vb.
- Standart boşluklar yasaktır.
- Bu kod golfüdür, bu nedenle tüm olağan golf kuralları geçerlidir ve en kısa kod (bayt cinsinden) kazanır.
n=11
vem=9
n=11
, öyle ki 0<m<=10
. Bu, tüm koyunların üst sırada olmasını ve çitin solunda ( n-1-m
) ve sağında ( m
) dinamik sayıda koyun olmasını sağlar ve sabit kalem boyutlarını kullanamaz.