İki adet odun vardır. Her ikisi de düz bir gövde ve vücudun altında bazı ekstra bloklardan oluşur. 0,4,7,9,10 konumlarında (0 dizinli) konumlarda fazladan blokları olan bir örnek parça:
XXXXXXXXXXX
X X X XX
Parça, 01ikili konumda inci konumunda ibir blok olup olmadığını gösteren ikili bir dizi olarak temsil edilebilir i. Üstteki örnek olarak gösterilebilir 10001001011.
İkincisini dikey olarak çevirerek (ve belki de yatay olarak çevirerek) iki parçayı bir araya getirebiliriz. Kapaklardan sonra, iki parçanın 3 yüksekliğe sahip olması için bir araya getirilebileceği bir hizalama bulabiliriz.
Two example pieces:
XXXXXXXXXXX XXXXXXXX
X X X XX XXX
Second piece flipped vertically and horizontally:
XXXXXXXXXXX
X X X XX
XXX
XXXXXXXX
Pieces put together:
XXXXXXXXXXX
XXXXX X XX
XXXXXXXX
Örnek toplam 12 blok genişliğiyle sonuçlanmıştır.
İki parçayı temsil eden giriş olarak iki dizge alan ve 3 yükseklikte ulaşılabilir minimum genişliğe bir tamsayı çıkaran bir program veya işlev yazmalısınız .
Giriş
- Karakterden oluşan iki dizeleri
0ve1. - Her iki dize de en az bir karakter içerir.
- İki dizeyi tek bir boşlukla birleştirilen bir olarak almayı seçebilirsiniz.
Çıktı
- Tek bir pozitif tamsayı, ulaşılabilir minimum toplam genişlik.
Örnekler
0 0 => 1
1 0 => 1
1 1 => 2
11 111 => 5
010 0110 => 5
0010 111 => 5
00010 11011 => 6
01010 10101 => 5
1001 100001 => 6
1110001100001 1100100101 => 14
001101010000101 100010110000 => 16
0010110111100 001011010101001000000 => 21
0010110111100 001011010101001001100 => 28
100010100100111101 11100101100010100100000001 => 27
0010 10111 => 5
0100 10111 => 5
0010 11101 => 5
0100 11101 => 5
10111 0010 => 5
10111 0100 => 5
11101 0010 => 5
11101 0100 => 5
Bu kod golf yani en kısa giriş kazanır.