Manufactoria'daki girdinin son rengini döndür


10

Bu bulmaca Manufactoria zorlukları serimde bir sonraki.

Arka fon

Manufactoria bir oyun / iki boyutlu programlama dilidir. Oynatıcı, istenen çıktıya ulaşmak için bir kuyruğu değiştirecek programlar oluşturmalıdır. Öğrenmesi kolay ama ustalaşması zor, bu yüzden çok çeşitli zorluklar yaratmaya katkıda bulunuyor. Ne hakkında konuştuğumu bilmiyorsanız, oyunun ilk birkaç öğretici seviyesini oynamanızı tavsiye ederim.

Meydan okuma

Sorun, giriş dizesinin en son öğesini döndürecek bir makine yaratmaktır. Bunu daha da zorlaştırmak için, giriş dizesi dört rengin de herhangi bir kombinasyonu olabilir .

Kullanılacak resmi özel seviye burada bulunur:

http://pleasingfungus.com/Manufactoria/?ctm=Last_in_Line!;IN:_a_series_of_colors_OUT:_the_very_last_color;byrgyrbyrrgry:y|bbrrbryyyrrbr:r|ggryybrryr:r|b:b|:|gyrbrygbrygbyrb:b|brbrbryyrygbrg:g|rrrrrrrrrr: r; 13; 3; 0 ;

Bu haftanın zorluğu çoğunlukla sıkıştırma fikrine odaklanıyor. Bu meydan okumayı çok büyük bir taşıma bandı gerektirecek şekilde seçtim. Girişte dört rengin de görünmesi, bilgi depolamanın çok zor olduğu anlamına gelir.

Sıkıştırma girişiminde bulunmama rağmen, ilk çalışma prototipim 114 parçaya sahipti ve 13x13 boşluğuna sığacak neredeyse hiç yer kalmadı.

puanlama

Bu zorluğun amacı mümkün olduğunca birkaç bölüm kullanmaktır. Skor yerleştirilen parça sayısıdır ve en düşük skor kazanır.

Sadece 8 test durumu olmasına rağmen, yaratımınız teorik olarak herhangi bir test senaryosu altında çalışabilmelidir. Sunulan test senaryoları hata ayıklama amaçlıdır.

Örnekler

in:  byrgyrbyrrgry
out: y
in:  ggryybrryr
out: r
in:         #don't you love degenerate cases?
out:
in:  gyrbrygbrygbyrb
out: b

Yanıtlar:


6

65 parça

resim açıklamasını buraya girin Dürüst olmak gerekirse, zaten yayınlanan çözümlerde görene kadar okuyucu çiftlerini doğrudan birbirine karşı koyma fikrini bile bulamadım. Ama daha sonra bir çok optimizasyon hilesi bulmaya başladım.

bağlantı


... konveyör bantlarını birbirinin üzerine koyabilir misiniz?
SuperJedi224

7

4

4

Konveyör bantların biraz yeniden düzenlenmesi bunu 81 parçaya indirdi. Buraya bakın . Ayrıca, renkleri değiştirmek 6:23'ten 5:38'e kadar (gerçekten önemli olmasa da) daha hızlı hale getiriyor gibi görünüyor. URL için bu macuna bakın .
Volatilite

@Volatility 3 bölüm için teşekkür ederiz. Daha hızlı görünüyor tamamen test vakalarına bağlı, bu yüzden gerçekten önemli değil ;-)
Howard

2
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.