Kod Bulmacaları


22

Bu bir mücadelesidir. Eğer bir polis iseniz (çapraz yapıcı), burada bir soyguncu iseniz (çapraz çözücü) arkadaş sorusunu yanıtlayın . Her iki rolü de üstlenebilirsin.

Polisler (Puzzlers)

Göreviniz , kelime veya ifadelerin yerine kod parçacıklarının ipuçlarına çözüm önerdiği 10 × 10'luk bir bulmaca yazmaktır . Her ipucu boş bir karakter dizisi olacaktır, öyle ki ifade ettiği kod parçacığını çalıştırma diziyi stdout'a basacaktır.

Gönderiniz üç şey içermelidir:

  1. Sizin boş 10 × 10 çapraz ızgara, kullanma #için koyu renkler (ipucu ayırıcıları) ve _için ışıkları (hücreler doldurulacak).
    • 2 veya daha fazla ışığın her yatay veya dikey sırası (koyu veya ızgara kenarı ile sınırlandırılmış) bir ipucu yazmanız gereken bir giriştir. Kolaylık sağlamak _için, her girişin başında benzersiz bir karakter tanımlayıcıyla (örneğin 1, 2, ..., A, B ) değiştirerek bunları normal şekilde (soldan sağa, yukarıdan aşağıya) numaralandırmanız gerekir. , ...).
    • Izgarasında herhangi bir sayıda koyu renk olabilir.
    • Şebekenizde çok sayıda ipucu olabilir.
    • Yatay girişler her zaman soldan sağa ve dikey olanları yukarıdan aşağıya doğru okunur.
  2. Bulmacanızdaki her girişi, aşağı ve yukarıyı içeren bir ipucu listesi.
    • İpucu en az 1 ve en fazla 10 karakter içermelidir.
    • İpuçlarınız boşluk içeriyorsa, gönderinizi biçimlendirirken açık olduklarından emin olun.
  3. Üstbilgi ve altbilgi kodu pasajları, her biri 20 veya daha az karakter.
    • Bunlar sırasıyla bir çözüm snippet'inden önce ve sonra çalışır ve uzun yerleşiklerin isimlendirilmesinde yardımcı olabilir.

Bir ipucunu sağlama prosedürü, ilgili kod snippet'iyle eşleşir:

  1. Başlığını, parçacığını ve altbilgi Concatenate: [header][snippet][footer].
  2. Bunu normal bir program olarak çalıştırın (geçmiş çalışmalardan bağımsız olarak) ve stdout'a ne basıldığına bakın.
  3. Bu ipucu ile eşleşiyorsa pasaj geçerli bir çözümdür.

Basit olması için, yalnızca yazdırılabilir ASCII (altıgen kodlar 20 ila 7E) kullanabilirsiniz. Yalnızca üstbilgi ve altbilgi ayrıca sekmeler ve yeni satırlar içerebilir.

ek Notlar

  • Herhangi bir snippet için, çalıştırmak iyi bir modern bilgisayarda[header][snippet][footer] bir dakikadan fazla sürmemelidir .
  • Programlama dilinizi (ve versiyonunu) belirtmelisiniz.
  • Herhangi bir ortak karma algoritması kullanamazsınız.
  • Harici kütüphaneleri kullanamazsınız.
  • Kodunuzdaki her şey deterministik olmalı, zaman değişmez olmalı ve bir ağ bağlantısına ihtiyaç duymaz.
  • #ve _snippet'lerde (veya başka bir yerde) oluşabilir.
  • Bulmacadaki bazı karakterleri COTO’nın yaptığı gibi ortaya çıkarabilirsiniz . Hala ışık sayıyorlar. Soyguncular bunları kullanmak için gerekli değildir, sadece güzel ipuçları.

Örnek

Python 3. Başlığını kullanarak Basit bir örnek: p=print;t=5;. Altbilgi yok.

Çözülmemiş ızgara:

##########
1___2___##
_###_#####
_###_#####
_###_#####
####_#####
####_#####
###3______
####_#####
####_#####

İpuçları:

ACROSS
1: 8
3: A!
DOWN
1: 7
2: 10

Geçerli çözüm:

##########
print(8)##
(###+#####
7###=#####
)###5#####
####;#####
####p#####
###p('A!')
####t#####
####)#####

Soyguncular (Çözücüler)

Senin görevin polisler tarafından gönderilen bulmacaları çözmektir. Bulmacada verilenle aynı programlama dilini kullanmanız gerekir, ancak aksi halde tüm ipuçlarıyla eşleşen herhangi bir çözüm geçerlidir.

Kendi bulmacalarınızı çözmeyebilirsiniz ve diğer tüm bulmacalara yalnızca bir kez cevap vermeye çalışabilirsiniz.

Çözümlerinizi tamamlayıcı soruya göndermeyi unutmayın .

puanlama

Bir bulmaca 72 saat içinde çözülürse artık koşularda değildir. Bir bulmaca 72 saat çözülmeden geçtikten sonra, bağışıklık kazandığı kabul edilir ve yaratıcı çözümü (mesajlarını düzenleyerek ve bağışıklık işaretleyerek) gönderebilir.

Kazanan polis, immün bulmacayı en az darks ( #) alan kullanıcıdır. Bağlar halinde en yüksek oyu alan başvuru kazanır. Cevabın kabulü için çözüm kaydedilmelidir.

Kazanan hırsız en çok şifreyi çözen kullanıcıdır. Tie-breaker, eşlik eden sorudaki oylarının toplamıdır .


1
Kod Tetris'ten zaten sıkıldınız mı?
feersum

3
@ feersum Kimse bunları çözemiyor. Bunun soyguncularda daha kolay olacağını umuyorum.
Calvin'in Hobileri

9
Üstbilgi:, sha512sum <<<"altbilgi: "|head -c10(Bash cinsinden).
jimmy23013

1
@ user23013 Yikes. Sanırım hash yapmayı yasaklayacağım.
Calvin'in Hobileri

2
@Rololvertice O zamana kadar yine de derhal çözüldüğü söylenebilirdi ... belki de haklısın. Ancak bunu değiştirmek için çok geç kaldığına katılıyorum (hiç karartmadan iyi bir bilmece yapmak önemsiz değildir).
Calvin'in Hobileri

Yanıtlar:


5

JavaScript, 0 koyu - bağışıklık

 __________
| 123456789A |
| B |
| C |
| D |
| E |
| F |
| G |
| H |
| I |
| J |
 ----------

İşte hepiniz için bir çözüm:

 __________
| ~ 709-51 + 90 |
| -0x33-31 & 8 |
| 8-42 ^ 07 * 70 |
| 306% 4 + 0x34 |
| 0xb1204% 51 |
| -1 + 2 + x> H- |
| '4' * 32 >> 07 |
| Math.E> 2.7 |
| 8 / 2-1-7 * 22 |
| '6'-025036 |
 ----------
Header: var h=8,x=5;console.log(

Footer: );

İpuçları

Karşısında
1,671
B. 8
C. -460
D. 54
E. 33
Yanlış
G. 1
H. true
I. -151
J. -10776

Aşağı
1. NaN
2. 15
3. "1131t2"
4. 64
5. -48
6. 49
7. 6
8. gerçek
9.8
A. 315

Yanlış hesapladığım herhangi bir sonuç olduğunu düşünüyorsanız bana bildirin.


3
Aşağı ve Aşağı karışmadığına emin misin?
Gurur haskeller

3

CJam, 41 darks - Martin Büttner tarafından çözüldü

Üstbilgi, altbilgi veya ayrılmış kareler yok. Bana herhangi bir potansiyel hata bildirin.

Başlangıçta aklımdaki çözümün boşluğu yoktu - Martin Büttner'ın bulduğu çözüm bu değildi.

Yazı tahtası

#5###6#7__
#4_3____##
1##_#_#_#A
2____##_#_
_##_##9___
_##_#E#_#_
_#C#8_____
##_#_####_
##B_______
D__#_####_

İpuçları

Karşısında

2: [[4 3]]
4: 24717
7: 32
8: E
9: "" (there is ONE trailing space after the quotes)
B: "m
D: 124

Aşağı

1: [2 2 2 3]
3: 3010936384
5: 2017
6: "18"
7: ' "\"\""
8: !{}
A: -3u3
C: -1
E: Stack: ""

İyi şanslar!


4
Çözüldü. Mücadele için teşekkürler, bu gerçekten eğlenceliydi! :)
Martin Ender

3

C - 26 koyu, 5 ayrılmış - feersum tarafından çözüldü

   Clue #          Reserved
+----------+     +----------+
|1_2__3_#4_|     |"      #  |
|_#_##_#5_#|     | # ## #  #|
|6___7_8___|     |      8   |
|_#_#9____#|     | # #     #|
|_#AB_#C___|     | #   #    |
|D_#E_____#|     |  #      #|
|_#F#_#_#_#|     | # # # # #|
|_#GH__#I__|     | #    #   |
|_##J_#K#_#|     | ##  # # #|
|L___#M____|     |2 * # _   |
+----------+     +----------+

Başlık

z[4]={9};main(_){_=

Alt Bilgi

;printf("%d",_);}

İpuçları

ACROSS:
1. 48
4. -8
5. -2
6. 0
9. 73
A. 9
C. 0
D. 5
E. 0
G. -2
I. 0
J. 0
L. 18
M. 6247483

DOWN:
1. 45
2. 7680
3. 22
4. -97
5. 0
7. -1073741824
8. 8
B. 0
F. 42
H. 0
K. -2

5 aşağı nedir?
feersum

@feersum 5 aşağı 0 (düzenlenmiş cevap)
es1024

Gcc ile derlenir ve argümanlar olmadan mı çalıştırılır?
grc

@ grc evet öyle
es1024 25:14


3

MATLAB - 28 Karanlık

Feersum tarafından çözüldü

Kurulları

  CLUE #         RESERVED
 __________      __________
|12 3 4 5  |    |    [     |
|# # # # ##|    |#s# # # ##|
|6   # #7 8|    |    # #   |
|# # # # # |    |# # # # # |
|9 A       |    |6  7  y   |
|#B  # # # |    |#   # # # |
|C         |    |        g |
|# # ### # |    |# # ### # |
|# # ##D # |    |# # ##  # |
|E         |    |d         |
 ¯¯¯¯¯¯¯¯¯¯      ¯¯¯¯¯¯¯¯¯¯

Başlık

g=4;o=magic(3);disp(

Alt Bilgi

);

İpuçları

Karşısında

  • 1 2
  • 6 -1i
  • 7 eye(3)
  • 9 0
  • B sqrt(-1)
  • C 1/25000
  • D 0
  • E [0;0;0]

Aşağı

  • 2 log(1i)
  • 3 100
  • 4 10^16
  • 5 [2,2;2,2]
  • 8 512
  • bir inv(1i)
  • D zeros(3)

Bu bulmacanın ipuçlarında bazı şeyleri değiştirdiğimi unutmayın. MATLAB çıkışları her zaman çok ayrıntılı olduğundan (örneğin, hayali birimin basılması bile 1i10 karakteri [ 0 + 1.0000i] geçiyorsa ) ve varsayılan çıkış biçimine bağlı olarak değişebildiğinden, ipuçlarının tümü, görüntülenen çıkışı karşılık gelen çözümlerinkiyle aynı olan basit ifadelerdir .

Diğer bir deyişle, gerçek bir ipucu olarak düşünebilirsiniz disp( CLUE ), nerede CLUEolduğu yukarıdaki listelerde 10 karakterlik veya daha az bir ipucu.

Umarım Calvin aldırmaz. Bunun, bulmaca oluşturucuların zor üretilmesi zor çözümler (yani kelimeler) eklemesini engellemesi muhtemel ipucu uzunluğu kuralının ruhunu ihlal ettiğine inanmıyorum.

anahtar

    KEY
 __________
|max([1 2])|
|#s#1#0#*##|
|1i^3#*#o\o|
|#n#+#1#n#(|
|6 -7+eye&1|
|#(i)#1#s# |
|.1 ^ 5*(g)|
|#)#2### #^|
|#*#/##~2# |
|diag(-o)>3|
 ¯¯¯¯¯¯¯¯¯¯ 


3

piton

Feersum tarafından çözüldü

İşte bizi başlatacak biri. İpuçlarını elde etmek için Python 2.7.8 kullandım. İyi şanslar :)

Son pasajı açığa çıkardım, çünkü karma artık yasaklandı. Ayrıca, kılavuzun 36 koyu rengi var (bunu yaparken puanlama bölümünü kaçırdım).

Bunu kolaylaştırmak için birkaç karakter daha ortaya koydum, ancak farklı çözümler de iyi.

Bulmaca ızgarası:

1_234##5##         * . ## ##
_#6_______         #  e /   
_#7__##_##         # * ##6##
8________#        3   %    #
##_#_##_##        ##5# ## ##
#9________        #a   *   b
##_#_##_##        ## # ## ##
A________#        b   7  1 #
##_####_##        ## #### ##
#hash('9')        #hash('9')

İpuçları:

ACROSS
1: 440380.9
6: 12328.7671
7: 72
8: 4519217.0
9: 79920L
A: 1.55826556
B: 7296021944

DOWN
1: 1211477643
2: 17353.0
3: 5.4
4: 1719.0
5: 7514613.78

Başlık:

a=49481
b=97381
x=

Altbilgi:

print`x`[:10]

Netleştirmek için, altbilgi kendi satırında mı yoksa pher snippet'ten hemen sonra mı?
Calvin'in Hobileri

@ Calvin's Hobbies Altbilgi yeni bir çizgide başlar.
grc

A-genelinde bir şey özellikle şeytani mi? Bunun dışında her şey için çalışan bir şebekem var.
feersum

@ feersum Diğerleri gibi matematiksel bir ifade, ama oldukça zor olabilir. Unutmayın, çıktı 10 karaktere kesildi.
grc


3

Javascript ES4 - 37 Koyu, 10 Ayrılmış

Bazzarg tarafından çözüldü

Kurulları

   CLUE #         RESERVED
 __________      __________
|1  2 ###3#|    |     ### #|
| ## #45   |    | ## #I   4|
| ## ## # #|    |:##-## # #|
|6        #|    |         #|
| ## ## # #|    | ## ##.# #|
|7         |    |         ]|
| ## ## ###|    | ## ## ###|
|8   #9    |    | +  #   - |
| ## ## ###|    |'## ## ###|
| ##A      |    | ##   4   |
 ¯¯¯¯¯¯¯¯¯¯      ¯¯¯¯¯¯¯¯¯¯

Başlık

a=3;I=9;t=

Alt Bilgi

;console.log(t);

İpuçları

Karşısında

  • 1 51
  • 4 true
  • 6 8.14159265...
  • 7 "90"
  • 8 0
  • 9 -10
  • bir "HI"

Aşağı

  • 1 5
  • 2 "2pac"
  • 3 3072
  • 5 false

Önceden doldurulmuş karakterlerle on ışık belirtmek için "ayrılmış" olarak gösterilen kartın ikinci bir gösterimini dahil ettiğime dikkat edin. Calvin'in bunları karanlık mı yoksa ışık mı olarak saymak istediğinden emin değilim.

İki ayrı gösterimi kullandım çünkü doldurulmuş karakterlerin bazıları sayılardır ve ipucu sayıları için karıştırabilir ve tahtayı genel olarak kirletebilirler.

Çözümlerin hiçbirinde boşluk karakterleri yoktur, ancak çalışırlarsa ışıkları boşluk karakterleriyle doldurabilirsiniz.

Orijinal çözüm

__________ |{},51###6#| |a##+#I/a<4| |:##-##[#<#| |5+Math.PI#| |}##+##.#+#| |[I+"0"][0]| |'##p##/###| |a+-a#a=~-I| |'##c##=###| |]##"\x48I"| ¯¯¯¯¯¯¯¯¯¯

Görünüşe göre, bazzarg'ın 9 genelindeki çözümü -yanlış yerde, ancak 10bunun yerine ipucunun olması gerekiyordu -10(ipucu ve cevap aslında farklıydı ve aceleyle anahtarı yaptım). Bu nedenle, sadece iki yanlışın bu durumda haklı çıkacağını söyleyeceğiz. ;)


1
Ayrılmış karakterler hakkında ilginç bir fikir. Onları karanlık saymalarını sağlamayacağım çünkü o zaman insanlar onları kullanmama konusunda daha fazla teşvik edici olurdu.
Calvin'in Hobileri

1
Bir bulmaca yaparken aynı problemle karşılaştım ama bu geçerli değil. Clues must contain at least 1 and no more than 10 characters.
jimmy23013

JavaScript'i bilmiyorum ama [object Window](N kullanıcısı işaret ettiği gibi) yine de geçersiz olan bir şey belirli bir ortamda çalıştırılmaya bağlı gibi geliyor. Bu doğruysa belirtilmemeli mi?
feersum

Kullanıcı 23013 haklıdır. 8.141592653589793ve [object Window]çok uzun.
Calvin'in Hobileri

İfadeyi 6 kez kesebilirim. Ondalık basamak sayısından bağımsız olarak sayının ne olduğu (ve nasıl üretileceği) açık olmalıdır. 9 genelinde, çıktı gerçekten tarayıcıya özgü (kullandığım biçimin beş büyük tarayıcıda da ortak olduğuna inanıyorum). Bu durumda asıl cevabı değiştireceğim.
COTO

1

Python 2, 0 koyu - Bağışıklık

Python 2 yalnızca printaltbilgideki nedeniyledir . İfadeyi değiştirirseniz, Python 3'te de aynı şekilde çalışması gerekir print.

Bunu yaparken çok eğlendim ve genel olarak sonuçtan memnunum ve biraz heyecanlıyım.

Eğer altbilgimin çok acımasız olduğunu düşünüyorsanız bana söyleyin (kabadayı zorlamak için bir program kullanmaktan kaçınabileceğinizi bilseydim, zulmü kaldırırdım.) Eğlenceli gerçek: başlıktaki değişkenler 'ekmek' yazımını.

 __________
|123456789A|
|B         |
|C         |
|D         |
|E         |
|F         |
|G         |
|H         |
|I         |
|J         |
 ----------

Başlık:

b=7;r=3;e=6;a=.1;d=

Altbilgi:

;print 2*str(d)[::3]

İpuçları:

Karşısında

1. 74
B. 282.e2
C. 77
D. 8
E. 94
F. 247351.862e1
G. 99
H. -5312-5312
I. -32
J. 300000

Aşağı

1. 61000
2. 251
3. 09333.8333
4. 7878
5. -70
6. -0045.164
7. 88
8. 61225
9. -350
A. 69971

Çözüm

__________ |r+111-37-r| |'2.48e+22'| |6+765-0*56| |30/7%140*2| |0xe6b/0x27| |18**+9.1-9| |047--01551| |04/-7.0131| |0-1512%989| |'30000700'| ----------

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.