Bana biraz suşi yap


11

Öğle yemeği zamanı, açım ve Sushi Bar'ınıza geldim. Sen Sushi Chef ve bana biraz suşi yapmak için tam bir program veya işlev üretmek zorunda!

resim açıklamasını buraya girin Kredi: Wikipedia

Feragatname: Görüntü yalnızca örnekleme amaçlıdır ve tam olarak ürünü temsil etmek zorunda değildir.

(Bir kamyon şoförü grev nedeniyle) sınırlı maddeler olmasına rağmen benim için iyi olacak.

Sahip olduğunuz malzemeler (bol miktarda):

  • (Yapılan: Nori deniz yosunu \/_¯|)
  • Ham Ton Balığı ( T)
  • Çiğ Somon ( S)
  • Çiğ Avokado ( A)
  • Suşi Pirinç ( o)

Bu malzemelerle müşterileriniz için bazı güzel makiler yapabilirsiniz.

Minimum siparişiniz 2 makis için 1 $, sadece çiftlerde makis yaparsınız ve yalnızca tamsayı numaralarını ödeme olarak kabul edersiniz. Kişi başına 50 $ 'a kadar (toplam girdi) siparişleri kabul ediyorsunuz, çünkü yalnızsınız ve tüm müşterilerinizi tatmin etmelisiniz.

Müşterinin siparişlerini herhangi bir makul formatta standart girdiden [1,T],[2,S],[3,A]almanız gerekir , örneğin: bu, çıktı almanız gerektiği anlamına gelir:

  • İki Ton Balığı Makisi
  • Dört Somon Makisi
  • Altı Avokado Makisi

Bir maki tam olarak şu şekilde yapılır:

   _____  
  /ooooo\ 
 |ooTTToo|
 |\ooooo/|
 | ¯¯¯¯¯ |
  \_____/ 

Ve iyi bir Sushi Chef olduğunuzdan, makileri her zaman herhangi bir tipteki parçalarla kare şeklinde veya en fazla dikdörtgen şeklinde (kareye olabildiğince yakın) boşluk bırakmadan düzenlersiniz. Genel şekil aynı zamanda, yukarıdaki kısıtlama göz önüne alındığında, boşluk olmadan, kareye olabildiğince yakın bir şekilde kare veya dikdörtgen şeklindedir.

Örnek giriş / çıkışlar:

Input: [1,T],[2,S],[3,A]

Valid Output:
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 

Valid Output:
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo||ooTTToo||ooTTToo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/   

Not Valid Output:
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooAAAoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooAAAoo||ooTTToo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 

Not Valid Output:
  _____    _____    _____    _____    _____    _____    _____    _____    _____    _____    _____    _____
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/ 


Not Valid Output:
  _____    _____    _____    _____    _____    _____    _____
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/ 


Input: [1,S]

Valid Output:
  _____    _____  
 /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/ 

Valid Output:
  _____  
 /ooooo\ 
|ooSSSoo|
|\ooooo/|
| ¯¯¯¯¯ |
 \_____/ 
  _____  
 /ooooo\ 
|ooSSSoo|
|\ooooo/|
| ¯¯¯¯¯ |
 \_____/ 


Input: [1,A],[1,T],[1,S]

Valid Output:
  _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooTTToo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/ 
  _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooTTToo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/ 

Valid Output:
  _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/ 
  _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/ 

Input: [1,T],[1,A],[2,S]

Valid Output:
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 

Valid Output:
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo||ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/     

Valid Output:
  _____    _____  
 /ooooo\  /ooooo\ 
|ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/ 
  _____    _____  
 /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/ 
  _____    _____  
 /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/ 
  _____    _____  
 /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/   


Input: [1,T],[1,S],[7,A]

Valid Output:
  _____    _____    _____    _____    _____    _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooSSSoo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____    _____    _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooTTToo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/    

 Valid Output:
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____     
 /ooooo\  /ooooo\    
|ooAAAoo||ooAAAoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/        
  _____    _____     
 /ooooo\  /ooooo\    
|ooSSSoo||ooSSSoo|   
|\ooooo/||\ooooo/|   
| ¯¯¯¯¯ || ¯¯¯¯¯ |   
 \_____/  \_____/    
  _____    _____       
 /ooooo\  /ooooo\  
|ooTTToo||ooTTToo|
|\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/   

Kurallar:


3
"Sen Suşi Adamısın": Okuyucunun erkek olduğunu varsaymanın, bilinçsiz toplumsal cinsiyet yanlılığının bir tezahürü olduğuna inanıyorum;
Greg Martin

2
@GregMartin Yorumunuz için teşekkürler. Haklısın. Herhangi bir cinsiyet belirtimini önlemek için başlığı ve metni değiştirdim.
Mario

Harika, değişiklikleri seviyorum!
Greg Martin

İlk test durumunda [1,T],[2,S],[3,A], bunları üst sıra TTSA, ikinci sıra SSSA ve alt sıra AAAA olacak şekilde düzenlemek geçerli mi yoksa geçersiz mi? Bunun "birbirine yakın tüm benzer türleri" karşılayıp karşılamadığı açık değildir; kesinlikle dokunuyorlar.
Greg Martin

@GregMartin hayır önerdiğiniz gibi geçerli değil, her bir grubu kareler veya dikdörtgenler halinde düzenlemelisiniz, sizin durumunuzda S ve A değil. Örneğin SSSS, TAAA, TAAA olabilir.
Mario

Yanıtlar:


2

Python 3, 314313 bayt

l=["  _____  "," /ooooo\ ","|oo%s%s%soo|","|\ooooo/|","| ¯¯¯¯¯ |"," \_____/ "];T=('T',)*3;S=('S',)*3;A=('A',)*3;i=eval('['+input()+']');x=sum(map(lambda x:x[0],i));m=[]
for f in i:m+=[f[1]]*f[0]
for p in 1,0:
    for j in l:
        for k in range(x):print((j%m[k]if '%s' in j else j),end='')
        print()

Bu meydan okumaya girişme. Zor!

Örnek Çıktı:

[1,T],[1,S],[7,A]
  _____    _____    _____    _____    _____    _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/ 
  _____    _____    _____    _____    _____    _____    _____    _____    _____  
 /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\  /ooooo\ 
|ooTTToo||ooSSSoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo||ooAAAoo|
|\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/||\ooooo/|
| ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ || ¯¯¯¯¯ |
 \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/  \_____/ 

Sekmeleri kullanmak yerine birinci seviye girinti için boşluklar ve ikinci seviye girinti için sekmeler kullanabilirsiniz. Bu size toplam 2 bayt kazandıracaktır.
Ad Hoc Garf Hunter

İçindeki alan '%s' inda gereksizdir.
Ad Hoc Garf Hunter

sonra alana ihtiyacınız yok if. Python2 size bir girinti kaydeder ve ayrıca reklam girişini yazdırır. lambda kullanmak zorunda kalırsanız haritalar anlamadan daha uzundur.
Maltysen
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.