1. 程式人生 > >博弈論進階之樹的刪邊遊戲與無向圖的刪邊遊戲

博弈論進階之樹的刪邊遊戲與無向圖的刪邊遊戲

PS:本文內容大部分借(chao)鑑(xo)自yhqz

樹的刪邊遊戲

給出一個有 N個點的樹,有一個點作為樹的根節點。遊戲者輪流從樹中刪去邊,刪去一條邊後,不與根節點相連的部分將被移走。誰無法移動誰輸。

結論

葉子節點的SG值為0;中間節點的SG值為它的所有子節點的SG值加1後的異或和。

證明

無向圖的刪邊遊戲

一個無相聯通圖,有一個點作為圖的根。

遊戲者輪流從圖中刪去邊,刪去一條邊後,不與根節點相連的部分將被移走。

誰無路可走誰輸。

結論

對於這個模型,有一個著名的定理——Fusion Principle

我們可以對無向圖做如下改動:將圖中的任意一個偶環縮成一個新點,任意一個奇環縮成一個新點加一個新邊;所有連到原先環上的邊全部改為與新點相連。這樣的改動不會影響圖的SG 值。

這樣的話,我們可以將任意一個無向圖改成樹結構,“無向圖的刪邊遊戲”就變成了“樹的刪邊遊戲”。

相關推薦

博弈論遊戲遊戲

PS:本文內容大部分借(chao)鑑(xo)自yhqz 樹的刪邊遊戲 給出一個有 N個點的樹,有一個點作為樹的根節點。遊戲者輪流從樹中刪去邊,刪去一條邊後,不與根節點相連的部分將被移走。誰無法移動誰輸。 結論 葉子節點的SG值為0;中間節點的SG值為它的所有子節點的SG值加1後的異或和。 證明 無向

博弈論Anti-SG遊戲SJ定理

的人 數量 gpo attack log span html 們的 勝利 前言 在上一節中,我們初步了解了一下SG函數與SG定理。 今天我們來分析一下SG遊戲的變式——Anti-SG遊戲以及它所對應的SG定理 首先從最基本的Anti-Nim遊戲開始 Anti-Nim遊戲是這

博弈論SG函數

神奇 不為 mat 定義 巴什博奕 show xor 一起 rmi SG函數 個人理解:SG函數是人們在研究博弈論的道路上邁出的重要一步,它把許多雜亂無章的博弈遊戲通過某種規則結合在了一起,使得一類普遍的博弈問題得到了解決。 從SG函數開始,我們不再是單純的同過找規律等方法

博弈論SG函式

SG函式 個人理解:SG函式是人們在研究博弈論的道路上邁出的重要一步,它把許多雜亂無章的博弈遊戲通過某種規則結合在了一起,使得一類普遍的博弈問題得到了解決。 從SG函式開始,我們不再是單純的同過找規律等方法去解決博弈問題,而是需要學習一些博弈論中基本的定理,來找到他們的共同特點 那麼就先介紹幾個最基本的定理(

博弈論Multi-SG

Multi-Nim 從最簡單的Nim模型開始 它的定義是這樣的 有\(n\)堆石子,兩個人可以從任意一堆石子中拿任意多個石子(不能不拿)或把一堆數量不少於\(2\)石子分為兩堆不為空的石子,沒法拿的人失敗。問誰會勝利 博弈分析 這個問題的本質還是Nim遊戲,可以利用SG定理來解釋 通過觀察不難不發現,操作

博弈論Every-SG

Every-SG 給定一張無向圖,上面有一些棋子,兩個頂尖聰明的人在做遊戲,每人每次必須將可以移動的棋子進行移動,不能移動的人輸 博弈分析 題目中的要求實際是“不論前面輸與否,只要最後一個棋子勝利,那麼就算勝利” 這樣的話,能贏得遊戲必須贏 因為兩個人都頂尖聰明,因此當一個人知道某一個遊戲一定會輸的話,它

MySQL存儲引擎MyISAMInnoDB的區別

存儲引擎 內存數據 數據庫管理系統 l數據庫 cms 就是 innodb 後臺 ODB 一、存儲引擎(表類型) 通常意義上,數據庫就是數據的集合,具體到計算機數據庫可以是存儲器上一些文件的集合或一些內存數據的集合。我們通常說的MySQL數據庫、sql Server數據庫等

Java碼農路~構造方法&靜態成員變數及方法

一 構造方法當你在這個類中沒有提供無參的構造方法的時候,系統會在你建立物件的時候,也會呼叫無參的構造,而這個無參方法,系統會幫你提供一個.如果你只是提供了有參的構造方法,那麼系統將不再給你提供 無參構造方法了建議:寫類的時候 ,無參,有參的構造方法都寫上以保證不會出錯.二 靜

Spring路(8)-java程式碼配置檔案中配置

實際開發中並不會需要你將程式碼轉為配置檔案的形式去呈現,但是,我寫著一系列博文的目的並不是教你如何去專案中進行開發,因為包括之前的幾篇博文中你會發現並不是在講專案的實踐的,我的想法是這樣的:為一些對Spring有所瞭解但是並不深入的朋友拓寬知識面,讓你不僅僅會用Spring

Vue基礎 Vue生命周期鉤子函數

ext style 博客園 方法 itl methods 但是 不能 鉤子方法 Vue生命周期 Vue生命周期:Vue實例從創建到銷毀的過程,稱為Vue的生命周期; Vue生命周期示意圖:https://cn.vuejs.org/v2/guide/instan

8、【資料結構】鄰接矩陣、鄰接表

一、鄰接矩陣無向圖 1、基本定義 #define MAX 10 class MatrixUDG { private: char mVexs[MAX]; //頂點集合 int mVexNum; //頂點

Newcoder contest 392 I 逛公園 (模板)

參觀 mes include 無法 mil 重復 get color bit <題目鏈接> 題目描述: 月月和華華一起去逛公園了。公園很大,為了方便,可以抽象的看成一個N個點M條邊的無向連通圖(點是景點,邊是道路)。公園唯一的入口在1號點,月月和華華要從這裏

php技能---大神的

進行 think 文本編輯器 性能優化 mysq bootstrap 同步機制 小型 連接 PHP7 迎來巨大的性能提升,又一次回到關註的焦點。根據這些年在開發圈子總結的LNMP程序猿發展軌跡,結合個人經驗體會,總結出很多程序員對未來的迷漫,特別對技術學習的盲目和慌亂,簡單

從C++到Python,一個遊戲程式設計師的

我的第一份工作是一加國內知名遊戲公司的邏輯程式設計師,必須技能是C++,但是一開始只是寫語法和C++很類似的一種指令碼(後來知道是從一個開源指令碼引擎AngelScript修改而成的)。學習遊戲開發的流程,填資料,用指令碼定製各種任務、副本等等。第一年還很有興致,第二年開始就意興闌珊了。 後來熟悉了整個

從C++到Python,一個遊戲程序員的

分享圖片 國內 視頻資料 51cto 答疑 甚至有 帶來 一點 技術 我的第一份工作是一加國內知名遊戲公司的邏輯程序員,必須技能是C++,但是一開始只是寫語法和C++很類似的一種腳本(後來知道是從一個開源腳本引擎AngelScript修改而成的)。學習遊戲開發的流程,填數據

開發者的路:用語法來實現預編譯

能夠 項目 未來 部分 領域 編譯器 提高 cfb ima 如何在保證安全性的前提下,提升開發過程的效率,是每個開發者都在不斷探索的問題。借助語法樹,開發者能夠更好地展現和修改源程序代碼,優化開發環節,提高安全系數,還能進一步實現安卓預編譯。 本文基於個推高級研發工程師李健

【Visual C++】遊戲開發五十一 淺墨DirectX教程十九 網格模型

                最近幾個星期,不停地收到大家的評論和郵件,大家都說希望淺墨早點講骨骼動畫。本來按淺墨擬定的寫作計劃是把骨骼動畫放到很後面,因為骨骼動畫知識需要前面的網格模型知識為基礎,知識量本身有些大,很可能要佔很多次更新的篇幅。但是看到大家一致的評論,都說非常期待骨骼動畫。那就好吧,我們就來

貪吃蛇小遊戲—小白的路的開始

該程式的實現主要是通過Easyx實現的大多數功能,因為沒能夠繼續完善所以只展現一部分簡單的程式碼(大一上剛開始的時候學習的,就當作是開始吧) #include<graphics.h> #include<conio.h> #include<stdio.h>

UnityET網路遊戲開發框架 02-ET的客戶端啟動流程分析

版權申明: 本文原創首發於以下網站: 部落格園『優夢創客』的空間:https://www.cnblogs.com/raymondking123 優夢創客的官方部落格:https://91make.top 優夢創客的遊戲講堂:https://91make.ke.qq.com 『優夢創客』的微信公眾號:um

UnityET網路遊戲開發框架 03-Hotfix層啟動

版權申明: 本文原創首發於以下網站: 部落格園『優夢創客』的空間:https://www.cnblogs.com/raymondking123 優夢創客的官方部落格:https://91make.top 優夢創客的遊戲講堂:https://91make.ke.qq.com 『優夢創客』的微信公眾號:um