“Kenar veya izole köşe” silme oyununun kazanma stratejisi


11

Bu mükemmel bilgi oyunu, bildiği / çalıştığı grafiklerde oynanıyor mu?

Bir grafik verildiğinde G,=(V,E), iki oyuncu sırayla bir kenar veya izole bir düğüm seçer. Oynatıcı bir kenar e=(u,v) seçerse, u ve iki düğüm volay kenarlarıyla birlikte silinir. Oynatıcı yalıtılmış bir düğümü alırsa, düğüm silinir. Hareket edemeyen ilk oyuncu oyunu kaybeder.

Kazanan bulmanın karmaşıklığı nedir?

Benzer oyunlara referans var mı?


1
İzole düğüm izole edilir varsayalım? Eğer öyleyse, oyuncu 0, problemi iki eşit bileşene ayırarak ilk hamleyi harcayarak ve ardından izomorfizmi korumak için rakip bileşenlerin karşı bileşen üzerinde hareketini oradan başlayarak yansıtarak tüm boş olmayan yollarda da kazanır. Bu, oyuncu 1'in bir döngüde kazandığı anlamına gelir, çünkü ilk hamle sorunu bir yola indirir.
Yonatan N

2
@YonatanN: evet izole edilmiş bir düğüm seçilebilir (ve çıkarılabilir); ancak simmetri stratejisi eşit uzunluktaki yollar üzerinde çalışır (oyuncu 0, ilk hamle olarak 2 merkezi düğümü alır, sonra 1. oyuncunun hareketlerini yansıtır), ancak tek uzunluktaki yollarda değil: stratejiyi bir uzunluk yoluna uygulamaya çalışın 11 ve işe yaramaz (gerçekten de 11 uzunluktaki bir yol için kazanan oyuncu 1'dir).
Marzio De Biasi

5
@Marzio De Biasi: Üzgünüm ama güzel oyunlar oynadığımda normalde elle oynuyorum. Hata yapmadığım sürece, oyuncu 0'ın kazanma stratejisi vardır: Şuna dikkat edin: a) P1, P2, P5 ve P8 için oyuncu 0 her zaman kazanır. b) P3 ve P7 için, oyuncu 1 her zaman kazanır. c) P4 ve P6 için, oyuncu 0 kazanmaya veya kaybetmeye karar verebilir. Şimdi P11 durumunda: - P11 düğümlerini v1, v2, ... v11 ile numaralandırın. - Oyuncu 0 v9, v10 kenarını alır ve gerisi izole edilmiş v11 ve P8 düğümüdür. Oyuncu 1 v11 alırsa, oyuncu 0 eşit bir yolu olduğu için kazanır. Aksi takdirde, 0 oyuncusu a), b) ve c) kazanır.
user13136

1
Programıma göre n≤100 değerleri, ilk oyuncunun n köşesi olan yolda oyunda kaybedeceği şekilde 3, 7, 23, 27, 37, 41, 57, 61, 71, 75, 91 ve 95. Ne yazık ki, garip olmaktan başka bir örüntü görmüyorum (zaten biliniyordu) ve OEIS herhangi bir eşleşme göstermiyor.
Tsuyoshi Ito

1
@TsuyoshiIto: ... ikili farkı al: (3 7) (23 27) (37 41) (57 61) (71 75) (91 95) ve 4 4 ​​4 4 4 4 elde edersiniz ... desen :-) .... (3 ... 23) ... (37 ... 57) ... (71 ... 91) ve sen 20 20 20 ... başka bir tane al! :-D
Marzio De Biasi

Yanıtlar:


2

Bir güncellemeyi yalnızca cevaptan ( hala açık olan ) farklı tutmak için kendi kendine yanıt olarak gönderirim .

Yorumlarda gösterildiği gibi (Tsuyoshi Ito sayesinde) sorun, yollar için polinom zamanı çözülebilir:

iif ( n mod 34 ) { 3 , 7 , 23 , 27 }Wbenn(Pn)=1(nşık34){3,7,23,27}

0'dan başlayarak, nim değerlerinin (hesaplanan) dizisi periyodiktir:

0,1,1,0,2,1,3,0,1,1,3,2,2,3,4,1,5,3,2,2,3,1,1,0,3,1,2,0,1,1,4,4,2,6,
4,1,1,0,2,1,3,0,1,1,3,2,2,3,4,4,5,7,2,2,3,1,1,0,3,1,2,0,1,1,4,4,3,6,
4,1,1,0,2,1,3,0,1,1,3,2,2,3,4,4,5,7,2,2,3,1,1,0,3,1,2,0,1,1,4,4,3,6,
...
the subsequence rseq of length 34:
4,1,1,0,2,1,3,0,1,1,3,2,2,3,4,4,5,7,2,2,3,1,1,0,3,1,2,0,1,1,4,4,3,6
is repeated

Titiz bir matematiksel kanıt üzerinde çalışmadım, ama fikir:

W i n ( P n ) öğesini hesaplamak istediğimizi varsayalım , n = k 34 + x , daha sonra ilk hareket (bir kenar çekme) yolu bölünmüş olabilirn / 2 farklı şekillerde (N-2,0), (N-3,1), ( n-4,2), ...). Yeni nim değeri şuna eşittir:Wbenn(Pn),n=k*34+x(k4,0x<34)n/2

mex{Pn-2+P0,Pn-3+P1,...,Pn/2+Pn-n/2}

Setin ilk 34 elemanı, elemandan başlayarak tekrarlayan sekansın elemanları ile toplanan ilk tekrarlanmayan sekans (0,1,1,0, ...) (nim) tarafından üretilir. x ) mod 34 .(34-2-x)şık34

Örneğin: :x=0

     0,1,1,0,2,1,3,0,1,1,3,2,2,3,4,1,5,3,2,2,3,1,1,0,3,1,2,0,1,1,4,4,2,6 +
     3,4,4,1,1,0,2,1,3,0,1,1,3,2,2,7,5,4,4,3,2,2,3,1,1,0,3,1,2,0,1,1,4,6 =
mex{ 3,5,5,1,3,1,1,1,2,1,2,3,1,1,6,6,0,7,6,1,1,3,2,1,2,1,1,1,3,1,5,5,6,0 } = 4

X = 0..33 için, ortaya çıkan meks sekansı, tekrarlayan sekansa eşittir:

4,1,1,0,2,1,3,0,1,1,3,2,2,3,4,4,5,7,2,2,3,1,1,0,3,1,2,0,1,1,4,4,3,6

Setin geri kalan elemanları sadece tekrar eden sıra (lar) da hesaplanır: ( j 34 için çiftleri tekrarlanır, böylece mex sonucunu değiştirmezler). X = 0..33 için ortaya çıkan mex dizisi:rseq[jşık34]+rseq[(34-2-x-j)şık34]j34

4,1,1,0,2,1,3,0,1,1,3,2,2,3,4,4,4,7,2,2,3,1,1,0,3,1,2,0,1,1,4,4,3,4,

x=16x=33

mex{Pn-2+P0,Pn-3+P1,...,Pn/2+Pn-n/2}mex{Pn-2+P0,Pn-3+P1,...,Pn-2-33+P33}

(k4,0x<34)Wbenn(Pk*34+x)=Wbenn(P34+x)=Wbenn(Px)


P23Wbenn(Pn)=1(nşık34){3,7,23,27}

P23

P0P23

Üzgünüm, şimdi gitmem gerekiyor.
user13136

(n17,n18)(n5,n6)(n11,n12)(n1,n2)
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.