Tabii ki, SE ağı tuvalette nasıl saygılı olacağı konusunda çok bilgilidir, ancak bir özetlemeye ihtiyaç duyanlar için, saygılı olmak tuvaleti yıkamak anlamına gelir. diğerlerinden mümkün olduğunca.
Meydan okuma
Hangilerinin bir dize olarak kullanıldığını gösteren bir dizi tezgahın bir planı göz önüne alındığında, işinizi yapmak için en saygılı yerin olduğu bir işlev veya programdan geri dönmeli veya yazdırmalısınız.
Girdi
0 1 2 3 4 5 <- The stall number which is not actually visible in the input.
| | |-| |-|-| <- the stalls
Tezgahlar soldan sağa doğru artan şekilde numaralandırılmıştır. Her zaman en az bir boş durak olacaktır. Bir girişte en fazla 50 durak olabilir. Ayrıca bir dizi ya da dize olarak giriş alabilir 0
s ve 1
bunu yapmak isterseniz s veya Boolean.
Kullanılan tezgahlar içlerinde -
(borular arasında) bulunur.
Çıktı
Gidilecek en saygılı durak, kullanılanlardan ortalama olarak en uzak olanıdır. İki durak arasındaki mesafe, üstlerindeki sayıların farkının mutlak değeridir.
Sadece açık olmak gerekirse: sadece komşu olanlara değil tüm tezgahlara olan ortalama mesafeyi buluyorsunuz .
Boş olana gitmek için en saygılı olan en az sayıdaki çıktısını almalısınız .
Örnekler
Input:
|-| |-| OR 101
Output:
1
Input:
| | |-| |-|-| OR 001011
Output:
0
Input:
|-| |-| | | | |-|-| OR 101000011
Output:
1
Input:
|-| | | | | |-|-| | | | | OR 100000110000
Output:
11
Input:
|-|-|-|-| | | | | | |-| OR 11110000001
Output:
9
Input:
|-| | OR 10
Output:
1
Input:
|-| | |-| OR 1001
Output:
1
Bu kod golf , bayt cinsinden en kısa kod kazanır!
Cevabınızda 0 veya 1 tabanlı indeksleme kullanabilirsiniz - hangisini tercih ederseniz; 1 tabanlı indeksleme kullanıyorsanız, cevabınıza açıkça söylemelisiniz.
[1,0,0,1]
Bir sınama durumu olarak eklemelisiniz . Mevcut test durumlarının hiçbiri, ilişkilerin doğru bir şekilde kırıldığını doğrulamaz.
101000011
1 döndürür (4 veya 5 yerine)?